@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { return this.applicator.getPortableObjects(pojo, addTo); }
private static void hydrateNonPrimitiveArray(Object[] source, TCObject tcObject, Object pojo, int offset) { for (int i = 0, n = source.length; i < n; i++) { setArrayElement(offset + i, source[i], tcObject, pojo); } }
@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { final Map m = (Map) pojo; filterPortableObjects(m.keySet(), addTo); filterPortableObjects(m.values(), addTo); return addTo; }
public void dehydrate(ClientObjectManager objectManager, TCObject tcObject, DNAWriter writer, Object pojo) { super.dehydrate(objectManager, tcObject, writer, pojo); try { init(pojo); /** Mark the SearchableInstace shared. Based on shared flag, SearchableMap instance process the applicator * call back method differently. */ SET_SHARED_METHOD.invoke(pojo); }catch(Exception e) { throw new TCRuntimeException(e); } }
@Override public void dehydrate(ApplicatorObjectManager objectManager, TCObjectExternal tcObject, DNAWriter writer, Object pojo) { writer.addPhysicalAction(DSO_LOCK_TYPE_FIELDNAME, getField(pojo, DSO_LOCK_TYPE_FIELDNAME)); final Object lockStrategy = getField(pojo, DSO_LOCK_STRATEGY_FIELDNAME); writer.addPhysicalAction(DSO_LOCK_STRATEGY_FIELDNAME, getDehydratableObject(lockStrategy, objectManager)); super.dehydrate(objectManager, tcObject, writer, pojo); }
@Override public Object getNewInstanceFromNonDefaultConstructor(final DNA dna) throws IOException, ClassNotFoundException { final Object o = this.applicator.getNewInstance(this.objectManager, dna); if (o == null) { throw new AssertionError("Can't find suitable constructor for class: " + getName() + "."); } return o; }
@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { addTo.addNamedReference(DSO_LOCK_TYPE_FIELDNAME, getField(pojo, DSO_LOCK_STRATEGY_FIELDNAME)); return super.getPortableObjects(pojo, addTo); }
public void hydrate(ClientObjectManager objectManager, TCObject tcObject, DNA dna, Object pojo) throws IOException, ClassNotFoundException { super.hydrate(objectManager, tcObject, dna, pojo); try { /** these methods are invoked via reflection. Direct method call on SearchableMap object is resulting into soe * classloading issues */ init(pojo); /** Instruct the SearchableMap to create Local DataStore based on the Key and Value ObjectID information received * so far form terracotta server */ LOAD_STORE_FROM_L2_METHOD.invoke(pojo); }catch(Exception e) { throw new TCRuntimeException(e); } }
@Override public TraversedReferences getPortableObjects(Object pojo, TraversedReferences addTo) { if (ClassUtils.isPrimitiveArray(pojo)) { return addTo; } Object[] array = (Object[]) pojo; for (Object o : array) { if (o != null && isPortableReference(o.getClass())) { addTo.addAnonymousReference(o); } } return addTo; }
@Override public void hydrate(final ClientObjectManager objectManager, final TCObject tco, final DNA dna, final Object po) throws IOException, ClassNotFoundException { final DNACursor cursor = dna.getCursor(); while (cursor.next(this.encoding)) { final LogicalAction action = cursor.getLogicalAction(); final int method = action.getMethod(); final Object[] params = action.getParameters(); apply(objectManager, po, method, params); } }
@Override public void dehydrate(ApplicatorObjectManager objectManager, TCObjectExternal tcObject, DNAWriter writer, Object pojo) { writer.addPhysicalAction(DSO_LOCK_TYPE_FIELDNAME, getField(pojo, DSO_LOCK_TYPE_FIELDNAME)); final Object lockStrategy = getField(pojo, DSO_LOCK_STRATEGY_FIELDNAME); writer.addPhysicalAction(DSO_LOCK_STRATEGY_FIELDNAME, getDehydratableObject(lockStrategy, objectManager)); super.dehydrate(objectManager, tcObject, writer, pojo); }
@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { return this.applicator.getPortableObjects(pojo, addTo); }
@Override public Object getNewInstanceFromNonDefaultConstructor(final DNA dna, PlatformService platformService) throws IOException, ClassNotFoundException { final Object o = this.applicator.getNewInstance(this.objectManager, dna, platformService); if (o == null) { throw new AssertionError("Can't find suitable constructor for class: " + getName() + "."); } return o; }
@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { addTo.addNamedReference(DSO_LOCK_TYPE_FIELDNAME, getField(pojo, DSO_LOCK_STRATEGY_FIELDNAME)); return super.getPortableObjects(pojo, addTo); }
private static void hydrateNonPrimitiveArray(Object[] source, TCObject tcObject, Object pojo, int offset) { for (int i = 0, n = source.length; i < n; i++) { setArrayElement(offset + i, source[i], tcObject, pojo); } }
@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { final Map m = (Map) pojo; filterPortableObjects(m.keySet(), addTo); filterPortableObjects(m.values(), addTo); return addTo; }
@Override public void dehydrate(ApplicatorObjectManager objectManager, TCObjectExternal tcObject, DNAWriter writer, Object pojo) { writer.addPhysicalAction(DSO_LOCK_TYPE_FIELDNAME, getField(pojo, DSO_LOCK_TYPE_FIELDNAME)); final Object lockStrategy = getField(pojo, DSO_LOCK_STRATEGY_FIELDNAME); writer.addPhysicalAction(DSO_LOCK_STRATEGY_FIELDNAME, getDehydratableObject(lockStrategy, objectManager)); super.dehydrate(objectManager, tcObject, writer, pojo); }
@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { return this.applicator.getPortableObjects(pojo, addTo); }
@Override public Object getNewInstanceFromNonDefaultConstructor(final DNA dna) throws IOException, ClassNotFoundException { final Object o = this.applicator.getNewInstance(this.objectManager, dna); if (o == null) { throw new AssertionError("Can't find suitable constructor for class: " + getName() + "."); } return o; }
@Override public TraversedReferences getPortableObjects(final Object pojo, final TraversedReferences addTo) { addTo.addNamedReference(DSO_LOCK_TYPE_FIELDNAME, getField(pojo, DSO_LOCK_STRATEGY_FIELDNAME)); return super.getPortableObjects(pojo, addTo); }