Class BaseResources<T>

java.lang.Object
org.apache.pulsar.broker.resources.BaseResources<T>
Type Parameters:
T - type of configuration-resources.
Direct Known Subclasses:
BookieResources, BrokerResources, ClusterResources, ClusterResources.FailureDomainResources, DynamicConfigurationResources, LoadManagerReportResources, LocalPoliciesResources, NamespaceResources, NamespaceResources.IsolationPolicyResources, NamespaceResources.PartitionedTopicResources, ResourceGroupResources, TenantResources

public class BaseResources<T> extends Object
Base class for all configuration resources to access configurations from metadata-store.
  • Field Details

  • Constructor Details

    • BaseResources

      public BaseResources(org.apache.pulsar.metadata.api.MetadataStore store, Class<T> clazz, int operationTimeoutSec)
    • BaseResources

      public BaseResources(org.apache.pulsar.metadata.api.MetadataStore store, com.fasterxml.jackson.core.type.TypeReference<T> typeRef, int operationTimeoutSec)
  • Method Details

    • getChildren

      protected List<String> getChildren(String path) throws org.apache.pulsar.metadata.api.MetadataStoreException
      Throws:
      org.apache.pulsar.metadata.api.MetadataStoreException
    • getChildrenAsync

      protected CompletableFuture<List<String>> getChildrenAsync(String path)
    • get

      protected Optional<T> get(String path) throws org.apache.pulsar.metadata.api.MetadataStoreException
      Throws:
      org.apache.pulsar.metadata.api.MetadataStoreException
    • getAsync

      protected CompletableFuture<Optional<T>> getAsync(String path)
    • refreshAndGetAsync

      protected CompletableFuture<Optional<T>> refreshAndGetAsync(String path)
    • set

      protected void set(String path, Function<T,T> modifyFunction) throws org.apache.pulsar.metadata.api.MetadataStoreException
      Throws:
      org.apache.pulsar.metadata.api.MetadataStoreException
    • setAsync

      protected CompletableFuture<Void> setAsync(String path, Function<T,T> modifyFunction)
    • setWithCreate

      protected void setWithCreate(String path, Function<Optional<T>,T> createFunction) throws org.apache.pulsar.metadata.api.MetadataStoreException
      Throws:
      org.apache.pulsar.metadata.api.MetadataStoreException
    • setWithCreateAsync

      protected CompletableFuture<Void> setWithCreateAsync(String path, Function<Optional<T>,T> createFunction)
    • create

      protected void create(String path, T data) throws org.apache.pulsar.metadata.api.MetadataStoreException
      Throws:
      org.apache.pulsar.metadata.api.MetadataStoreException
    • createAsync

      protected CompletableFuture<Void> createAsync(String path, T data)
    • delete

      protected void delete(String path) throws org.apache.pulsar.metadata.api.MetadataStoreException
      Throws:
      org.apache.pulsar.metadata.api.MetadataStoreException
    • deleteAsync

      protected CompletableFuture<Void> deleteAsync(String path)
    • deleteIfExistsAsync

      protected CompletableFuture<Void> deleteIfExistsAsync(String path)
    • exists

      protected boolean exists(String path) throws org.apache.pulsar.metadata.api.MetadataStoreException
      Throws:
      org.apache.pulsar.metadata.api.MetadataStoreException
    • existsAsync

      protected CompletableFuture<Boolean> existsAsync(String path)
    • getOperationTimeoutSec

      public int getOperationTimeoutSec()
    • joinPath

      protected static String joinPath(String... parts)