protected boolean hasEmbeddedId(MetaClass metaClass) { return metadata.getTools().hasCompositePrimaryKey(metaClass); } }
protected void checkCompositePrimaryKey(Entity entity) { if (metadata.getTools().hasCompositePrimaryKey(entity.getMetaClass()) && !(entity instanceof HasUuid)) { throw new UnsupportedOperationException(format("Entity %s has no persistent UUID attribute", entity)); } }
@Override public boolean isEntityCanBeIndexed(MetaClass metaClass) { return !(metadata.getTools().hasCompositePrimaryKey(metaClass) && !HasUuid.class.isAssignableFrom(metaClass.getJavaClass())); }
protected boolean doNotRegister(Entity entity) { if (entity == null) { return true; } if (entity instanceof EntityLogItem) { return true; } if (metadata.getTools().hasCompositePrimaryKey(entity.getMetaClass()) && !(entity instanceof HasUuid)) { return true; } return !isEnabled(); }
@Override public List<Entity> reload(LoadDescriptor ld) { if (metadataTools.hasCompositePrimaryKey(ld.getMetaClass())) { return loadItemsWithCompositeKey(ld); } return loadItemsWithDirectKey(ld); }
@Override public MetaProperty getPrimaryKeyPropertyForFts(MetaClass metaClass) { if (metadata.getTools().hasCompositePrimaryKey(metaClass) && HasUuid.class.isAssignableFrom(metaClass.getJavaClass())) { return metaClass.getPropertyNN("uuid"); } return metadata.getTools().getPrimaryKeyProperty(metaClass); }
if (metadata.getTools().hasCompositePrimaryKey(metaClass) && !HasUuid.class.isAssignableFrom(metaClass.getJavaClass())) { for (BaseGenericIdEntity entity : entities) {
if (!metadata.getTools().hasCompositePrimaryKey(metaClass)) { jsonObject.put(ENTITY_ID_KEY, getEntityId(entity));
public TreeMap<String, String> getEntityMetaClasses() { TreeMap<String, String> options = new TreeMap<>(); for (MetaClass metaClass : metadata.getTools().getAllPersistentMetaClasses()) { if (metadata.getExtendedEntities().getExtendedClass(metaClass) == null) { MetaClass originalMetaClass = metadata.getExtendedEntities().getOriginalOrThisMetaClass(metaClass); String originalName = originalMetaClass.getName(); Class javaClass = originalMetaClass.getJavaClass(); if (metadata.getTools().hasCompositePrimaryKey(metaClass) && !HasUuid.class.isAssignableFrom(javaClass)) { continue; } String caption = messages.getMessage(javaClass, javaClass.getSimpleName()) + " (" + originalName + ")"; options.put(caption, originalName); } } return options; }
if (!metadata.getTools().hasCompositePrimaryKey(entity.getMetaClass()) && !(entity instanceof EmbeddableEntity)) { if (!jsonObject.has(ENTITY_ID_KEY) || !jsonObject.has(ENTITY_NAME_KEY)) {
protected void writeIdField(Entity entity, JsonObject jsonObject) { MetaProperty primaryKeyProperty = metadataTools.getPrimaryKeyProperty(entity.getMetaClass()); if (primaryKeyProperty == null) { primaryKeyProperty = entity.getMetaClass().getProperty("id"); } if (primaryKeyProperty == null) throw new EntitySerializationException("Primary key property not found for entity " + entity.getMetaClass()); if (metadataTools.hasCompositePrimaryKey(entity.getMetaClass())) { JsonObject serializedIdEntity = serializeEntity((Entity) entity.getId(), null, Collections.emptySet()); jsonObject.add("id", serializedIdEntity); } else { Datatype idDatatype = Datatypes.getNN(primaryKeyProperty.getJavaType()); jsonObject.addProperty("id", idDatatype.format(entity.getId())); } }
protected boolean allowLogProperty(MetaProperty metaProperty, CategoryAttribute categoryAttribute) { if (systemAttrsList.contains(metaProperty.getName())) { return false; } Range range = metaProperty.getRange(); if (range.isClass() && metadata.getTools().hasCompositePrimaryKey(range.asClass()) && !HasUuid.class.isAssignableFrom(range.asClass().getJavaClass())) { return false; } if (range.isClass() && range.getCardinality().isMany()) { return false; } if (categoryAttribute != null && BooleanUtils.isTrue(categoryAttribute.getIsCollection())) { return false; } return true; }
Entity entity; if (metadata.getTools().hasCompositePrimaryKey(metaClass) && HasUuid.class.isAssignableFrom(metaClass.getJavaClass())) { entity = (Entity) em.createQuery("select e from " + metaClass.getName() + " e where e.uuid = :uuid") .setParameter("uuid", entityId)
if (primaryKeyProperty != null) { if (idJsonElement != null) { if (metadataTools.hasCompositePrimaryKey(resultMetaClass)) { MetaClass pkMetaClass = primaryKeyProperty.getRange().asClass(); pkValue = readEntity(idJsonElement.getAsJsonObject(), pkMetaClass);
protected void initEntityTypeField() { final ExtendedEntities extendedEntities = metadata.getExtendedEntities(); Map<String, MetaClass> options = new TreeMap<>();//the map sorts meta classes by the string key for (MetaClass metaClass : metadata.getTools().getAllPersistentMetaClasses()) { if (metadata.getTools().hasCompositePrimaryKey(metaClass) && !HasUuid.class.isAssignableFrom(metaClass.getJavaClass())) { continue; } options.put(messageTools.getDetailedEntityCaption(metaClass), metaClass); } entityType.setOptionsMap(options); if (category.getEntityType() != null) { entityType.setValue(extendedEntities.getEffectiveMetaClass( extendedEntities.getEffectiveClass(category.getEntityType()))); } entityType.addValueChangeListener(e -> { MetaClass metaClass = (MetaClass) e.getValue(); MetaClass originalClass = extendedEntities.getOriginalMetaClass(metaClass); category.setEntityType(originalClass == null ? metaClass.getName() : originalClass.getName()); }); }
} else { Object entityId = e.getId(); if (metadata.getTools().hasCompositePrimaryKey(metaClass) && HasUuid.class.isAssignableFrom(metaClass.getJavaClass())) { entityId = ((HasUuid) e).getUuid();
for (MetaClass metaClass : metadataTools.getAllPersistentMetaClasses()) { if (!metadataTools.isSystemLevel(metaClass)) { if (metadata.getTools().hasCompositePrimaryKey(metaClass) && !HasUuid.class.isAssignableFrom(metaClass.getJavaClass())) { continue;