/** * Convenience method to return the root table with a discriminator in this inheritance tree. * @return The root table which has the discriminator in this inheritance tree */ public final ClassTable getTableWithDiscriminator() { if (supertable != null) { ClassTable tbl = supertable.getTableWithDiscriminator(); if (tbl != null) { return tbl; } } if (discriminatorMetaData != null) { // Initialised and discriminator metadata set so return this return this; } else if (cmd.getInheritanceMetaData() != null && cmd.getInheritanceMetaData().getDiscriminatorMetaData() != null) { // Not initialised but has discriminator MetaData so return this return this; } return null; }
/** * Method to return this class/field managed object as a string. * @return String version of this class/field managed object. */ public String toString() { MetaData metadata = getMetaData(); if (metadata instanceof ClassMetaData) { return Localiser.msg("035004", name, tableName != null ? tableName : "(none)", ((ClassMetaData)metadata).getInheritanceMetaData().getStrategy().toString()); } else if (metadata instanceof AbstractMemberMetaData) { return Localiser.msg("035005", name, tableName); } else { return Localiser.msg("035004", name, tableName); } } }
InheritanceMetaData inhmd = cmd.getInheritanceMetaData(); if (inhmd == null)
InheritanceMetaData inhmd = cmd.getInheritanceMetaData(); if (inhmd == null)
ForeignKeyMetaData idFkmd = (cmd.getInheritanceMetaData().getJoinMetaData() != null) ? cmd.getInheritanceMetaData().getJoinMetaData().getForeignKeyMetaData() : null; if (supertable != null && (autoMode || (idFkmd != null && idFkmd.getDeleteAction() != ForeignKeyAction.NONE)))
if (cmd.getInheritanceMetaData().getStrategy() != InheritanceStrategy.NEW_TABLE && cmd.getInheritanceMetaData().getStrategy() != InheritanceStrategy.COMPLETE_TABLE) throw new NucleusUserException(Localiser.msg("057003", cmd.getFullClassName(), cmd.getInheritanceMetaData().getStrategy().toString())).setFatal();
if (cmd.getInheritanceMetaData() != null) DiscriminatorMetaData dismd = cmd.getInheritanceMetaData().getDiscriminatorMetaData(); if (dismd != null)
/** * Pre-initialize. * We require any supertable, and the PK to be ready before we start initialisation. * @param clr the ClassLoaderResolver */ public void preInitialize(final ClassLoaderResolver clr) { assertIsPKUninitialized(); if (cmd.getInheritanceMetaData().getStrategy() != InheritanceStrategy.COMPLETE_TABLE) { // Inheritance strategy may imply having a supertable, so identify it supertable = getSupertable(cmd, clr); if (supertable != null && !supertable.isInitialized() && !supertable.isPKInitialized()) { // Make sure that the supertable is preinitialised before we think about initialising here supertable.preInitialize(clr); } } // Initialise the PK field(s) if (!isPKInitialized()) { initializePK(clr); } }
if (parentCmd != null) if (cmd.getInheritanceMetaData().getStrategy() == InheritanceStrategy.COMPLETE_TABLE) if (parentCmd != null) if (cmd.getInheritanceMetaData().getStrategy() == InheritanceStrategy.COMPLETE_TABLE)
if (cmd.getInheritanceMetaData() != null) DiscriminatorMetaData dismd = cmd.getInheritanceMetaData().getDiscriminatorMetaData(); if (dismd != null)
if (cmd.getInheritanceMetaData().getStrategy() == InheritanceStrategy.COMPLETE_TABLE)
InheritanceStrategy strat = cmd.getInheritanceMetaData().getStrategy(); cmd.getInheritanceMetaData().getStrategy().toString(), cmd.getFullClassName(), getApiAdapter().getName()); throw new UnsupportedInheritanceStrategyException(unsupportedMsg);
ColumnMetaData colmd = new ColumnMetaData(cmd.getInheritanceMetaData().getJoinMetaData(), getAttr(attrs, "name"), getAttr(attrs, "referenced-column-name"), // Column in primary table null, null, null, null, null, null, null, null, null, null, null); cmd.getInheritanceMetaData().getJoinMetaData().addColumn(colmd); InheritanceMetaData inhmd = cmd.getInheritanceMetaData(); if (inhmd == null)
InheritanceMetaData inhmd = cmd.getInheritanceMetaData(); if (inhmd == null) InheritanceMetaData inhmd = cmd.getInheritanceMetaData(); if (inhmd == null)
InheritanceMetaData imd = cmd.getInheritanceMetaData(); RDBMSStoreData sdNew = null; if (imd.getStrategy() == InheritanceStrategy.SUBCLASS_TABLE)
if (cmd.getInheritanceMetaData().getStrategy() == InheritanceStrategy.COMPLETE_TABLE) if (cmd.getInheritanceMetaData() != null) colContainer = cmd.getInheritanceMetaData().getJoinMetaData();