Class ReHomeEntity
java.lang.Object
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.AbstractTransactionFunction
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ReHomeInstance
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ReHomeEntity
Transaction function for updating an entity's home repository.
-
Field Summary
-
Constructor Summary
-
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 EntityDetail
transact
(XTDBOMRSRepositoryConnector xtdb, String userId, String entityGUID, String newMetadataCollectionId, String newMetadataCollectionName) Change the home repository of the provided entity instance 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.ReHomeInstance
reHomeInstance, validate
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
-
ReHomeEntity
public ReHomeEntity(Long txId, clojure.lang.PersistentHashMap existing, String userId, String entityGUID, String metadataCollectionId, String newMetadataCollectionId, String newMetadataCollectionName) throws Exception Constructor used to execute the transaction function.- Parameters:
txId
- the transaction ID of this function invocationexisting
- XTDB document to re-homeuserId
- doing the updateentityGUID
- of the entity to re-homemetadataCollectionId
- of the metadata collection in which the transaction is runningnewMetadataCollectionId
- in which to re-home to the entitynewMetadataCollectionName
- in which to re-home the entity- Throws:
Exception
- on any error
-
-
Method Details
-
transact
public static EntityDetail transact(XTDBOMRSRepositoryConnector xtdb, String userId, String entityGUID, String newMetadataCollectionId, String newMetadataCollectionName) throws EntityNotKnownException, InvalidParameterException, RepositoryErrorException Change the home repository of the provided entity instance in the XTDB repository by pushing the transaction down into the repository itself.- Parameters:
xtdb
- connectivityuserId
- doing the updateentityGUID
- of the entity on which to change the home repositorynewMetadataCollectionId
- in which to re-home to the entitynewMetadataCollectionName
- in which to re-home the entity- Returns:
- EntityDetail the entity with the new home repository applied
- Throws:
EntityNotKnownException
- if the entity cannot be foundInvalidParameterException
- if the entity exists but cannot be re-homed (i.e. not a reference copy)RepositoryErrorException
- 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
-