/** * Return a new {@link PCData} implementation of the right type for * embedded instances. Returns a {@link PCDataImpl} by default. */ public AbstractPCData newEmbeddedPCData(OpenJPAStateManager sm) { return new PCDataImpl(sm.getId (), sm.getMetaData ()); } }
public Object toRelationDataStoreValue(OpenJPAStateManager sm, Column col) { if (sm == null || sm.getObjectId() == null) return null; return sm.getMetaData().getDescribedType().getName() + ":" + sm.getObjectId().toString(); } }
public Object toRelationDataStoreValue(OpenJPAStateManager sm, Column col) { if (sm == null || sm.getObjectId() == null) return null; return sm.getMetaData().getDescribedType().getName() + ":" + sm.getObjectId().toString(); } }
protected void setMappedBy(OpenJPAStateManager sm, FieldMapping mappedByFieldMapping, Object mappedByObject) { ClassMapping mapping = (ClassMapping) sm.getMetaData(); FieldMapping[] fms = mapping.getFieldMappings(); for (int i = 0; i < fms.length; i++) { if (fms[i] == mappedByFieldMapping) { sm.storeObject(fms[i].getIndex(), mappedByObject); return; } } }
boolean isSecondaryColumn(Column col, OpenJPAStateManager sm) { ClassMapping mapping = (ClassMapping)sm.getMetaData(); while (mapping != null) { if (mapping.getTable() == col.getTable()) return false; else mapping = mapping.getPCSuperclassMapping(); } return true; } }
/** * Select cache for the given managed instance. * If type based verification affirms the type to be cached then the instance based policy * is called to determine the target cache. */ public DataCache selectCache(OpenJPAStateManager sm) { if (sm == null || !isCachable(sm.getMetaData())) return null; String name = _policy.selectCache(sm, null); return name == null ? null : getDataCache(name); }
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; }
protected void setMappedBy(OpenJPAStateManager sm, FieldMapping mappedByFieldMapping, Object mappedByObject) { ClassMapping mapping = (ClassMapping) sm.getMetaData(); FieldMapping[] fms = mapping.getFieldMappings(); for (int i = 0; i < fms.length; i++) { if (fms[i] == mappedByFieldMapping) { sm.storeObject(fms[i].getIndex(), mappedByObject); return; } } }
/** * Return the base table for the given instance. */ private static Table getBaseTable(OpenJPAStateManager sm) { ClassMapping cls = (ClassMapping) sm.getMetaData(); while (cls.getJoinablePCSuperclassMapping() != null) cls = cls.getJoinablePCSuperclassMapping(); return cls.getTable(); }
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; }
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 void whereForeignKey(Row row, OpenJPAStateManager rel) throws SQLException { if (rel != null) row.whereForeignKey(getForeignKey((ClassMapping) rel.getMetaData()), rel); else if (_fk != null) row.whereForeignKey(_fk, null); else for (int i = 0; i < _cols.length; i++) row.whereNull(_cols[i]); }
public boolean syncVersion(OpenJPAStateManager sm, Object context) { ClassMapping mapping = (ClassMapping) sm.getMetaData(); try { return mapping.getVersion().checkVersion(sm, this, true); } catch (SQLException se) { throw SQLExceptions.getStore(se, _dict, getReadLockLevel()); } }
/** * Create a new cacheable instance for the given state manager. */ private DataCachePCData newPCData(OpenJPAStateManager sm, DataCache cache) { ClassMetaData meta = sm.getMetaData(); if (_gen != null) return (DataCachePCData) _gen.generatePCData(sm.getObjectId(), meta); return new DataCachePCDataImpl(sm.fetchObjectId(), meta, cache.getName()); }
public boolean exists(OpenJPAStateManager sm, Object edata) { DataCache cache = sm.getMetaData().getDataCache(); if (cache != null && !isLocking(null) && cache.contains(sm.getObjectId())) return true; return super.exists(sm, edata); }
public void store(OpenJPAStateManager sm, BitSet fields) { storeVersion(sm); storeImplData(sm); FieldMetaData[] fmds = sm.getMetaData().getFields(); for (int i = 0; i < fmds.length; i++) { if (fields != null && fields.get(i)) { storeField(sm, fmds[i]); storeImplData(sm, fmds[i], isLoaded(i)); } else if (!isLoaded(i)) storeIntermediate(sm, fmds[i]); } }
/** * Throw appropriate exception on attempt to flush an unmapped object. */ private static void throwFlushException(OpenJPAStateManager sm) { throw new InvalidStateException(_loc.get("flush-virtual", sm.getMetaData(), sm.getObjectId())). setFailedObject(sm.getManagedInstance()). setFatal(true); } }
public void store(OpenJPAStateManager sm) { storeVersion(sm); storeImplData(sm); FieldMetaData[] fmds = sm.getMetaData().getFields(); for (int i = 0; i < fmds.length; i++) { if (sm.getLoaded().get(i)) { storeField(sm, fmds[i]); storeImplData(sm, fmds[i], isLoaded(i)); } else if (!isLoaded(i)) storeIntermediate(sm, fmds[i]); } }
public void store(OpenJPAStateManager sm) { storeVersion(sm); storeImplData(sm); FieldMetaData[] fmds = sm.getMetaData().getFields(); for (int i = 0; i < fmds.length; i++) { if (sm.getLoaded().get(i)) { storeField(sm, fmds[i]); storeImplData(sm, fmds[i], isLoaded(i)); } else if (!isLoaded(i)) storeIntermediate(sm, fmds[i]); } }
private void assignSlice(OpenJPAStateManager sm, String hint) { if (_conf.isReplicated(sm.getMetaData().getDescribedType())) { SliceImplHelper.getSlicesByPolicy(sm, _conf, getContext()) .setInto(sm); return; } new SliceInfo(hint).setInto(sm); }