Class SaveEntityReferenceCopy
java.lang.Object
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.AbstractTransactionFunction
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.SaveEntityReferenceCopy
Transaction function for adding a reference copy entity.
-
Field Summary
-
Constructor Summary
ConstructorDescriptionSaveEntityReferenceCopy
(Long txId, clojure.lang.PersistentHashMap existing, clojure.lang.PersistentHashMap updated, String homeMetadataCollectionId) 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 void
transact
(XTDBOMRSRepositoryConnector xtdb, EntityDetail toSave) Create the provided entity instance in the XTDB repository by pushing down the transaction.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
-
SaveEntityReferenceCopy
public SaveEntityReferenceCopy(Long txId, clojure.lang.PersistentHashMap existing, clojure.lang.PersistentHashMap updated, String homeMetadataCollectionId) throws Exception Constructor used to execute the transaction function.- Parameters:
txId
- the transaction ID of this function invocationexisting
- the existing entity in XT, if anyupdated
- the updated entity to replace the existing one withhomeMetadataCollectionId
- the metadataCollectionId of the repository where the transaction is running- Throws:
Exception
- on any error
-
-
Method Details
-
transact
public static void transact(XTDBOMRSRepositoryConnector xtdb, EntityDetail toSave) throws EntityConflictException, HomeEntityException, InvalidParameterException, RepositoryErrorException Create the provided entity instance in the XTDB repository by pushing down the transaction.- Parameters:
xtdb
- connectivitytoSave
- the entity reference copy to persist- Throws:
EntityConflictException
- the new entity conflicts with an existing entityHomeEntityException
- if the entity belongs to the local repository so cannot be a reference copyInvalidParameterException
- one of the parameters is invalid or nullRepositoryErrorException
- 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
-