Class DefaultClusterManager

java.lang.Object
com.couchbase.client.java.cluster.DefaultClusterManager
All Implemented Interfaces:
ClusterManager

public class DefaultClusterManager
extends Object
implements ClusterManager
  • Constructor Details

  • Method Details

    • create

      @Deprecated public static DefaultClusterManager create​(String username, String password, ConnectionString connectionString, CouchbaseEnvironment environment, ClusterFacade core)
      Deprecated.
    • create

      public static DefaultClusterManager create​(String username, String password, List<ConnectionString.UnresolvedSocket> seedNodes, CouchbaseEnvironment environment, ClusterFacade core)
    • async

      public AsyncClusterManager async()
      Description copied from interface: ClusterManager
      Accesses the underlying AsyncClusterManager to perform asynchronous operations on the cluster.
      Specified by:
      async in interface ClusterManager
      Returns:
      the underlying AsyncClusterManager.
    • info

      public ClusterInfo info()
      Description copied from interface: ClusterManager
      Provides information about the cluster with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      info in interface ClusterManager
      Returns:
      cluster information wrapped into a ClusterInfo object.
    • info

      public ClusterInfo info​(long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Provides information about the cluster with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      info in interface ClusterManager
      Parameters:
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      cluster information wrapped into a ClusterInfo object.
    • getBuckets

      public List<BucketSettings> getBuckets()
      Description copied from interface: ClusterManager
      Returns a list of BucketSettings for all available Buckets with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getBuckets in interface ClusterManager
      Returns:
      a potentially empty list with BucketSettings.
    • getBuckets

      public List<BucketSettings> getBuckets​(long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Returns a list of BucketSettings for all available Buckets with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getBuckets in interface ClusterManager
      Parameters:
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      a potentially empty list with BucketSettings.
    • getBucket

      public BucketSettings getBucket​(String name)
      Description copied from interface: ClusterManager
      Returns the BucketSettings for the Bucket identified by name with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getBucket in interface ClusterManager
      Parameters:
      name - the name of the bucket.
      Returns:
      the BucketSettings if found or null.
    • getBucket

      public BucketSettings getBucket​(String name, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Returns the BucketSettings for the Bucket identified by name with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getBucket in interface ClusterManager
      Parameters:
      name - the name of the bucket.
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      the BucketSettings if found or null.
    • hasBucket

      public Boolean hasBucket​(String name)
      Description copied from interface: ClusterManager
      Checks if the cluster has a Bucket identified by the given name with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      hasBucket in interface ClusterManager
      Parameters:
      name - the name of the bucket.
      Returns:
      true if it was found, false otherwise.
    • hasBucket

      public Boolean hasBucket​(String name, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Checks if the cluster has a Bucket identified by the given name with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      hasBucket in interface ClusterManager
      Parameters:
      name - the name of the bucket.
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      true if it was found, false otherwise.
    • insertBucket

      public BucketSettings insertBucket​(BucketSettings settings)
      Description copied from interface: ClusterManager
      Inserts a Bucket with its BucketSettings if it does not already exist with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded. - com.couchbase.client.java.error.BucketAlreadyExistsException: If the bucket already exists. **Note:** Inserting a Bucket is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      insertBucket in interface ClusterManager
      Parameters:
      settings - the bucket settings that should be applied.
      Returns:
      the stored bucket settings if succeeded.
    • insertBucket

      public BucketSettings insertBucket​(BucketSettings settings, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Inserts a Bucket with its BucketSettings if it does not already exist with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded. - com.couchbase.client.java.error.BucketAlreadyExistsException: If the bucket already exists. **Note:** Inserting a Bucket is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      insertBucket in interface ClusterManager
      Parameters:
      settings - the bucket settings that should be applied.
      Returns:
      the stored bucket settings if succeeded.
    • updateBucket

      public BucketSettings updateBucket​(BucketSettings settings)
      Description copied from interface: ClusterManager
      Updates a Bucket with its BucketSettings if it does already exist with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded. - com.couchbase.client.java.error.BucketDoesNotExistException: If the bucket does not exist. **Note:** Updating a Bucket is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      updateBucket in interface ClusterManager
      Parameters:
      settings - the bucket settings that should be applied.
      Returns:
      the updated bucket settings if succeeded.
    • updateBucket

      public BucketSettings updateBucket​(BucketSettings settings, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Updates a Bucket with its BucketSettings if it does already exist with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded. - com.couchbase.client.java.error.BucketDoesNotExistException: If the bucket does not exist. **Note:** Updating a Bucket is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      updateBucket in interface ClusterManager
      Parameters:
      settings - the bucket settings that should be applied.
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      the updated bucket settings if succeeded.
    • removeBucket

      public Boolean removeBucket​(String name)
      Description copied from interface: ClusterManager
      Removes a Bucket identified by its name with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded. **Note:** Removing a Bucket is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      removeBucket in interface ClusterManager
      Parameters:
      name - the name of the bucket.
      Returns:
      true if the removal was successful, false otherwise.
    • removeBucket

      public Boolean removeBucket​(String name, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Removes a Bucket identified by its name with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded. **Note:** Removing a Bucket is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      removeBucket in interface ClusterManager
      Parameters:
      name - the name of the bucket.
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      true if the removal was successful, false otherwise.
    • upsertUser

      public Boolean upsertUser​(AuthDomain domain, String username, UserSettings settings)
      Description copied from interface: ClusterManager
      Creates/Updates a user with its UserSettings with default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. **Note:** Updating a user is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      upsertUser in interface ClusterManager
      Parameters:
      domain - the authentication to use, most likely AuthDomain.LOCAL
      username - the user name of the user to be updated
      settings - the user settings that should be applied.
      Returns:
      true if succeeded.
    • upsertUser

      public Boolean upsertUser​(AuthDomain domain, String username, UserSettings settings, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Creates/Updates a user with its UserSettings with custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. **Note:** Updating a user is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      upsertUser in interface ClusterManager
      Parameters:
      domain - the authentication to use, most likely AuthDomain.LOCAL
      username - the user name of the user to be updated.
      settings - the user settings that should be applied.
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      true if succeeded.
    • removeUser

      public Boolean removeUser​(AuthDomain domain, String username)
      Description copied from interface: ClusterManager
      Removes a user identified by user name with the default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. **Note:** Removing a user is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      removeUser in interface ClusterManager
      Parameters:
      domain - the authentication to use, most likely AuthDomain.LOCAL
      username - the user name of the user to be deleted.
      Returns:
      true if the removal was successful, false otherwise.
    • removeUser

      public Boolean removeUser​(AuthDomain domain, String username, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Removes a user identified by user name with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. **Note:** Removing a user is an asynchronous operation on the server side, so even if the response is returned there is no guarantee that the operation has finished on the server itself.
      Specified by:
      removeUser in interface ClusterManager
      Parameters:
      domain - the authentication to use, most likely AuthDomain.LOCAL
      username - the user name of the user to be deleted.
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      true if the removal was successful, false otherwise.
    • getUsers

      public List<User> getUsers​(AuthDomain domain)
      Description copied from interface: ClusterManager
      Get all users in Couchbase with default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getUsers in interface ClusterManager
      Returns:
      users the list of users.
    • getUsers

      public List<User> getUsers​(AuthDomain domain, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Get all users in Couchbase with a custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getUsers in interface ClusterManager
      Parameters:
      domain - the authentication to use, most likely AuthDomain.LOCAL
      timeout - the custom timeout.
      timeUnit - the time unit for the custom timeout.
      Returns:
      users the list of users.
    • getUser

      public User getUser​(AuthDomain domain, String userid)
      Description copied from interface: ClusterManager
      Get user info in Couchbase with default management timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getUser in interface ClusterManager
      Returns:
      user info
    • getUser

      public User getUser​(AuthDomain domain, String userid, long timeout, TimeUnit timeUnit)
      Description copied from interface: ClusterManager
      Get user info in Couchbase with custom timeout. This method throws: - java.util.concurrent.TimeoutException: If the timeout is exceeded. - com.couchbase.client.core.CouchbaseException: If the underlying resources could not be enabled properly. - com.couchbase.client.java.error.TranscodingException: If the server response could not be decoded.
      Specified by:
      getUser in interface ClusterManager
      Returns:
      user info
    • apiClient

      @Experimental public ClusterApiClient apiClient()
      Description copied from interface: ClusterManager
      Returns a new ClusterApiClient to prepare and perform REST API synchronous requests on this cluster. The requests have a default timeout corresponding to the configured CouchbaseEnvironment.managementTimeout().
      Specified by:
      apiClient in interface ClusterManager
      Returns:
      a new ClusterApiClient.