/** * Accessor for an iterator for this Extent. * @return The iterator */ public Iterator<E> iterator() { return extent.iterator(); } }
/** * Accessor for the candidate class of the Extent. * @return Candidate class */ public Class<E> getCandidateClass() { return extent.getCandidateClass(); }
@Override public void insertObjects(ObjectProvider... ops) { // TODO Implement this in such a way as it process all objects of a type in one call (after checking hasRelations) super.insertObjects(ops); }
/** * Accessor for the current DatastoreService for this ExecutionContext. * Each PM/EM has its own DatastoreService. * @param ec ExecutionContext * @return The DatastoreService */ public DatastoreService getDatastoreService(ExecutionContext ec) { ManagedConnection mconn = ec.getStoreManager().getConnection(ec); return ((EmulatedXAResource) mconn.getXAResource()).getDatastoreService(); }
/** * Release of resources */ public synchronized void close() { dba = null; super.close(); classAdder = null; }
/** * Accessor for whether a field is loaded for the object managed by the StateManager * @param sm StateManager * @param fieldNumber Number of the field * @return Whether it is loaded */ public boolean isLoaded(ObjectProvider sm, int fieldNumber) { return sm.isLoaded(sm.getObject(), fieldNumber); }
ClassLoaderResolver getClassLoaderResolver() { return ec.getClassLoaderResolver(); }
@Override public String getClassNameForObjectID(Object id, ClassLoaderResolver clr, ExecutionContext ec) { // TODO Override this so we can check inheritance level of provided id return super.getClassNameForObjectID(id, clr, ec); }
@Override public void locateObjects(ObjectProvider[] ops) { // TODO Implement bulk location of objects. Split into DBCollections, then do bulk get super.locateObjects(ops); }
/** * Constructor. * @param nconn The Nucleus Connection delegate */ public JDOConnectionJDBCImpl(NucleusConnection nconn) { super(nconn); conn = (Connection) nconn.getNativeConnection(); }
/** * Accessor for the version from the StateManager for this object. * @param sm StateManager */ public Object getVersion(ObjectProvider sm) { return sm.getVersion(); }
DatastoreManager getStoreManager() { return (DatastoreManager) ec.getStoreManager(); }
/** * Accessor for the object id from the StateManager for this object. * @param sm StateManager * @return object id */ public Object getObjectId(ObjectProvider sm) { return sm.getObjectId(); }
/** * Accessor for whether the Extent includes subclasses. * @return Whether it has subclasses */ public boolean hasSubclasses() { return extent.hasSubclasses(); }
/** * Method to allocate a set of elements. * @param additional The number of additional elements to allocate */ public void allocate(int additional) { sequence.allocate(additional); }
/** * Method to close the Extent iterator. * @param iterator Iterator for the extent. */ public void close(Iterator<E> iterator) { extent.close(iterator); }
/** * Method to close all Extent iterators. */ public void closeAll() { extent.closeAll(); }
/** * Accessor for the sequence name. * @return The sequence name */ public String getName() { return sequence.getName(); }
@Override public void deleteObjects(ObjectProvider... ops) { // TODO If MongoDB java driver ever provides bulk delete of multiple objects at once, support it super.deleteObjects(ops); }
public boolean isAvailable() { return nucConn.isAvailable(); }