Class EntityElementManagement<E extends org.gcube.informationsystem.base.reference.entities.EntityElement,ET extends org.gcube.informationsystem.types.reference.entities.EntityType>
- java.lang.Object
-
- org.gcube.informationsystem.resourceregistry.instances.base.ElementManagement<com.orientechnologies.orient.core.record.OVertex,ET>
-
- org.gcube.informationsystem.resourceregistry.instances.base.entities.EntityElementManagement<E,ET>
-
- Direct Known Subclasses:
ContextManagement,EntityManagement,EntityTypeDefinitionManagement,QueryTemplateManagement
public abstract class EntityElementManagement<E extends org.gcube.informationsystem.base.reference.entities.EntityElement,ET extends org.gcube.informationsystem.types.reference.entities.EntityType> extends ElementManagement<com.orientechnologies.orient.core.record.OVertex,ET>
- Author:
- Luca Frosini (ISTI - CNR)
-
-
Field Summary
Fields Modifier and Type Field Description static StringIN_PREFIXstatic StringOUT_PREFIXprotected Map<String,RelationElementManagement<?,?,?,?>>relationManagementsProvide a cache edge-internal-id -> RelationManagement this avoid to recreate the relationManagement of already visited edges-
Fields inherited from class org.gcube.informationsystem.resourceregistry.instances.base.ElementManagement
accessType, affectedInstances, AT, cachedType, complete, DELETED, dryRun, element, elementClass, entryPoint, ignoreKeys, ignoreStartWithKeys, jsonNode, logger, oClass, oDatabaseDocument, operation, reload, self, typeName, UNDERSCORE, uuid, workingContext
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedEntityElementManagement(org.gcube.informationsystem.base.reference.AccessType accessType)protectedEntityElementManagement(org.gcube.informationsystem.base.reference.AccessType accessType, SecurityContext workingContext, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static org.gcube.com.fasterxml.jackson.databind.JsonNodeaddRelation(org.gcube.com.fasterxml.jackson.databind.JsonNode sourceResource, org.gcube.com.fasterxml.jackson.databind.JsonNode relation, String arrayKey)protected voidaddToRelationManagement(RelationElementManagement<?,?,?,?> baseRelationManagement)protected com.orientechnologies.orient.core.record.OVertexcreateVertex()protected RelationElementManagement<?,?,?,?>getBaseRelationManagement(com.orientechnologies.orient.core.record.OEdge edge)-
Methods inherited from class org.gcube.informationsystem.resourceregistry.instances.base.ElementManagement
all, checkERMatch, checkJsonNode, checkUUIDMatch, cleanCachedSerialization, create, createCompleteJsonNode, createOrUpdate, delete, exists, getAccessType, getAffectedInstances, getAllProperties, getCachedType, getClassProperty, getContexts, getContextsAsObjectNode, getContextsSet, getElement, getMandatoryErrorMessage, getNotNullErrorMessage, getObjectFromJsonNode, getOClass, getPropertyForJson, getPropertyMap, getSpecificAlreadyPresentException, getSpecificNotFoundException, getTypeName, getUUID, getWorkingContext, internalCreate, internalCreateOrUdate, internalDelete, internalUpdate, isDryRun, isReload, read, reallyCreate, reallyDelete, reallyGetAll, reallyUpdate, retrieveElement, retrieveElementFromAnyContext, sanityCheck, serializeAsAffectedInstance, serializeAsJsonNode, serializeSelfAsJsonNode, setAsEntryPoint, setDryRun, setElement, setElementType, setJson, setJsonNode, setOClass, setODatabaseDocument, setOperation, setProperty, setReload, setUUID, setWorkingContext, typeSatified, update, updateProperties
-
-
-
-
Field Detail
-
IN_PREFIX
public static final String IN_PREFIX
- See Also:
- Constant Field Values
-
OUT_PREFIX
public static final String OUT_PREFIX
- See Also:
- Constant Field Values
-
relationManagements
protected Map<String,RelationElementManagement<?,?,?,?>> relationManagements
Provide a cache edge-internal-id -> RelationManagement this avoid to recreate the relationManagement of already visited edges
-
-
Constructor Detail
-
EntityElementManagement
protected EntityElementManagement(org.gcube.informationsystem.base.reference.AccessType accessType)
-
EntityElementManagement
protected EntityElementManagement(org.gcube.informationsystem.base.reference.AccessType accessType, SecurityContext workingContext, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument)
-
-
Method Detail
-
getBaseRelationManagement
protected RelationElementManagement<?,?,?,?> getBaseRelationManagement(com.orientechnologies.orient.core.record.OEdge edge) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
addToRelationManagement
protected void addToRelationManagement(RelationElementManagement<?,?,?,?> baseRelationManagement) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
addRelation
protected static org.gcube.com.fasterxml.jackson.databind.JsonNode addRelation(org.gcube.com.fasterxml.jackson.databind.JsonNode sourceResource, org.gcube.com.fasterxml.jackson.databind.JsonNode relation, String arrayKey) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
createVertex
protected com.orientechnologies.orient.core.record.OVertex createVertex() throws org.gcube.informationsystem.resourceregistry.api.exceptions.entities.EntityAlreadyPresentException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.entities.EntityAlreadyPresentExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
-