@@ -104,7 +104,7 @@ F, E>> void postprocStoredobjectInsert(
104104 public void postprocStoredobjectInsert (E object ) {
105105 MultidimensionchildHelper <F , E > multidimensionalchildhelper = this .casteddefinition .getHelper ();
106106 multidimensionalchildhelper .setContext (object );
107-
107+ logger . fine ( " ---------------- start treating object for insert " + object . dropIdToString ()+ " ---------------- " );
108108 // if versioned, get previous version children if it exists
109109 F [] previouschildren = null ;
110110 if (object instanceof VersionedInterface <?>) {
@@ -113,15 +113,20 @@ public void postprocStoredobjectInsert(E object) {
113113 E previousversion = versionedproperty .getpreviousversion ();
114114 if (previousversion != null )
115115 previouschildren = this .casteddefinition .getChildren (previousversion .getId ());
116+ logger .fine (" got " +(previouschildren !=null ?previouschildren .length :"null" )+" children from previous version" );
116117 }
117118 // get the blank objects
118-
119+
119120 ArrayList <F > blankobjects = multidimensionalchildhelper .generateObjectsForAllValueHelpers (object ,
120121 childobjectdefinition );
122+ logger .fine (" blank objects created = " +blankobjects .size ());
121123 HashMap <String , F > objectsperkey = new HashMap <String , F >();
122- for (int i = 0 ; i < blankobjects .size (); i ++)
123- objectsperkey .put (multidimensionalchildhelper .generateKeyForObject (blankobjects .get (i )),
124- blankobjects .get (i ));
124+ for (int i = 0 ; i < blankobjects .size (); i ++) {
125+ F thisobject = blankobjects .get (i );
126+ String key = multidimensionalchildhelper .generateKeyForObject (thisobject );
127+ logger .finest (" " +key );
128+ objectsperkey .put (key ,thisobject );
129+ }
125130
126131 if (previouschildren != null ) {
127132 // replace children that are part of the list of blank objects
@@ -132,6 +137,7 @@ public void postprocStoredobjectInsert(E object) {
132137 if (objectsperkey .get (childkey ) != null ) {
133138 F newchild = oldchild .deepcopy ();
134139 objectsperkey .put (childkey , newchild );
140+ logger .finest (" Replace key " +childkey +" with previous version" );
135141 }
136142 }
137143
@@ -143,21 +149,21 @@ public void postprocStoredobjectInsert(E object) {
143149
144150 if (objectsperkey .get (childkey ) == null ) {
145151 F potentialnewchild = oldchild .deepcopy ();
146- logger .severe (" -- Managing child in previous version key = " +childkey );
152+ logger .finer (" -- Managing child in previous version key = " +childkey );
147153 String value = multidimensionalchildhelper .getKeyForConsolidation (potentialnewchild , object );
148- logger .severe (" -> found new key for consolidation = " +value );
154+ logger .finer (" -> found new key for consolidation = " +value );
149155 if (value != null )
150156 if (objectsperkey .get (value ) != null ) {
151157 F childtoconsolidateinto = objectsperkey .get (value );
152158 multidimensionalchildhelper .getConsolidator ().accept (childtoconsolidateinto ,
153159 potentialnewchild );
154- logger .severe (" -> found object to consolidate into " );
160+ logger .finer (" -> found object to consolidate into " );
155161 } else {
156162 objectsperkey .put (value , potentialnewchild );
157- logger .severe (" -> adds value directly to consolidation" );
163+ logger .finer (" -> adds value directly to consolidation" );
158164 }
159165 if (value == null )
160- logger .severe (" -> Discarding old data with key " + childkey );
166+ logger .finer (" -> Discarding old data with key " + childkey );
161167 }
162168 }
163169
@@ -171,7 +177,10 @@ public void postprocStoredobjectInsert(E object) {
171177 allobjectstoinsert .add (nextobject );
172178
173179 }
180+
174181 F [] objectstoinsert = allobjectstoinsert .toArray (childobjectdefinition .generateArrayTemplate ());
182+ logger .finer (" inserting " +(objectstoinsert !=null ?objectstoinsert .length :"null" )+" objects" );
183+ if (objectstoinsert !=null ) for (int i =0 ;i <objectstoinsert .length ;i ++) logger .finest (" " +multidimensionalchildhelper .generateKeyForObject (objectstoinsert [i ]));
175184 if (objectstoinsert != null )
176185 if (objectstoinsert .length > 0 ) {
177186 objectstoinsert [0 ].getMassiveInsert ().insert (objectstoinsert );
0 commit comments