Interface TrustedMetadataApiGrpc.AsyncService

All Known Implementing Classes:
TrustedMetadataApiGrpc.TrustedMetadataApiImplBase
Enclosing class:
TrustedMetadataApiGrpc

public static interface TrustedMetadataApiGrpc.AsyncService

 Trusted API reading, writing and searching for objects in the TRAC metadata store.
 This API is only available to other components of the TRAC platform, it is
 not exposed to clients via the platform gateway.
 Most of the calls in this interface are identical to their public equivalents.
 Extra calls are available for pre-allocating objects, a facility which is not
 available to clients of the platform. Restrictions on the creation of certain
 object types and manipulation of controlled tag attributes are lifted. Methods
 for performing HTTP GET requests of RESTFUL resources are not duplicated.
 @see TracMetadataApi
 
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    createObject(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
    Create a new object in the TRAC metadata store.
    default void
    createPreallocatedObject(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
    Create an object using an ID that was previously preallocated.
    default void
    preallocateId(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
    Preallocate an object ID for an object that will be created later.
    default void
    readBatch(MetadataBatchRequest request, io.grpc.stub.StreamObserver<MetadataBatchResponse> responseObserver)
    Read multiple objects from the TRAC metadata store using tag selectors.
    default void
    readObject(MetadataReadRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.Tag> responseObserver)
    Read a single object from the TRAC metadata store using a tag selector.
    default void
    search(MetadataSearchRequest request, io.grpc.stub.StreamObserver<MetadataSearchResponse> responseObserver)
    Perform a search against the TRAC metadata store.
    default void
    updateObject(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
    Update an existing object in the TRAC metadata store.
    default void
    updateTag(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
    Update the tag for an existing object in the TRAC metadata store.
    default void
    writeBatch(MetadataWriteBatchRequest request, io.grpc.stub.StreamObserver<MetadataWriteBatchResponse> responseObserver)
    Perform a batch of write operations on the TRAC metadata store.
  • Method Details

    • createObject

      default void createObject(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
      
       Create a new object in the TRAC metadata store.
       This call behaves identically to the equivalent public API call, without the
       restriction on which types of object can be saved.
       @see TracMetadataApi.createObject()
       
    • updateObject

      default void updateObject(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
      
       Update an existing object in the TRAC metadata store.
       This call behaves identically to the equivalent public API call, however it
       can be used with any type of object that supports versioning (currently DATA
       and CUSTOM).
       @see TracMetadataApi.updateObject()
       
    • updateTag

      default void updateTag(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
      
       Update the tag for an existing object in the TRAC metadata store.
       This call behaves identically to the equivalent public API call.
       @see TracMetadataApi.updateTag()
       
    • preallocateId

      default void preallocateId(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
      
       Preallocate an object ID for an object that will be created later.
       This call is for use by TRAC components that need to reserve an ID before
       it is used, particularly if the object ID must be included in the definition
       of an object that has not been created yet. When creating an ID the tenant
       and object type must be specified, the object that is eventually saved must
       match these two conditions. Orphan IDs are expected - if a component request
       an ID and encounters an error before that ID is used, the orphan ID is just
       ignored.
       
    • createPreallocatedObject

      default void createPreallocatedObject(MetadataWriteRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.TagHeader> responseObserver)
      
       Create an object using an ID that was previously preallocated.
       This call behaves essentially the same as createObject(), with all the
       same validation. The only difference is that the new definition must be
       supplied with an object header, including the object ID returned from a
       prior call to preallocateId().
       Error conditions include all the error conditions for createObject().
       Using a preallocated ID twice, attempting to save to an unknown ID or the
       ID of another object that already exists are also errors.
       
    • writeBatch

      default void writeBatch(MetadataWriteBatchRequest request, io.grpc.stub.StreamObserver<MetadataWriteBatchResponse> responseObserver)
      
       Perform a batch of write operations on the TRAC metadata store.
       This call behaves similarly to the equivalent public API call. However,
       the createObject, updateObject and updateTag request types take their
       semantics from the trusted API instead of the public one. It is also
       possible to include preallocateId and createPreallocatedObject in the
       batch request.
       @see TracMetadataApi.writeBatch()
       
    • readObject

      default void readObject(MetadataReadRequest request, io.grpc.stub.StreamObserver<org.finos.tracdap.metadata.Tag> responseObserver)
      
       Read a single object from the TRAC metadata store using a tag selector.
       This call behaves identically to the equivalent public API call.
       @see TracMetadataApi.readObject()
       
    • readBatch

      default void readBatch(MetadataBatchRequest request, io.grpc.stub.StreamObserver<MetadataBatchResponse> responseObserver)
      
       Read multiple objects from the TRAC metadata store using tag selectors.
       This call behaves identically to the equivalent public API call.
       @see TracMetadataApi.readBatch()
       
    • search

      default void search(MetadataSearchRequest request, io.grpc.stub.StreamObserver<MetadataSearchResponse> responseObserver)
      
       Perform a search against the TRAC metadata store.
       This call behaves identically to the equivalent public API call.
       @see TracMetadataApi.search()