diff options
author | Bernard Normier <bernard@zeroc.com> | 2003-08-27 20:49:28 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2003-08-27 20:49:28 +0000 |
commit | 96562f821fd2ba5e5ed1eb3ec6991e60c1402f06 (patch) | |
tree | 4a8b677c8c89a6c5f89cb83f320e0f0a8343cf4f /java/src/Ice/ObjectImpl.java | |
parent | Added per-proxy contexts to icej. For ice, added context to operator== and (diff) | |
download | ice-96562f821fd2ba5e5ed1eb3ec6991e60c1402f06.tar.bz2 ice-96562f821fd2ba5e5ed1eb3ec6991e60c1402f06.tar.xz ice-96562f821fd2ba5e5ed1eb3ec6991e60c1402f06.zip |
Freeze Evictor facet changes
Diffstat (limited to 'java/src/Ice/ObjectImpl.java')
-rw-r--r-- | java/src/Ice/ObjectImpl.java | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/java/src/Ice/ObjectImpl.java b/java/src/Ice/ObjectImpl.java index 1bf0971c506..0600b15bd46 100644 --- a/java/src/Ice/ObjectImpl.java +++ b/java/src/Ice/ObjectImpl.java @@ -264,25 +264,33 @@ public class ObjectImpl implements Object, java.lang.Cloneable } public void - __marshal(Ice.Stream __os) + __marshal(Ice.Stream __os, boolean __marshalFacets) { - synchronized(_activeFacetMap) - { - final int sz = _activeFacetMap.size(); + if(__marshalFacets) + { + synchronized(_activeFacetMap) + { + final int sz = _activeFacetMap.size(); + + __os.startWriteDictionary("ice:facets", sz); + java.util.Set set = _activeFacetMap.keySet(); + String[] keys = new String[sz]; + set.toArray(keys); + for(int i = 0; i < sz; i++) + { + __os.startWriteDictionaryElement(); + __os.writeString("ice:key", keys[i]); + __os.writeObject("ice:value", (Object)_activeFacetMap.get(keys[i])); + __os.endWriteDictionaryElement(); + } + } + } + else + { + __os.startWriteDictionary("ice:facets", 0); + } - __os.startWriteDictionary("ice:facets", sz); - java.util.Set set = _activeFacetMap.keySet(); - String[] keys = new String[sz]; - set.toArray(keys); - for(int i = 0; i < sz; i++) - { - __os.startWriteDictionaryElement(); - __os.writeString("ice:key", keys[i]); - __os.writeObject("ice:value", (Object)_activeFacetMap.get(keys[i])); - __os.endWriteDictionaryElement(); - } - __os.endWriteDictionary(); - } + __os.endWriteDictionary(); } public void |