Class IsRelatedToSchemaManagement
java.lang.Object
org.gcube.informationsystem.resourceregistry.persistence.orientdb.base.ElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationSchema<SET,TET>>
org.gcube.informationsystem.resourceregistry.persistence.orientdb.base.RelationElementManagement<ResourceSchemaManagement,T,org.gcube.informationsystem.types.reference.entities.ResourceSchema,TT>
org.gcube.informationsystem.resourceregistry.persistence.orientdb.types.relations.AbstractRelationSchemaManagement<ResourceSchemaManagement,org.gcube.informationsystem.types.reference.entities.ResourceSchema>
org.gcube.informationsystem.resourceregistry.persistence.orientdb.types.relations.IsRelatedToSchemaManagement
- All Implemented Interfaces:
TypeDefinitionManagement
public class IsRelatedToSchemaManagement
extends AbstractRelationSchemaManagement<ResourceSchemaManagement,org.gcube.informationsystem.types.reference.entities.ResourceSchema>
Manages the IsRelatedToSchema relation type definition in the database schema.
- Author:
- Luca Frosini (ISTI - CNR)
-
Field Summary
Fields inherited from class org.gcube.informationsystem.resourceregistry.persistence.orientdb.types.relations.AbstractRelationSchemaManagement
nameFields inherited from class org.gcube.informationsystem.resourceregistry.persistence.orientdb.base.RelationElementManagement
IN, includeSource, includeTarget, OUT, sourceEntityClass, sourceEntityManagement, targetEntityClass, targetEntityManagementFields inherited from class org.gcube.informationsystem.resourceregistry.persistence.orientdb.base.ElementManagement
accessType, affectedInstances, AT, cachedType, complete, DELETED, DOLLAR, dryRun, element, elementClass, entryPoint, ignoredFields, ignoreKeys, ignoreStartWithKeys, jsonNode, limit, logger, maskMetadata, metadataPolicy, oClass, oDatabaseDocument, offset, operation, polymorphic, preservePassedMetadata, reload, sanityCheckDeferred, self, typeName, UNDERSCORE, updateMode, uuid, workingEnvironment -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new, uninitializedIsRelatedToSchemaManagementinstance.IsRelatedToSchemaManagement(TypeEnvironment typeEnvironment, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) Creates a newIsRelatedToSchemaManagementinstance bound to the specified environment and database session. -
Method Summary
Modifier and TypeMethodDescriptionprotected ResourceSchemaManagementCreates a new management instance for the target entity of the relation (subclass hook).voidPerforms runtime validation of the schema constraints this service enforces from the definition rather than through OrientDB: the mandatory properties, and theminandmaxbounds of the numeric values a creation or an update wrote.Methods inherited from class org.gcube.informationsystem.resourceregistry.persistence.orientdb.types.relations.AbstractRelationSchemaManagement
checksourceAndTargetEntityCompliancy, createCompleteJsonNode, getAffectedInstances, getElement, getName, getSpecificAlreadyPresentException, getSpecificNotFoundException, getWorkingEnvironment, newSourceEntityManagement, reallyCreate, reallyDelete, reallyGetAll, reallyUpdate, retrieveElement, setNameMethods inherited from class org.gcube.informationsystem.resourceregistry.persistence.orientdb.base.RelationElementManagement
carriesContent, getSourceEntityManagement, getSubmittedEndpoint, getSubmittedSourceReference, getTargetEntityManagement, includeSource, includeTarget, setSourceEntityManagement, setTargetEntityManagement, writeTargetMethods inherited from class org.gcube.informationsystem.resourceregistry.persistence.orientdb.base.ElementManagement
addIgnoredFields, afterModification, all, applyPrivacyMask, applyPrivacyMask, checkERMatch, checkJsonNode, checkUUIDMatch, checkUUIDNotAlreadyInUse, cleanCachedSerialization, concludeTransaction, create, createOrUpdate, createOrUpdateElementWithResult, delete, exists, getAccessType, getAllProperties, getCachedType, getCurrentODatabaseDocumentFromThreadLocal, getIgnoredFields, getLimit, getMandatoryErrorMessage, getMandatoryErrorMessage, getMetadataPolicy, getOClass, getOffset, getPropertyForJson, getPropertyMap, getTypeName, getUpdateMode, getUUID, internalCreate, internalCreateOrUdate, internalDelete, internalUpdate, isBackendLinkFieldName, isDryRun, isMaskMetadata, isPolymorphic, isPreservePassedMetadata, isReload, isSanityCheckDeferred, read, recordModification, requireExplicitUUID, retrieveElementFromAnyContext, serializeAsAffectedInstance, serializeAsEndpointReference, serializeAsJsonNode, serializeSelfAsJsonNode, setAsEntryPoint, setDryRun, setElement, setElementType, setIgnoredFields, setJson, setJsonNode, setLimit, setMaskMetadata, setMetadataPolicy, setOClass, setODatabaseDocument, setOffset, setOperation, setPolymorphic, setPreservePassedMetadata, setProperty, setReload, setRequireExplicitUUID, setSanityCheckDeferred, setUpdateMode, setUUID, setWorkingEnvironment, typeSatified, update, updateProperties
-
Constructor Details
-
IsRelatedToSchemaManagement
public IsRelatedToSchemaManagement()Creates a new, uninitializedIsRelatedToSchemaManagementinstance. -
IsRelatedToSchemaManagement
public IsRelatedToSchemaManagement(TypeEnvironment typeEnvironment, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Creates a newIsRelatedToSchemaManagementinstance bound to the specified environment and database session.- Parameters:
typeEnvironment- the Type environment to useoDatabaseDocument- the active OrientDB database session- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if initialization fails
-
-
Method Details
-
newTargetEntityManagement
protected ResourceSchemaManagement newTargetEntityManagement() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryExceptionDescription copied from class:RelationElementManagementCreates a new management instance for the target entity of the relation (subclass hook).- Specified by:
newTargetEntityManagementin classRelationElementManagement<ResourceSchemaManagement,ResourceSchemaManagement, org.gcube.informationsystem.types.reference.entities.ResourceSchema, org.gcube.informationsystem.types.reference.entities.ResourceSchema> - Returns:
- the target entity management instance
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- on database or lookup error
-
sanityCheck
public void sanityCheck() throws org.gcube.informationsystem.resourceregistry.api.exceptions.types.SchemaViolationException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryExceptionDescription copied from class:ElementManagementPerforms runtime validation of the schema constraints this service enforces from the definition rather than through OrientDB: the mandatory properties, and theminandmaxbounds of the numeric values a creation or an update wrote. A System Restore, the only caller that setsElementManagement.preservePassedMetadata, reproduces the archive as it is: it does not validate again the content the dumped registry held.- Overrides:
sanityCheckin classElementManagement<com.orientechnologies.orient.core.record.OEdge,org.gcube.informationsystem.types.reference.relations.RelationSchema<org.gcube.informationsystem.types.reference.entities.ResourceSchema, org.gcube.informationsystem.types.reference.entities.ResourceSchema>> - Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.types.SchemaViolationException- if a schema constraint is violatedorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- on database lookup failure
-