Class AbstractBucketConfig
- java.lang.Object
-
- com.couchbase.client.core.config.AbstractBucketConfig
-
- All Implemented Interfaces:
BucketConfig
- Direct Known Subclasses:
CouchbaseBucketConfig,MemcachedBucketConfig
public abstract class AbstractBucketConfig extends Object implements BucketConfig
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractBucketConfig(String uuid, String name, BucketNodeLocator locator, String uri, String streamingUri, List<NodeInfo> nodeInfos, List<PortInfo> portInfos, List<BucketCapabilities> bucketCapabilities, String origin, Map<String,Set<ClusterCapabilities>> clusterCapabilities, long rev, long revEpoch)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Set<BucketCapabilities>bucketCapabilities()Returns all the capabilities that are enabled and recognized on this bucket.Map<ServiceType,Set<ClusterCapabilities>>clusterCapabilities()Returns the cluster capabilities reported by the server.BucketNodeLocatorlocator()The type of node locator in use for this bucket.Stringname()The name of the bucket.List<NodeInfo>nodes()The list of nodes associated with this bucket.List<PortInfo>portInfos()Returns the port information from the "nodesExt" section.longrev()Revision number (optional) for that configuration.longrevEpoch()This field serves to enable the server to provide higher-level guidance with regards to configuration priority.booleanserviceEnabled(ServiceType type)Check if the service is enabled on the bucket.StringstreamingUri()The HTTP Streaming URI for this bucket.Stringuri()The HTTP Uri for this bucket configuration.Stringuuid()Returns the UUID of the bucket, ornullif the bucket does not have a UUID.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.couchbase.client.core.config.BucketConfig
hasFastForwardMap, tainted, type
-
-
-
-
Constructor Detail
-
AbstractBucketConfig
protected AbstractBucketConfig(String uuid, String name, BucketNodeLocator locator, String uri, String streamingUri, List<NodeInfo> nodeInfos, List<PortInfo> portInfos, List<BucketCapabilities> bucketCapabilities, String origin, Map<String,Set<ClusterCapabilities>> clusterCapabilities, long rev, long revEpoch)
-
-
Method Detail
-
uuid
public String uuid()
Description copied from interface:BucketConfigReturns the UUID of the bucket, ornullif the bucket does not have a UUID.The UUID is an opaque value assigned when the bucket is created. If the bucket is deleted and a new bucket is created with the same name, the new bucket will have a different UUID.
- Specified by:
uuidin interfaceBucketConfig- Returns:
- bucket UUID, or
null.
-
name
public String name()
Description copied from interface:BucketConfigThe name of the bucket.- Specified by:
namein interfaceBucketConfig- Returns:
- name of the bucket.
-
locator
public BucketNodeLocator locator()
Description copied from interface:BucketConfigThe type of node locator in use for this bucket.- Specified by:
locatorin interfaceBucketConfig- Returns:
- the node locator type.
-
uri
public String uri()
Description copied from interface:BucketConfigThe HTTP Uri for this bucket configuration.- Specified by:
uriin interfaceBucketConfig- Returns:
- the uri.
-
streamingUri
public String streamingUri()
Description copied from interface:BucketConfigThe HTTP Streaming URI for this bucket.- Specified by:
streamingUriin interfaceBucketConfig- Returns:
- the streaming uri.
-
nodes
public List<NodeInfo> nodes()
Description copied from interface:BucketConfigThe list of nodes associated with this bucket.- Specified by:
nodesin interfaceBucketConfig- Returns:
- the list of nodes.
-
rev
public long rev()
Description copied from interface:BucketConfigRevision number (optional) for that configuration.- Specified by:
revin interfaceBucketConfig- Returns:
- the rev number, might be 0.
-
revEpoch
public long revEpoch()
Description copied from interface:BucketConfigThis field serves to enable the server to provide higher-level guidance with regards to configuration priority.This will be used during manual failovers to ensure that even if the minority side of the cluster is being selected, that consumers can keep the correct configurations.
If revEpoch is not included in the config, it is set to 0 (it starts with 1 on configs that have it).
- Specified by:
revEpochin interfaceBucketConfig
-
serviceEnabled
public boolean serviceEnabled(ServiceType type)
Description copied from interface:BucketConfigCheck if the service is enabled on the bucket.- Specified by:
serviceEnabledin interfaceBucketConfig- Parameters:
type- the type to check.- Returns:
- true if it is, false otherwise.
-
clusterCapabilities
public Map<ServiceType,Set<ClusterCapabilities>> clusterCapabilities()
Description copied from interface:BucketConfigReturns the cluster capabilities reported by the server.- Specified by:
clusterCapabilitiesin interfaceBucketConfig
-
bucketCapabilities
public Set<BucketCapabilities> bucketCapabilities()
Description copied from interface:BucketConfigReturns all the capabilities that are enabled and recognized on this bucket.- Specified by:
bucketCapabilitiesin interfaceBucketConfig
-
portInfos
public List<PortInfo> portInfos()
Description copied from interface:BucketConfigReturns the port information from the "nodesExt" section.NOTE: If you are unsure if you want to use this api, very likely you want to use
BucketConfig.nodes()instead!The nodes API is very similar to this port infos (in fact, they are built from each other), but there is one big difference: when the KV and VIEW service are defined on a bucket but not yet ready, the nodes API will NOT include them in the services list, while this API will. Most of the time you do not want to consume a service until it is ready, but for some functionality (like waitUntilReady) it can be needed to "look ahead" what will become active and wait for it.
- Specified by:
portInfosin interfaceBucketConfig- Returns:
- the port infos.
-
-