private static Set<Class<?>> collectUnspecifiedType(Class<?> cls, Collection<? extends Class<?>> classes, Set<Class<?>> unspecified) { if (cls != null && !classes.contains(cls) && !ImplHelper.isManagedType(null, cls) && !cls.isInterface()) { if (unspecified == null) unspecified = new HashSet<Class<?>>(); unspecified.add(cls); } return unspecified; }
public boolean isTransactional(Object obj) { assertOpen(); if (ImplHelper.isManageable(obj)) return (ImplHelper.toPersistenceCapable(obj, _conf)) .pcIsTransactional(); return false; }
public DetachedValueStateManager(Object pc, StoreContext ctx) { this(ImplHelper.toPersistenceCapable(pc, ctx.getConfiguration()), ctx.getConfiguration().getMetaDataRepositoryInstance() .getMetaData(ImplHelper.getManagedInstance(pc).getClass(), ctx.getClassLoader(), true), ctx); }
boolean wasDeleted = isDeleted(); boolean needPostUpdate = !(wasNew && !wasFlushed) && (ImplHelper.getUpdateFields(this) != null);
public boolean assignObjectId(OpenJPAStateManager sm, boolean preFlush) { ClassMetaData meta = sm.getMetaData(); if (meta.getIdentityType() == ClassMetaData.ID_APPLICATION) return ApplicationIds.assign(sm, this, preFlush); // datastore identity Object val = ImplHelper.generateIdentityValue(ctx, meta, JavaTypes.LONG); return assignDataStoreId(sm, val); }
public boolean assignField(OpenJPAStateManager sm, int field, boolean preFlush) { FieldMetaData fmd = sm.getMetaData().getField(field); Object val = ImplHelper.generateFieldValue(ctx, fmd); if (val == null) return false; sm.store(field, val); return true; }
/** * This implementation just delegates to the proper singular * method ({@link StoreManager#initialize} or {@link StoreManager#load}) * depending on each state manager's state. If your data store provides * bulk loading APIs, overriding this method to be more clever may be * advantageous. */ public Collection<Object> loadAll(Collection<OpenJPAStateManager> sms, PCState state, int load, FetchConfiguration fetch, Object edata) { return ImplHelper.loadAll(sms, this, state, load, fetch, edata); }
for (FetchConfigurationImpl f = this; f != null; f = f._parent) { if (StringUtils.equals(f._fromField, fromField) && ImplHelper.isAssignable(f._fromType, type)) { avail = f._availableRecursion; if (traverse) && ImplHelper.isAssignable(meta.getDescribedType(), type)) max = reduce(max); return (traverse && ImplHelper.isAssignable( meta.getDescribedType(), type)) ? def - 1 : def;
/** * Returns the {@link org.apache.openjpa.meta.ClassMetaData} associated with * the persistent object <code>o</code>. */ public static ClassMetaData getMetaData(Object o) { if (o == null) return null; EntityManager em = OpenJPAPersistence.getEntityManager(o); return (em == null) ? null : getMetaData(em, ImplHelper.getManagedInstance(o).getClass()); }
public DetachedValueStateManager(Object pc, StoreContext ctx) { this(ImplHelper.toPersistenceCapable(pc, ctx.getConfiguration()), ctx.getConfiguration().getMetaDataRepositoryInstance() .getMetaData(ImplHelper.getManagedInstance(pc).getClass(), ctx.getClassLoader(), true), ctx); }
boolean wasDeleted = isDeleted(); boolean needPostUpdate = !(wasNew && !wasFlushed) && (ImplHelper.getUpdateFields(this) != null);
public boolean assignObjectId(OpenJPAStateManager sm, boolean preFlush) { ClassMetaData meta = sm.getMetaData(); if (meta.getIdentityType() == ClassMetaData.ID_APPLICATION) return ApplicationIds.assign(sm, this, preFlush); // datastore identity Object val = ImplHelper.generateIdentityValue(ctx, meta, JavaTypes.LONG); return assignDataStoreId(sm, val); }
public boolean assignField(OpenJPAStateManager sm, int field, boolean preFlush) { FieldMetaData fmd = sm.getMetaData().getField(field); Object val = ImplHelper.generateFieldValue(_ctx, fmd); if (val == null) return false; sm.store(field, val); return true; }
/** * This implementation just delegates to the proper singular * method ({@link StoreManager#initialize} or {@link StoreManager#load}) * depending on each state manager's state. If your data store provides * bulk loading APIs, overriding this method to be more clever may be * advantageous. */ public Collection<Object> loadAll(Collection<OpenJPAStateManager> sms, PCState state, int load, FetchConfiguration fetch, Object edata) { return ImplHelper.loadAll(sms, this, state, load, fetch, edata); }
for (FetchConfigurationImpl f = this; f != null; f = f._parent) { if (Objects.equals(f._fromField, fromField) && ImplHelper.isAssignable(f._fromType, type)) { avail = f._availableRecursion; if (traverse) && ImplHelper.isAssignable(meta.getDescribedType(), type)) max = reduce(max); return (traverse && ImplHelper.isAssignable( meta.getDescribedType(), type)) ? def - 1 : def;
/** * Returns the {@link org.apache.openjpa.meta.ClassMetaData} associated with * the persistent object <code>o</code>. */ public static ClassMetaData getMetaData(Object o) { if (o == null) return null; EntityManager em = OpenJPAPersistence.getEntityManager(o); return (em == null) ? null : getMetaData(em, ImplHelper.getManagedInstance(o).getClass()); }
public boolean isDirty(Object obj) { assertOpen(); if (ImplHelper.isManageable(obj)) { PersistenceCapable pc = ImplHelper.toPersistenceCapable(obj, _conf); return pc.pcIsDirty(); } return false; }
protected Object getDetachedObjectId(AttachManager manager, Object toAttach) { Broker broker = manager.getBroker(); ClassMetaData meta = broker.getConfiguration(). getMetaDataRepositoryInstance().getMetaData( ImplHelper.getManagedInstance(toAttach).getClass(), broker.getClassLoader(), true); return ApplicationIds.create(ImplHelper.toPersistenceCapable(toAttach, broker.getConfiguration()), meta); }
private static Set<Class<?>> collectUnspecifiedType(Class<?> cls, Collection<? extends Class<?>> classes, Set<Class<?>> unspecified) { if (cls != null && !classes.contains(cls) && !ImplHelper.isManagedType(null, cls) && !cls.isInterface()) { if (unspecified == null) unspecified = new HashSet<Class<?>>(); unspecified.add(cls); } return unspecified; }