Class QueryTemplateManagement
- 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<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate,org.gcube.informationsystem.types.reference.entities.EntityType>
-
- org.gcube.informationsystem.resourceregistry.queries.templates.QueryTemplateManagement
-
public class QueryTemplateManagement extends EntityElementManagement<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate,org.gcube.informationsystem.types.reference.entities.EntityType>
- Author:
- Luca Frosini (ISTI - CNR)
-
-
Field Summary
Fields Modifier and Type Field Description protected Stringnameprotected org.gcube.com.fasterxml.jackson.databind.JsonNodeparams-
Fields inherited from class org.gcube.informationsystem.resourceregistry.instances.base.entities.EntityElementManagement
IN_PREFIX, OUT_PREFIX, relationManagements
-
Fields inherited from class org.gcube.informationsystem.resourceregistry.instances.base.ElementManagement
accessType, affectedInstances, AT, cachedType, complete, DELETED, dryRun, element, elementClass, entryPoint, ignoreKeys, ignoreStartWithKeys, jsonNode, oClass, oDatabaseDocument, operation, reload, self, typeName, UNDERSCORE, uuid, workingContext
-
-
Constructor Summary
Constructors Constructor Description QueryTemplateManagement()QueryTemplateManagement(com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckERMatch()protected voidcheckIfNameAlreadyExists()protected voidcheckJsonNode()protected voidcheckNameMatch()protected org.gcube.com.fasterxml.jackson.databind.JsonNodecreateCompleteJsonNode()StringgetName()protected StringBuffergetSelectQuery()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 com.orientechnologies.orient.core.record.OVertexreallyCreate()protected voidreallyDelete()StringreallyGetAll(boolean polymorphic)protected com.orientechnologies.orient.core.record.OVertexreallyUpdate()com.orientechnologies.orient.core.record.OVertexretrieveElement()Stringrun()Run the query after having replaced query parameter with the provided valuesvoidsanityCheck()voidsetName(String name)voidsetParams(String params)voidsetParams(org.gcube.com.fasterxml.jackson.databind.JsonNode params)protected voidtryTemplate()-
Methods inherited from class org.gcube.informationsystem.resourceregistry.instances.base.entities.EntityElementManagement
addRelation, addToRelationManagement, createVertex, getBaseRelationManagement
-
Methods inherited from class org.gcube.informationsystem.resourceregistry.instances.base.ElementManagement
all, checkUUIDMatch, cleanCachedSerialization, create, createOrUpdate, delete, exists, getAccessType, getAffectedInstances, getAllProperties, getCachedType, getClassProperty, getContexts, getContextsAsObjectNode, getContextsSet, getElement, getMandatoryErrorMessage, getNotNullErrorMessage, getObjectFromJsonNode, getOClass, getPropertyForJson, getPropertyMap, getTypeName, getUUID, internalCreate, internalCreateOrUdate, internalDelete, internalUpdate, isDryRun, isReload, read, retrieveElementFromAnyContext, 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
-
params
protected org.gcube.com.fasterxml.jackson.databind.JsonNode params
-
-
Constructor Detail
-
QueryTemplateManagement
public QueryTemplateManagement()
-
QueryTemplateManagement
public QueryTemplateManagement(com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
-
Method Detail
-
checkERMatch
protected void checkERMatch() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
checkERMatchin classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
checkNameMatch
protected void checkNameMatch() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
setName
public void setName(String name) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
checkJsonNode
protected void checkJsonNode() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
checkJsonNodein classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
getName
public String getName()
-
getWorkingContext
protected SecurityContext getWorkingContext() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Overrides:
getWorkingContextin classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
createCompleteJsonNode
protected org.gcube.com.fasterxml.jackson.databind.JsonNode createCompleteJsonNode() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Specified by:
createCompleteJsonNodein classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
getSelectQuery
protected StringBuffer getSelectQuery()
-
checkIfNameAlreadyExists
protected void checkIfNameAlreadyExists() throws org.gcube.informationsystem.resourceregistry.api.exceptions.AlreadyPresentException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.AlreadyPresentException
-
retrieveElement
public com.orientechnologies.orient.core.record.OVertex retrieveElement() throws org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
retrieveElementin classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
reallyCreate
protected com.orientechnologies.orient.core.record.OVertex reallyCreate() throws org.gcube.informationsystem.resourceregistry.api.exceptions.AlreadyPresentException, org.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Specified by:
reallyCreatein classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.AlreadyPresentExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
reallyUpdate
protected com.orientechnologies.orient.core.record.OVertex reallyUpdate() throws org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Specified by:
reallyUpdatein classElementManagement<com.orientechnologies.orient.core.record.OVertex,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.NotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Specified by:
reallyDeletein classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundExceptionorg.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.OVertex,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.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>
-
reallyGetAll
public String reallyGetAll(boolean polymorphic) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Specified by:
reallyGetAllin classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
setParams
public void setParams(String params) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
setParams
public void setParams(org.gcube.com.fasterxml.jackson.databind.JsonNode params) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
run
public String run() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
Run the query after having replaced query parameter with the provided values- Returns:
- the result as JSON string
- Throws:
Exceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
sanityCheck
public void sanityCheck() throws org.gcube.informationsystem.resourceregistry.api.exceptions.types.SchemaViolationException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Overrides:
sanityCheckin classElementManagement<com.orientechnologies.orient.core.record.OVertex,org.gcube.informationsystem.types.reference.entities.EntityType>- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.types.SchemaViolationExceptionorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
-