Right.

The function does save out the file but, it does not update the in-memory 
product to element map.   This leaves the two in-memory maps out of synch, 
until the fm is restarted and the updated files are re-read.

On this note, I am also getting a rather nasty crash when writing the file back 
to disk, but I have not sorted out whither it is user-error or a bug.  If it is 
a bug, I will do my best to report it and fix it.  More on this hopefully on 
Tuesday.

-Michael


________________________________________
From: holenoter [holeno...@me.com]
Sent: Saturday, May 28, 2011 11:33 PM
To: dev@oodt.apache.org
Cc: dev@oodt.apache.org
Subject: Re: XMLValidation layer modifyElement

hey chris,

if you modify an element then call getElements(ProductType) you will not get 
the modified element because the product type element map was not updated. . . 
.hope hawaii was a good time dude!

-brian

On May 28, 2011, at 10:46 PM, "Mattmann, Chris A (388J)" 
<chris.a.mattm...@jpl.nasa.gov> wrote:

Hi Michael,

> I looked at the XMLValidation layer's modifyElement function, and it doesn't 
> appear to modify elements that get put into the productTypeElementMap.

It looks like it's modifying the elements that get put into the product type 
element map, indeed. The function consists of:

{code}
elementMap.put(element.getElementId(), element);
saveElementsAndMappings();
{code}

It first takes in the new element, updates the element map, and then saves out 
the new map file with the updated element definition. The product type element 
map is left unmodified, so as long as the element has the same identifier as 
was used to originally link it, it will get saved through fine.

>
> Thus an element will be modified in the elements map (element id to element) 
> but if it is already mapped to a product type the product type to element map 
> will maintain a reference to the unmodified element. Is this intended 
> behavior, or have I missed something?

See above.

>
> I had intended to use the modifyElement function, but with the purpose of 
> updating any occurrence of that element. If this is not the intended purpose 
> I will find a workaround.

Let me know if I'm misunderstanding you, but I think it works fine...

Cheers,
Chris

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Chris Mattmann, Ph.D.
Senior Computer Scientist
NASA Jet Propulsion Laboratory Pasadena, CA 91109 USA
Office: 171-266B, Mailstop: 171-246
Email: chris.a.mattm...@nasa.gov<mailto:chris.a.mattm...@nasa.gov>
WWW: http://sunset.usc.edu/~mattmann/<http://sunset.usc.edu/%7Emattmann/>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adjunct Assistant Professor, Computer Science Department
University of Southern California, Los Angeles, CA 90089 USA
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Reply via email to