Class ReHomeRelationship
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.ReHomeRelationship
Transaction function for updating a relationship'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 Relationship
transact
(XTDBOMRSRepositoryConnector xtdb, String userId, String relationshipGUID, String newMetadataCollectionId, String newMetadataCollectionName) Change the home repository of the provided relationship 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
-
ReHomeRelationship
public ReHomeRelationship(Long txId, clojure.lang.PersistentHashMap existing, String userId, String relationshipGUID, 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 updaterelationshipGUID
- of the relationship to re-homemetadataCollectionId
- of the metadata collection in which the transaction is runningnewMetadataCollectionId
- in which to re-home to the relationshipnewMetadataCollectionName
- in which to re-home the relationship- Throws:
Exception
- on any error
-
-
Method Details
-
transact
public static Relationship transact(XTDBOMRSRepositoryConnector xtdb, String userId, String relationshipGUID, String newMetadataCollectionId, String newMetadataCollectionName) throws RelationshipNotKnownException, InvalidParameterException, RepositoryErrorException Change the home repository of the provided relationship instance in the XTDB repository by pushing the transaction down into the repository itself.- Parameters:
xtdb
- connectivityuserId
- doing the updaterelationshipGUID
- of the relationship on which to change the home repositorynewMetadataCollectionId
- in which to re-home to the relationshipnewMetadataCollectionName
- in which to re-home the relationship- Returns:
- Relationship the relationship with the new home repository applied
- Throws:
RelationshipNotKnownException
- if the relationship cannot be foundInvalidParameterException
- if the relationship 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
-