Class ClassifyEntityProxy
java.lang.Object
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.AbstractTransactionFunction
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ClassifyEntity
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ClassifyEntityProxy
Transaction function for adding / updating a classification to an entity proxy
(including creating that entity proxy if it does not already exist in the repository).
-
Field Summary
FieldsFields inherited from class org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ClassifyEntity
xtdbDoc
-
Constructor Summary
ConstructorsConstructorDescriptionClassifyEntityProxy
(Long txId, clojure.lang.PersistentHashMap existing, clojure.lang.PersistentHashMap proxy, String userId, String entityGUID, String metadataCollectionId, String classificationName, String externalSourceGUID, String externalSourceName, ClassificationOrigin classificationOrigin, String classificationOriginGUID, InstanceProperties properties) Constructor used to execute the transaction function. -
Method Summary
Modifier and TypeMethodDescriptionstatic void
create
(xtdb.api.tx.Transaction.Builder tx) Create the transaction function within XTDB.clojure.lang.IPersistentMap
doc()
Interface that returns the updated document to write-back from the transaction.static Classification
transact
(XTDBOMRSRepositoryConnector xtdb, String userId, EntityProxy entityProxy, String classificationName, String externalSourceGUID, String externalSourceName, ClassificationOrigin classificationOrigin, String classificationOriginGUID, InstanceProperties properties) Add the classification to the provided entity proxy in the XTDB repository by pushing the transaction down into the repository itself.Methods inherited from class org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.AbstractTransactionFunction
createTransactionFunction, getGUID, getInstanceProvenanceType, getMetadataCollectionId, getTxnTimeCalculation, getTypeDefForInstance, getTypeDefGUID, incrementVersion, incrementVersion
-
Field Details
-
FUNCTION_NAME
public static final clojure.lang.Keyword FUNCTION_NAME
-
-
Constructor Details
-
ClassifyEntityProxy
public ClassifyEntityProxy(Long txId, clojure.lang.PersistentHashMap existing, clojure.lang.PersistentHashMap proxy, String userId, String entityGUID, String metadataCollectionId, String classificationName, String externalSourceGUID, String externalSourceName, ClassificationOrigin classificationOrigin, String classificationOriginGUID, InstanceProperties properties) throws Exception Constructor used to execute the transaction function.- Parameters:
txId
- the transaction ID of this function invocationexisting
- XTDB document to updateproxy
- XTDB document to update, if existing is emptyuserId
- doing the updateentityGUID
- of the entity to updatemetadataCollectionId
- of the metadata collection in which the transaction is runningclassificationName
- name of the classificationexternalSourceGUID
- unique identifier for the external sourceexternalSourceName
- unique name for the external sourceclassificationOrigin
- source of the classification (assigned or propagated)classificationOriginGUID
- unique identifier of the entity that propagated the classification (if propagated)properties
- the properties to set on the classification- Throws:
Exception
- on any error
-
-
Method Details
-
transact
public static Classification transact(XTDBOMRSRepositoryConnector xtdb, String userId, EntityProxy entityProxy, String classificationName, String externalSourceGUID, String externalSourceName, ClassificationOrigin classificationOrigin, String classificationOriginGUID, InstanceProperties properties) throws InvalidParameterException, ClassificationErrorException, PropertyErrorException, RepositoryErrorException Add the classification to the provided entity proxy in the XTDB repository by pushing the transaction down into the repository itself.- Parameters:
xtdb
- connectivityuserId
- doing the updateentityProxy
- of the entity to classifyclassificationName
- name of the classificationexternalSourceGUID
- unique identifier for the external sourceexternalSourceName
- unique name for the external sourceclassificationOrigin
- source of the classification (assigned or propagated)classificationOriginGUID
- unique identifier of the entity that propagated the classification (if propagated)properties
- the properties to set on the classification- Returns:
- Classification that was applied
- Throws:
InvalidParameterException
- if the entity exists but cannot be updated (deleted, reference copy, etc)ClassificationErrorException
- if there is any issue related to the classificationPropertyErrorException
- one or more of the requested properties are not defined, or have different characteristics in the TypeDef for this classification typeRepositoryErrorException
- on any other error
-
doc
public clojure.lang.IPersistentMap doc()Interface that returns the updated document to write-back from the transaction.- Returns:
- IPersistentMap giving the updated document in its entirety
-
create
public static void create(xtdb.api.tx.Transaction.Builder tx) Create the transaction function within XTDB.- Parameters:
tx
- transaction through which to create the function
-