@Override public TraversedReferences getPortableObjects(Object pojo, TraversedReferences addTo) { for (Iterator i = ((List) pojo).iterator(); i.hasNext();) { Object o = i.next(); if (o != null && isPortableReference(o.getClass())) { addTo.addAnonymousReference(o); } } return addTo; }
@Override public void hydrate(ClientObjectManager objectManager, TCObject tcObject, DNA dna, Object po) throws IOException, ClassNotFoundException { List list = (List) po; DNACursor cursor = dna.getCursor(); while (cursor.next(encoding)) { LogicalAction action = cursor.getLogicalAction(); int method = action.getMethod(); Object[] params = action.getParameters(); for (int i = 0, n = params.length; i < n; i++) { Object param = params[i]; if (param instanceof ObjectID) { try { params[i] = objectManager.lookupObject((ObjectID) param); } catch (AbortedOperationException e) { throw new TCRuntimeException(e); } } } try { apply(list, method, params); } catch (IndexOutOfBoundsException ioobe) { logger.error("Error applying update to " + po, ioobe); } } }
@Override public void hydrate(ClientObjectManager objectManager, TCObject tcObject, DNA dna, Object po) throws IOException, ClassNotFoundException { List list = (List) po; DNACursor cursor = dna.getCursor(); while (cursor.next(encoding)) { LogicalAction action = cursor.getLogicalAction(); int method = action.getMethod(); Object[] params = action.getParameters(); for (int i = 0, n = params.length; i < n; i++) { Object param = params[i]; if (param instanceof ObjectID) { try { params[i] = objectManager.lookupObject((ObjectID) param); } catch (AbortedOperationException e) { throw new TCRuntimeException(e); } } } try { apply(list, method, params); } catch (IndexOutOfBoundsException ioobe) { logger.error("Error applying update to " + po, ioobe); } } }
@Override public TraversedReferences getPortableObjects(Object pojo, TraversedReferences addTo) { for (Iterator i = ((List) pojo).iterator(); i.hasNext();) { Object o = i.next(); if (o != null && isPortableReference(o.getClass())) { addTo.addAnonymousReference(o); } } return addTo; }