Interface ClusterManager
- All Known Implementing Classes:
DefaultClusterManager
@Committed @Public public interface ClusterManager
Provides management capabilities for a Couchbase Server
Cluster.
The underlying asynchronous capabilities can be leveraged through the async() method.- Since:
- 2.0
- Author:
- Michael Nitschinger
-
Method Summary
Modifier and Type Method Description ClusterApiClientapiClient()Returns a newClusterApiClientto prepare and perform REST API synchronous requests on this cluster.AsyncClusterManagerasync()Accesses the underlyingAsyncClusterManagerto perform asynchronous operations on the cluster.BucketSettingsgetBucket(String name)Returns theBucketSettingsfor theBucketidentified by name with the default management timeout.BucketSettingsgetBucket(String name, long timeout, TimeUnit timeUnit)Returns theBucketSettingsfor theBucketidentified by name with a custom timeout.List<BucketSettings>getBuckets()Returns a list ofBucketSettingsfor all availableBuckets with the default management timeout.List<BucketSettings>getBuckets(long timeout, TimeUnit timeUnit)Returns a list ofBucketSettingsfor all availableBuckets with a custom timeout.UsergetUser(AuthDomain domain, String userid)Get user info in Couchbase with default management timeout.UsergetUser(AuthDomain domain, String userid, long timeout, TimeUnit timeUnit)Get user info in Couchbase with custom timeout.List<User>getUsers(AuthDomain domain)Get all users in Couchbase with default management timeout.List<User>getUsers(AuthDomain domain, long timeout, TimeUnit timeUnit)Get all users in Couchbase with a custom timeout.BooleanhasBucket(String name)Checks if the cluster has aBucketidentified by the given name with the default management timeout.BooleanhasBucket(String name, long timeout, TimeUnit timeUnit)Checks if the cluster has aBucketidentified by the given name with a custom timeout.ClusterInfoinfo()Provides information about the cluster with the default management timeout.ClusterInfoinfo(long timeout, TimeUnit timeUnit)Provides information about the cluster with a custom timeout.BucketSettingsinsertBucket(BucketSettings settings)Inserts aBucketwith itsBucketSettingsif it does not already exist with the default management timeout.BucketSettingsinsertBucket(BucketSettings settings, long timeout, TimeUnit timeUnit)Inserts aBucketwith itsBucketSettingsif it does not already exist with a custom timeout.BooleanremoveBucket(String name)Removes aBucketidentified by its name with the default management timeout.BooleanremoveBucket(String name, long timeout, TimeUnit timeUnit)Removes aBucketidentified by its name with a custom timeout.BooleanremoveUser(AuthDomain domain, String username)Removes a user identified by user name with the default management timeout.BooleanremoveUser(AuthDomain domain, String username, long timeout, TimeUnit timeUnit)Removes a user identified by user name with a custom timeout.BucketSettingsupdateBucket(BucketSettings settings)Updates aBucketwith itsBucketSettingsif it does already exist with the default management timeout.BucketSettingsupdateBucket(BucketSettings settings, long timeout, TimeUnit timeUnit)Updates aBucketwith itsBucketSettingsif it does already exist with a custom timeout.BooleanupsertUser(AuthDomain domain, String username, UserSettings settings)Creates/Updates a user with itsUserSettingswith default management timeout.BooleanupsertUser(AuthDomain domain, String username, UserSettings settings, long timeout, TimeUnit timeUnit)Creates/Updates a user with itsUserSettingswith custom timeout.
-
Method Details
-
async
AsyncClusterManager async()Accesses the underlyingAsyncClusterManagerto perform asynchronous operations on the cluster.- Returns:
- the underlying
AsyncClusterManager.
-
info
ClusterInfo info()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.- Returns:
- cluster information wrapped into a
ClusterInfoobject.
-
info
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.- Parameters:
timeout- the custom timeout.timeUnit- the time unit for the custom timeout.- Returns:
- cluster information wrapped into a
ClusterInfoobject.
-
getBuckets
List<BucketSettings> getBuckets()Returns a list ofBucketSettingsfor all availableBuckets 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.- Returns:
- a potentially empty list with
BucketSettings.
-
getBuckets
Returns a list ofBucketSettingsfor all availableBuckets 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.- Parameters:
timeout- the custom timeout.timeUnit- the time unit for the custom timeout.- Returns:
- a potentially empty list with
BucketSettings.
-
getBucket
Returns theBucketSettingsfor theBucketidentified 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.- Parameters:
name- the name of the bucket.- Returns:
- the
BucketSettingsif found or null.
-
getBucket
Returns theBucketSettingsfor theBucketidentified 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.- Parameters:
name- the name of the bucket.timeout- the custom timeout.timeUnit- the time unit for the custom timeout.- Returns:
- the
BucketSettingsif found or null.
-
hasBucket
Checks if the cluster has aBucketidentified 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.- Parameters:
name- the name of the bucket.- Returns:
- true if it was found, false otherwise.
-
hasBucket
Checks if the cluster has aBucketidentified 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.- 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
Inserts aBucketwith itsBucketSettingsif 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.- Parameters:
settings- the bucket settings that should be applied.- Returns:
- the stored bucket settings if succeeded.
-
insertBucket
Inserts aBucketwith itsBucketSettingsif 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.- Parameters:
settings- the bucket settings that should be applied.- Returns:
- the stored bucket settings if succeeded.
-
updateBucket
Updates aBucketwith itsBucketSettingsif 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.- Parameters:
settings- the bucket settings that should be applied.- Returns:
- the updated bucket settings if succeeded.
-
updateBucket
Updates aBucketwith itsBucketSettingsif 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.- 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
Removes aBucketidentified 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.- Parameters:
name- the name of the bucket.- Returns:
- true if the removal was successful, false otherwise.
-
removeBucket
Removes aBucketidentified 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.- 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
Creates/Updates a user with itsUserSettingswith 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.- Parameters:
domain- the authentication to use, most likelyAuthDomain.LOCALusername- the user name of the user to be updatedsettings- the user settings that should be applied.- Returns:
- true if succeeded.
-
upsertUser
@Experimental Boolean upsertUser(AuthDomain domain, String username, UserSettings settings, long timeout, TimeUnit timeUnit)Creates/Updates a user with itsUserSettingswith 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.- Parameters:
domain- the authentication to use, most likelyAuthDomain.LOCALusername- 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
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.- Parameters:
domain- the authentication to use, most likelyAuthDomain.LOCALusername- the user name of the user to be deleted.- Returns:
- true if the removal was successful, false otherwise.
-
removeUser
@Experimental Boolean removeUser(AuthDomain domain, String username, long timeout, TimeUnit timeUnit)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.- Parameters:
domain- the authentication to use, most likelyAuthDomain.LOCALusername- 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
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.- Returns:
- users the list of users.
-
getUsers
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.- Parameters:
domain- the authentication to use, most likelyAuthDomain.LOCALtimeout- the custom timeout.timeUnit- the time unit for the custom timeout.- Returns:
- users the list of users.
-
getUser
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.- Returns:
- user info
-
getUser
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.- Returns:
- user info
-
apiClient
Returns a newClusterApiClientto prepare and perform REST API synchronous requests on this cluster. The requests have a default timeout corresponding to the configuredCouchbaseEnvironment.managementTimeout().- Returns:
- a new
ClusterApiClient.
-