public Boolean getEmbeddedOnly() { return getInternal().isEmbeddedOnly(); }
/** * * Returns whether an entity has no schema. * An entity does not have schema if it would not directly represent an object in Force.com; * for example, if the entity is embedded or if it's a subclass of another entity * * @param acmd the metadata object of the JPA entity * @return {@code true} if the entity does not have schema */ public static boolean hasNoSchema(AbstractClassMetaData acmd) { return acmd.isEmbeddedOnly() || acmd.getInheritanceMetaData() != null && acmd.getInheritanceMetaData().getStrategy() == InheritanceStrategy.SUBCLASS_TABLE; }
public void loaded(AbstractClassMetaData cmd) { if (cmd.getIdentityType() == IdentityType.DATASTORE && !cmd.isEmbeddedOnly()) { // Datastore id not supported throw new InvalidClassMetaDataException("LDAP.DatastoreID", cmd.getFullClassName()); } } }
public void loaded(AbstractClassMetaData cmd) { if (cmd.getIdentityType() == IdentityType.DATASTORE && !cmd.isEmbeddedOnly()) { // Datastore id not supported throw new InvalidClassMetaDataException("XML.DatastoreID", cmd.getFullClassName()); } } }
/** * * Returns whether an entity has no schema. * An entity does not have schema if it would not directly represent an object in Force.com; * for example, if the entity is embedded or if it's a subclass of another entity * * @param acmd the metadata object of the JPA entity * @return {@code true} if the entity does not have schema */ public static boolean hasNoSchema(AbstractClassMetaData acmd) { return acmd.isEmbeddedOnly() || acmd.getInheritanceMetaData() != null && acmd.getInheritanceMetaData().getStrategy() == InheritanceStrategy.SUBCLASS_TABLE; }
/** * Method to perform the replication for all objects registered in the pmf source. */ public void replicateRegisteredClasses() { ClassLoaderResolver clr = ((JDOPersistenceManager)pmfSource.getPersistenceManager()).getExecutionContext().getClassLoaderResolver(); MetaDataManager mmgr = ((JDOPersistenceManagerFactory)pmfSource).getNucleusContext().getMetaDataManager(); Collection classNames = mmgr.getClassesWithMetaData(); ArrayList arrayTypes = new ArrayList(); Iterator iterator = classNames.iterator(); while (iterator.hasNext()) { String className = (String) iterator.next(); AbstractClassMetaData cmd = mmgr.getMetaDataForClass(className, clr); if (!cmd.isEmbeddedOnly()) // Omit embedded-only classes since can't replicate those { arrayTypes.add(clr.classForName(className)); } } replicate((Class[])arrayTypes.toArray(new Class[arrayTypes.size()])); }
if (effectiveClassMetaData == null || effectiveClassMetaData.isEmbeddedOnly()) if (effectiveClassMetaData == null || effectiveClassMetaData.isEmbeddedOnly())
/** * This method is called when an entity is loaded during startup. There is * some basic validation that happens here as well as the caching of objects * (@Entity classes). Registration of fields happens in the {@link ForceMetaDataManager} * * @param cmd the class metadata to load */ @Override public void loaded(AbstractClassMetaData cmd) { if (cmd.getIdentityType() == IdentityType.DATASTORE && !cmd.isEmbeddedOnly()) { throw new InvalidMetaDataException(LOCALISER, "force.DatastoreID", cmd.getFullClassName()); } /** * Annotations do not work at field level. We hack that in here for now. */ updateAnnotations(cmd); /** * Validate that the annotations and extensions are supported */ validateExtensions(cmd); /** * Load object schema and register it --creation happens in the ForceMetaDataManager */ registerObjectSchema(cmd); }
/** * This method is called when an entity is loaded during startup. There is * some basic validation that happens here as well as the caching of objects * (@Entity classes). Registration of fields happens in the {@link ForceMetaDataManager} * * @param cmd the class metadata to load */ @Override public void loaded(AbstractClassMetaData cmd) { if (cmd.getIdentityType() == IdentityType.DATASTORE && !cmd.isEmbeddedOnly()) { throw new InvalidMetaDataException(LOCALISER, "force.DatastoreID", cmd.getFullClassName()); } /** * Annotations do not work at field level. We hack that in here for now. */ updateAnnotations(cmd); /** * Validate that the annotations and extensions are supported */ validateExtensions(cmd); /** * Load object schema and register it --creation happens in the ForceMetaDataManager */ registerObjectSchema(cmd); }
synchronized (cmd) { try { if (cmd.isEmbeddedOnly() || PersistenceUtils.isReadOnlySchema(cmd, false)) return; ForceManagedConnection mconn = storeManager.createConnection(); try {
synchronized (cmd) { try { if (cmd.isEmbeddedOnly() || PersistenceUtils.isReadOnlySchema(cmd, false)) return; ForceManagedConnection mconn = storeManager.createConnection(); try {
if (valCmd != null && valCmd.isEmbeddedOnly())
if (elemCmd != null && elemCmd.isEmbeddedOnly())
if (keyCmd != null && keyCmd.isEmbeddedOnly())
if (elemCmd != null && elemCmd.isEmbeddedOnly())
private void updateListOfMissingFields() { for (AbstractMemberMetaData ammd : findAllFields()) { validateColumn(ammd, storeManager.getOMFContext()); AbstractClassMetaData relatedEntity = storeManager.getMetaDataManager().getMetaDataForEntityName(ammd.getType().getSimpleName()); if (relatedEntity != null && relatedEntity.isEmbeddedOnly()) { // Add all embedded fields to embedding entity for (AbstractMemberMetaData eammd : ammd.getEmbeddedMetaData().getMemberMetaData()) { addFieldToListIfAbsent(eammd, storeManager); } } else { addFieldToListIfAbsent(ammd, storeManager); } } // If there is a discriminator column add that too if (cmd.getSuperAbstractClassMetaData() == null && cmd.getDiscriminatorMetaData() != null && cmd.getDiscriminatorMetaData().getColumnMetaData() != null) { ColumnMetaData colmd = cmd.getDiscriminatorMetaData().getColumnMetaData(); addFieldToListIfAbsent(new ForceMemberMetaData(colmd, colmd.getName()) { @Override public Class<?> getType() { return String.class; } }, storeManager); } }
private void updateListOfMissingFields() { for (AbstractMemberMetaData ammd : findAllFields()) { validateColumn(ammd, storeManager.getOMFContext()); AbstractClassMetaData relatedEntity = storeManager.getMetaDataManager().getMetaDataForEntityName(ammd.getType().getSimpleName()); if (relatedEntity != null && relatedEntity.isEmbeddedOnly()) { // Add all embedded fields to embedding entity for (AbstractMemberMetaData eammd : ammd.getEmbeddedMetaData().getMemberMetaData()) { addFieldToListIfAbsent(eammd, storeManager); } } else { addFieldToListIfAbsent(ammd, storeManager); } } // If there is a discriminator column add that too if (cmd.getSuperAbstractClassMetaData() == null && cmd.getDiscriminatorMetaData() != null && cmd.getDiscriminatorMetaData().getColumnMetaData() != null) { ColumnMetaData colmd = cmd.getDiscriminatorMetaData().getColumnMetaData(); addFieldToListIfAbsent(new ForceMemberMetaData(colmd, colmd.getName()) { @Override public Class<?> getType() { return String.class; } }, storeManager); } }
if (otherCmd.isEmbeddedOnly())