java.lang.Object
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.AbstractTransactionFunction
org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.txnfn.AddRelationship

public class AddRelationship extends AbstractTransactionFunction
Transaction function for adding a Relationship.
  • Field Details

    • FUNCTION_NAME

      public static final clojure.lang.Keyword FUNCTION_NAME
  • Constructor Details

    • AddRelationship

      public AddRelationship(Long txId, String entityOneGUID, String entityTwoGUID, clojure.lang.PersistentHashMap proxy1, clojure.lang.PersistentHashMap proxy2, Relationship relationship) throws Exception
      Constructor used to execute the transaction function.
      Parameters:
      txId - the transaction ID of this function invocation
      entityOneGUID - the unique identifier of the first endpoint of the relationship
      entityTwoGUID - the unique identifier of the second endpoint of the relationship
      proxy1 - XTDB document representing the EntityProxy at endpoint 1 of the relationship
      proxy2 - XTDB document representing the EntityProxy at endpoint 2 of the relationship
      relationship - the relationship to create
      Throws:
      Exception - on any error
  • Method Details

    • transact

      public static Relationship transact(XTDBOMRSRepositoryConnector xtdb, Relationship relationship, String entityOneGUID, String entityTwoGUID) throws EntityNotKnownException, InvalidParameterException, RepositoryErrorException
      Create the provided entity instance in the XTDB repository by pushing down the transaction.
      Parameters:
      xtdb - connectivity
      relationship - to create
      entityOneGUID - unique identifier of the first endpoint's proxy
      entityTwoGUID - unique identifier of the second endpoint's proxy
      Returns:
      Relationship as it was created
      Throws:
      EntityNotKnownException - one of the requested entity proxy's is not known
      InvalidParameterException - one of the parameters is invalid or null
      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