Class ReIdentifyRelationship
java.lang.Object
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.AbstractTransactionFunction
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ReIdentifyInstance
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ReIdentifyRelationship
Transaction function for updating an relationship's unique identifier.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
create
(xtdb.api.tx.Transaction.Builder tx) Create the transaction function within XTDB.static Relationship
transact
(XTDBOMRSRepositoryConnector xtdb, String userId, String relationshipGUID, String newRelationshipGUID) Update the unique identity of the provided relationship instance in the XTDB repository by pushing the transaction down into the repository itself.clojure.lang.IPersistentVector
tuple()
Interface that returns the updated document to write-back from the transaction.Methods inherited from class org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.ReIdentifyInstance
reIdentifyInstance, 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
-
ReIdentifyRelationship
public ReIdentifyRelationship(Long txId, clojure.lang.PersistentHashMap existing, String userId, String relationshipGUID, String newRelationshipGUID, String metadataCollectionId) throws Exception Constructor used to execute the transaction function.- Parameters:
txId
- the transaction ID of this function invocationexisting
- XTDB document to re-identifyuserId
- doing the updaterelationshipGUID
- of the relationship to re-identifynewRelationshipGUID
- to use for the new identitymetadataCollectionId
- of the metadata collection in which the transaction is running- Throws:
Exception
- on any error
-
-
Method Details
-
transact
public static Relationship transact(XTDBOMRSRepositoryConnector xtdb, String userId, String relationshipGUID, String newRelationshipGUID) throws RelationshipNotKnownException, InvalidParameterException, RepositoryErrorException Update the unique identity 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 to be re-identifiednewRelationshipGUID
- to apply to the relationship- Returns:
- Relationship the relationship with the new identity applied
- Throws:
RelationshipNotKnownException
- if the relationship cannot be foundInvalidParameterException
- if the relationship exists but cannot be updated (deleted, reference copy, etc)RepositoryErrorException
- on any other error
-
tuple
public clojure.lang.IPersistentVector tuple()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
-