Class RelationTypeDefinitionManagement<T extends EntityTypeDefinitionManagement<TT>,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>
- java.lang.Object
-
- org.gcube.informationsystem.resourceregistry.instances.base.ElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<SET,TET>>
-
- org.gcube.informationsystem.resourceregistry.instances.base.relations.RelationElementManagement<ResourceTypeDefinitionManagement,T,org.gcube.informationsystem.types.reference.entities.ResourceType,TT>
-
- org.gcube.informationsystem.resourceregistry.types.relations.RelationTypeDefinitionManagement<T,TT>
-
- Direct Known Subclasses:
ConsistsOfTypeDefinitionManagement,IsRelatedToTypeDefinitionManagement
public abstract class RelationTypeDefinitionManagement<T extends EntityTypeDefinitionManagement<TT>,TT extends org.gcube.informationsystem.types.reference.entities.EntityType> extends RelationElementManagement<ResourceTypeDefinitionManagement,T,org.gcube.informationsystem.types.reference.entities.ResourceType,TT>
- Author:
- Luca Frosini (ISTI - CNR)
-
-
Field Summary
Fields Modifier and Type Field Description protected Stringname-
Fields inherited from class org.gcube.informationsystem.resourceregistry.instances.base.relations.RelationElementManagement
IN, includeSource, includeTarget, OUT, sourceEntityClass, sourceEntityManagement, targetEntityClass, targetEntityManagement
-
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 Constructor Description RelationTypeDefinitionManagement(Class<TT> clz)RelationTypeDefinitionManagement(SecurityContext securityContext, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument, Class<TT> clz)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidchecksourceAndTargetEntityCompliancy()Map<UUID,org.gcube.com.fasterxml.jackson.databind.JsonNode>getAffectedInstances()com.orientechnologies.orient.core.record.OEdgegetElement()StringgetName()protected org.gcube.informationsystem.resourceregistry.api.exceptions.AlreadyPresentExceptiongetSpecificAlreadyPresentException(String message)protected org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundExceptiongetSpecificNotFoundException(org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException e)protected SecurityContextgetWorkingContext()protected ResourceTypeDefinitionManagementnewSourceEntityManagement()protected com.orientechnologies.orient.core.record.OEdgereallyCreate()protected voidreallyDelete()StringreallyGetAll(boolean polymorphic)protected com.orientechnologies.orient.core.record.OEdgereallyUpdate()com.orientechnologies.orient.core.record.OEdgeretrieveElement()voidsetName(String name)-
Methods inherited from class org.gcube.informationsystem.resourceregistry.instances.base.relations.RelationElementManagement
createCompleteJsonNode, getSourceEntityManagement, getTargetEntityManagement, includeSource, includeTarget, newTargetEntityManagement, setSourceEntityManagement, setTargetEntityManagement
-
Methods inherited from class org.gcube.informationsystem.resourceregistry.instances.base.ElementManagement
all, checkERMatch, checkJsonNode, checkUUIDMatch, cleanCachedSerialization, create, createOrUpdate, delete, exists, getAccessType, getAllProperties, getCachedType, getClassProperty, getContexts, getContextsAsObjectNode, getContextsSet, getMandatoryErrorMessage, getNotNullErrorMessage, getObjectFromJsonNode, getOClass, getPropertyForJson, getPropertyMap, getTypeName, getUUID, internalCreate, internalCreateOrUdate, internalDelete, internalUpdate, isDryRun, isReload, read, retrieveElementFromAnyContext, sanityCheck, serializeAsAffectedInstance, serializeAsJsonNode, serializeSelfAsJsonNode, setAsEntryPoint, setDryRun, setElement, setElementType, setJson, setJsonNode, setOClass, setODatabaseDocument, setOperation, setProperty, setReload, setUUID, setWorkingContext, typeSatified, update, updateProperties
-
-
-
-
Field Detail
-
name
protected String name
-
-
Constructor Detail
-
RelationTypeDefinitionManagement
public RelationTypeDefinitionManagement(SecurityContext securityContext, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument, Class<TT> clz) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
-
Method Detail
-
getAffectedInstances
public Map<UUID,org.gcube.com.fasterxml.jackson.databind.JsonNode> getAffectedInstances()
- Overrides:
getAffectedInstancesin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>>
-
getWorkingContext
protected SecurityContext getWorkingContext() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Overrides:
getWorkingContextin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
setName
public void setName(String name)
-
getName
public String getName()
-
reallyCreate
protected com.orientechnologies.orient.core.record.OEdge reallyCreate() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
reallyCreatein classRelationElementManagement<ResourceTypeDefinitionManagement,T extends EntityTypeDefinitionManagement<TT>,org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
reallyUpdate
protected com.orientechnologies.orient.core.record.OEdge reallyUpdate() throws org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
reallyUpdatein classRelationElementManagement<ResourceTypeDefinitionManagement,T extends EntityTypeDefinitionManagement<TT>,org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
reallyDelete
protected void reallyDelete() throws org.gcube.informationsystem.resourceregistry.api.exceptions.relations.RelationNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
reallyDeletein classRelationElementManagement<ResourceTypeDefinitionManagement,T extends EntityTypeDefinitionManagement<TT>,org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.relations.RelationNotFoundExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
getElement
public com.orientechnologies.orient.core.record.OEdge getElement() throws org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
getElementin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
retrieveElement
public com.orientechnologies.orient.core.record.OEdge retrieveElement() throws org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
retrieveElementin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
reallyGetAll
public String reallyGetAll(boolean polymorphic) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Specified by:
reallyGetAllin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
getSpecificNotFoundException
protected org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException getSpecificNotFoundException(org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException e)
- Specified by:
getSpecificNotFoundExceptionin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>>
-
getSpecificAlreadyPresentException
protected org.gcube.informationsystem.resourceregistry.api.exceptions.AlreadyPresentException getSpecificAlreadyPresentException(String message)
- Specified by:
getSpecificAlreadyPresentExceptionin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationType<org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>>
-
newSourceEntityManagement
protected ResourceTypeDefinitionManagement newSourceEntityManagement() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Specified by:
newSourceEntityManagementin classRelationElementManagement<ResourceTypeDefinitionManagement,T extends EntityTypeDefinitionManagement<TT>,org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
checksourceAndTargetEntityCompliancy
protected void checksourceAndTargetEntityCompliancy() throws org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.AvailableInAnotherContextException, org.gcube.informationsystem.resourceregistry.api.exceptions.types.SchemaViolationException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Specified by:
checksourceAndTargetEntityCompliancyin classRelationElementManagement<ResourceTypeDefinitionManagement,T extends EntityTypeDefinitionManagement<TT>,org.gcube.informationsystem.types.reference.entities.ResourceType,TT extends org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.AvailableInAnotherContextExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.types.SchemaViolationExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
-