/** * Return the columns set for this discriminator, based on the given * templates. */ public Column[] getColumns(Discriminator discrim, Column[] tmplates, boolean adapt) { Table table = discrim.getClassMapping().getTable(); discrim.getMappingRepository().getMappingDefaults().populateColumns (discrim, table, tmplates); return createColumns(discrim, null, tmplates, table, adapt); }
public Object getStrategy(Discriminator disc, boolean adapt) { ClassMapping cls = disc.getClassMapping(); if ((adapt || defaultMissingInfo()) && cls.getJoinablePCSuperclassMapping() == null && disc.getMappingInfo().getValue() == null) return _discStrategy; return null; }
private ClassMapping getDefiningMapping(FieldMapping field) { ClassMapping clm = field.getDefiningMapping(); ValueMappingImpl value = (ValueMappingImpl)clm.getEmbeddingMetaData(); if (value == null) return clm; FieldMapping field1 = value.getFieldMapping(); return getDefiningMapping(field1); }
public Object loadProjection(JDBCStore store, JDBCFetchConfiguration fetch, Result res, Joins joins) throws SQLException { // OPENJPA-662: Version fields have NoneFieldStrategy -- hence they // need special treatment if (isVersion()) { return getDefiningMapping().getVersion().load(null, store, res, joins); } return assertStrategy().loadProjection(store, fetch, res, joins); }
/** * Return the columns set for this version, based on the given templates. */ public Column[] getColumns(Version version, Column[] templates, boolean adapt) { if (spansMultipleTables(templates)) return getMultiTableColumns(version, templates, adapt); Table table = getSingleTable(version, templates); version.getMappingRepository().getMappingDefaults().populateColumns (version, table, templates); return createColumns(version, null, templates, table, adapt); }
public ForeignKey getJoinForeignKey (final FieldMapping field, Table table, boolean adapt) { if (field.isUni1ToMFK()) { List<Column> cols = field.getElementMapping().getValueInfo().getColumns(); return getJoin(field, table, adapt, cols); } return null; }
public Column[] getColumns(ValueMapping val, DBIdentifier name, Column[] tmplates, Table table, boolean adapt) { orderColumnsByTargetField(val, tmplates, adapt); val.getMappingRepository().getMappingDefaults().populateColumns (val, name, table, tmplates); return createColumns(val, null, tmplates, table, adapt); }
public void syncMappingInfo() { if (getValueMappedBy() != null) _info.clear(); else { _info.syncWith(this); ClassMapping embed = getEmbeddedMapping(); if (embed != null) embed.syncMappingInfo(); } }
/** * Constructor. Supply owning mapping. */ public ValueMappingImpl(FieldMapping owner) { super(owner); _info = owner.getMappingRepository().newMappingInfo(this); _info.setUseClassCriteria(owner.getMappingRepository(). getMappingDefaults().useClassCriteria()); }
public Column[] getColumns() { // pcl: 6 July 2007: this seems a bit hacky, but if the mapping is a // version, it will have a NoneFieldMapping (since the version strategy // for the class takes care of it's mapping), and NoneFieldStrategies // do not have columns. if (isVersion()) return getDeclaringMapping().getVersion().getColumns(); else return _val.getColumns(); }
/** * Return the datastore identity columns for the given class, based on the * given templates. */ public Column[] getDataStoreIdColumns(ClassMapping cls, Column[] tmplates, Table table, boolean adapt) { cls.getMappingRepository().getMappingDefaults(). populateDataStoreIdColumns(cls, table, tmplates); return createColumns(cls, "datastoreid", tmplates, table, adapt); }
/** * Instantiate the given class' named strategy, or return null if no * named strategy. */ protected ClassStrategy namedStrategy(ClassMapping cls) { String name = cls.getMappingInfo().getStrategy(); return instantiateClassStrategy(name, cls); }
public String get(Schema schema) { // delay this so that we don't do schema reflection for unique // table name unless necessary return cls.getMappingRepository().getMappingDefaults(). getTableName(cls, schema); } public DBIdentifier getIdentifier(Schema schema) {
/** * Return the columns set for this discriminator, based on the given * templates. */ public Column[] getColumns(Discriminator discrim, Column[] tmplates, boolean adapt) { Table table = discrim.getClassMapping().getTable(); discrim.getMappingRepository().getMappingDefaults().populateColumns (discrim, table, tmplates); return createColumns(discrim, null, tmplates, table, adapt); }
public Object loadProjection(JDBCStore store, JDBCFetchConfiguration fetch, Result res, Joins joins) throws SQLException { // OPENJPA-662: Version fields have NoneFieldStrategy -- hence they // need special treatment if (isVersion()) { return getDefiningMapping().getVersion().load(null, store, res, joins); } return assertStrategy().loadProjection(store, fetch, res, joins); }
public Object getStrategy(Discriminator disc, boolean adapt) { ClassMapping cls = disc.getClassMapping(); if ((adapt || defaultMissingInfo()) && cls.getJoinablePCSuperclassMapping() == null && disc.getMappingInfo().getValue() == null) return _discStrategy; return null; }
public ForeignKey getJoinForeignKey (final FieldMapping field, Table table, boolean adapt) { if (field.isUni1ToMFK()) { List<Column> cols = field.getElementMapping().getValueInfo().getColumns(); return getJoin(field, table, adapt, cols); } return null; }
/** * Constructor. Supply owning mapping. */ public ValueMappingImpl(FieldMapping owner) { super(owner); _info = owner.getMappingRepository().newMappingInfo(this); _info.setUseClassCriteria(owner.getMappingRepository(). getMappingDefaults().useClassCriteria()); }
private ClassMapping getDefiningMapping(FieldMapping field) { ClassMapping clm = field.getDefiningMapping(); ValueMappingImpl value = (ValueMappingImpl)clm.getEmbeddingMetaData(); if (value == null) return clm; FieldMapping field1 = value.getFieldMapping(); return getDefiningMapping(field1); }
/** * Return the columns set for this discriminator, based on the given * templates. */ public Column[] getColumns(Discriminator discrim, Column[] tmplates, boolean adapt) { Table table = discrim.getClassMapping().getTable(); discrim.getMappingRepository().getMappingDefaults().populateColumns (discrim, table, tmplates); return createColumns(discrim, null, tmplates, table, adapt); }