Interface DaprPreviewClient

All Superinterfaces:
AutoCloseable
All Known Implementing Classes:
DaprClientImpl

public interface DaprPreviewClient extends AutoCloseable
Generic client interface for preview or alpha APIs in Dapr, regardless of GRPC or HTTP.
See Also:
  • Method Details

    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, String query, Map<String,String> metadata, Class<T> clazz)
      Query for states using a query string.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - String value of the query.
      metadata - Optional metadata passed to the state store.
      clazz - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, String query, Map<String,String> metadata, TypeRef<T> type)
      Query for states using a query string.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - String value of the query.
      metadata - Optional metadata passed to the state store.
      type - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, String query, Class<T> clazz)
      Query for states using a query string.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - String value of the query.
      clazz - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, String query, TypeRef<T> type)
      Query for states using a query string.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - String value of the query.
      type - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, Query query, Map<String,String> metadata, Class<T> clazz)
      Query for states using a query domain object.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - Query value domain object.
      metadata - Optional metadata passed to the state store.
      clazz - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, Query query, Map<String,String> metadata, TypeRef<T> type)
      Query for states using a query domain object.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - Query value domain object.
      metadata - Optional metadata passed to the state store.
      type - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, Query query, Class<T> clazz)
      Query for states using a query domain object.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - Query value domain object.
      clazz - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(String storeName, Query query, TypeRef<T> type)
      Query for states using a query domain object.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      storeName - Name of the state store to query.
      query - Query value domain object.
      type - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(QueryStateRequest request, Class<T> clazz)
      Query for states using a query request.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      request - Query request object.
      clazz - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • queryState

      <T> reactor.core.publisher.Mono<QueryStateResponse<T>> queryState(QueryStateRequest request, TypeRef<T> type)
      Query for states using a query request.
      Type Parameters:
      T - The Type of the return, use byte[] to skip serialization.
      Parameters:
      request - Query request object.
      type - The type needed as return for the call.
      Returns:
      A Mono of QueryStateResponse of type T.
    • publishEvents

      <T> reactor.core.publisher.Mono<BulkPublishResponse<T>> publishEvents(BulkPublishRequest<T> request)
      Publish multiple events to Dapr in a single request.
      Type Parameters:
      T - The type of events to publish in the call.
      Parameters:
      request - BulkPublishRequest object.
      Returns:
      A Mono of BulkPublishResponse object.
    • publishEvents

      <T> reactor.core.publisher.Mono<BulkPublishResponse<T>> publishEvents(String pubsubName, String topicName, String contentType, List<T> events)
      Publish multiple events to Dapr in a single request.
      Type Parameters:
      T - The type of the events to publish in the call.
      Parameters:
      pubsubName - the pubsub name we will publish the event to.
      topicName - the topicName where the event will be published.
      events - the List of events to be published.
      contentType - the content type of the event. Use Mime based types.
      Returns:
      the BulkPublishResponse containing publish status of each event. The "entryID" field in BulkPublishEntry in BulkPublishResponseFailedEntry will be generated based on the order of events in the List.
    • publishEvents

      <T> reactor.core.publisher.Mono<BulkPublishResponse<T>> publishEvents(String pubsubName, String topicName, String contentType, T... events)
      Publish multiple events to Dapr in a single request.
      Type Parameters:
      T - The type of the events to publish in the call.
      Parameters:
      pubsubName - the pubsub name we will publish the event to.
      topicName - the topicName where the event will be published.
      events - the varargs of events to be published.
      contentType - the content type of the event. Use Mime based types.
      Returns:
      the BulkPublishResponse containing publish status of each event. The "entryID" field in BulkPublishEntry in BulkPublishResponseFailedEntry will be generated based on the order of events in the List.
    • publishEvents

      <T> reactor.core.publisher.Mono<BulkPublishResponse<T>> publishEvents(String pubsubName, String topicName, String contentType, Map<String,String> requestMetadata, List<T> events)
      Publish multiple events to Dapr in a single request.
      Type Parameters:
      T - The type of the events to publish in the call.
      Parameters:
      pubsubName - the pubsub name we will publish the event to.
      topicName - the topicName where the event will be published.
      events - the List of events to be published.
      contentType - the content type of the event. Use Mime based types.
      requestMetadata - the metadata to be set at the request level for the BulkPublishRequest.
      Returns:
      the BulkPublishResponse containing publish status of each event. The "entryID" field in BulkPublishEntry in BulkPublishResponseFailedEntry will be generated based on the order of events in the List.
    • publishEvents

      <T> reactor.core.publisher.Mono<BulkPublishResponse<T>> publishEvents(String pubsubName, String topicName, String contentType, Map<String,String> requestMetadata, T... events)
      Publish multiple events to Dapr in a single request.
      Type Parameters:
      T - The type of the events to publish in the call.
      Parameters:
      pubsubName - the pubsub name we will publish the event to.
      topicName - the topicName where the event will be published.
      events - the varargs of events to be published.
      contentType - the content type of the event. Use Mime based types.
      requestMetadata - the metadata to be set at the request level for the BulkPublishRequest.
      Returns:
      the BulkPublishResponse containing publish status of each event. The "entryID" field in BulkPublishEntry in BulkPublishResponseFailedEntry will be generated based on the order of events in the List.
    • tryLock

      reactor.core.publisher.Mono<Boolean> tryLock(String storeName, String resourceId, String lockOwner, Integer expiryInSeconds)
      Tries to get a lock with an expiry.
      Parameters:
      storeName - Name of the store
      resourceId - Lock key
      lockOwner - The identifier of lock owner
      expiryInSeconds - The time before expiry
      Returns:
      Whether the lock is successful
    • tryLock

      reactor.core.publisher.Mono<Boolean> tryLock(LockRequest request)
      Tries to get a lock with an expiry.
      Parameters:
      request - The request to lock
      Returns:
      Whether the lock is successful
    • unlock

      reactor.core.publisher.Mono<UnlockResponseStatus> unlock(String storeName, String resourceId, String lockOwner)
      Unlocks a lock.
      Parameters:
      storeName - Name of the store
      resourceId - Lock key
      lockOwner - The identifier of lock owner
      Returns:
      Unlock result
    • unlock

      reactor.core.publisher.Mono<UnlockResponseStatus> unlock(UnlockRequest request)
      Unlocks a lock.
      Parameters:
      request - The request to unlock
      Returns:
      Unlock result