Packages

class AsyncCluster extends AnyRef

Represents a connection to a Couchbase cluster.

This is the asynchronous version of the Cluster API.

These can be created through the functions in the companion object, or through Cluster.async.

Since

1.0.0

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AsyncCluster
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new AsyncCluster(environment: => ClusterEnvironment, authenticator: Authenticator, seedNodes: Set[SeedNode])

    environment

    the environment used to create this

Value Members

  1. lazy val analyticsIndexes: AsyncAnalyticsIndexManager
    Annotations
    @Volatile()
  2. def analyticsQuery(statement: String, parameters: AnalyticsParameters = AnalyticsParameters.None, timeout: Duration = env.timeoutConfig.queryTimeout()): Future[AnalyticsResult]

    Performs an Analytics query against the cluster.

    Performs an Analytics query against the cluster.

    This is asynchronous. See Cluster.reactive for a reactive streaming version of this API, and Cluster for a blocking version.

    statement

    the Analytics query to execute

    parameters

    provides named or positional parameters for queries parameterised that way.

    timeout

    sets a maximum timeout for processing.

    returns

    a Future containing a Success(AnalyticsResult) (which includes any returned rows) if successful, else a Failure

  3. def analyticsQuery(statement: String, options: AnalyticsOptions): Future[AnalyticsResult]

    Performs an Analytics query against the cluster.

    Performs an Analytics query against the cluster.

    This is asynchronous. See Cluster.reactive for a reactive streaming version of this API, and Cluster for a blocking version.

    statement

    the Analytics query to execute

    options

    any query options - see com.couchbase.client.scala.analytics.AnalyticsOptions for documentation

    returns

    a Future containing a Success(AnalyticsResult) (which includes any returned rows) if successful, else a Failure

  4. def bucket(bucketName: String): AsyncBucket

    Opens and returns a Couchbase bucket resource that exists on this cluster.

    Opens and returns a Couchbase bucket resource that exists on this cluster.

    bucketName

    the name of the bucket to open

  5. lazy val buckets: AsyncBucketManager

    The AsyncBucketManager provides access to creating and getting buckets.

    The AsyncBucketManager provides access to creating and getting buckets.

    Annotations
    @Volatile()
  6. def diagnostics(options: DiagnosticsOptions): Future[DiagnosticsResult]

    Returns a DiagnosticsResult, reflecting the SDK's current view of all its existing connections to the cluster.

    Returns a DiagnosticsResult, reflecting the SDK's current view of all its existing connections to the cluster.

    options

    options to customize the report generation

    returns

    a DiagnosticsResult

  7. def diagnostics(reportId: String = UUID.randomUUID.toString): Future[DiagnosticsResult]

    Returns a DiagnosticsResult, reflecting the SDK's current view of all its existing connections to the cluster.

    Returns a DiagnosticsResult, reflecting the SDK's current view of all its existing connections to the cluster.

    reportId

    this will be returned in the DiagnosticsResult. If not specified it defaults to a UUID.

    returns

    a DiagnosticsResult

  8. def disconnect(timeout: Duration = env.timeoutConfig.disconnectTimeout()): Future[Unit]

    Shutdown all cluster resources.

    Shutdown all cluster resources.

    This should be called before application exit.

    timeout

    how long the disconnect is allowed to take; defaults to disconnectTimeout on the environment

  9. val env: ClusterEnvironment

    The environment used to create this cluster

  10. def ping(options: PingOptions): Future[PingResult]

    Performs application-level ping requests with custom options against services in the Couchbase cluster.

    Performs application-level ping requests with custom options against services in the Couchbase cluster.

    Note that this operation performs active I/O against services and endpoints to assess their health. If you do not wish to perform I/O, consider using .diagnostics() instead.

    options

    options to customize the ping

    returns

    the PingResult once complete.

  11. def ping(timeout: Option[Duration] = None): Future[PingResult]

    Performs application-level ping requests with custom options against services in the Couchbase cluster.

    Performs application-level ping requests with custom options against services in the Couchbase cluster.

    Note that this operation performs active I/O against services and endpoints to assess their health. If you do not wish to perform I/O, consider using .diagnostics() instead.

    This overload provides only the most commonly used options. If you need to configure something more esoteric, use the overload that takes a com.couchbase.client.scala.diagnostics.PingOptions instead, which supports all available options.

    timeout

    the timeout to use for the operation

    returns

    the PingResult once complete.

  12. def query(statement: String, parameters: QueryParameters = QueryParameters.None, timeout: Duration = env.timeoutConfig.queryTimeout(), adhoc: Boolean = true): Future[QueryResult]

    Performs a N1QL query against the cluster.

    Performs a N1QL query against the cluster.

    This is asynchronous. See Cluster.reactive for a reactive streaming version of this API, and Cluster for a blocking version.

    This overload provides only the most commonly used options. If you need to configure something more esoteric, use the overload that takes a com.couchbase.client.scala.query.QueryOptions instead, which supports all available options.

    statement

    the N1QL statement to execute

    parameters

    provides named or positional parameters for queries parameterised that way.

    timeout

    sets a maximum timeout for processing.

    adhoc

    if true (the default), adhoc mode is enabled: queries are just run. If false, adhoc mode is disabled and transparent prepared statement mode is enabled: queries are first prepared so they can be executed more efficiently in the future.

    returns

    a Future containing a Success(QueryResult) (which includes any returned rows) if successful, else a Failure

  13. def query(statement: String, options: QueryOptions): Future[QueryResult]

    Performs a N1QL query against the cluster.

    Performs a N1QL query against the cluster.

    This is asynchronous. See Cluster.reactive for a reactive streaming version of this API, and Cluster for a blocking version.

    statement

    the N1QL statement to execute

    options

    any query options - see com.couchbase.client.scala.query.QueryOptions for documentation

    returns

    a Future containing a Success(QueryResult) (which includes any returned rows) if successful, else a Failure

  14. lazy val queryIndexes: AsyncQueryIndexManager
    Annotations
    @Volatile()
  15. lazy val searchIndexes: AsyncSearchIndexManager
    Annotations
    @Volatile()
  16. def searchQuery(indexName: String, query: SearchQuery, timeout: Duration = environment.timeoutConfig.searchTimeout()): Future[SearchResult]

    Performs a Full Text Search (FTS) query against the cluster.

    Performs a Full Text Search (FTS) query against the cluster.

    This is asynchronous. See Cluster.reactive for a reactive streaming version of this API, and Cluster for a blocking version.

    This overload provides only the most commonly used options. If you need to configure something more esoteric, use the overload that takes a com.couchbase.client.scala.search.SearchOptions instead, which supports all available options.

    indexName

    the name of the search index to use

    query

    the FTS query to execute. See com.couchbase.client.scala.search.queries.SearchQuery for more

    timeout

    how long the operation is allowed to take

    returns

    a Future containing a Success(SearchResult) (which includes any returned rows) if successful, else a Failure

  17. def searchQuery(indexName: String, query: SearchQuery, options: SearchOptions): Future[SearchResult]

    Performs a Full Text Search (FTS) query against the cluster.

    Performs a Full Text Search (FTS) query against the cluster.

    This is asynchronous. See Cluster.reactive for a reactive streaming version of this API, and Cluster for a blocking version.

    indexName

    the name of the search index to use

    query

    the FTS query to execute. See com.couchbase.client.scala.search.queries.SearchQuery for more

    options

    the FTS query to execute. See com.couchbase.client.scala.search.SearchOptions for how to construct

    returns

    a Future containing a Success(SearchResult) (which includes any returned rows) if successful, else a Failure

  18. lazy val users: AsyncUserManager

    The AsyncUserManager provides programmatic access to and creation of users and groups.

    The AsyncUserManager provides programmatic access to and creation of users and groups.

    Annotations
    @Volatile()
  19. def waitUntilReady(timeout: Duration, options: WaitUntilReadyOptions): Future[Unit]

    Waits until the desired ClusterState is reached.

    Waits until the desired ClusterState is reached.

    This method will wait until either the cluster state is "online", or the timeout is reached. Since the SDK is bootstrapping lazily, this method allows to eagerly check during bootstrap if all of the services are online and usable before moving on.

    timeout

    the maximum time to wait until readiness.

    options

    options to customize the wait

  20. def waitUntilReady(timeout: Duration): Future[Unit]

    Waits until the desired ClusterState is reached.

    Waits until the desired ClusterState is reached.

    This method will wait until either the cluster state is "online", or the timeout is reached. Since the SDK is bootstrapping lazily, this method allows to eagerly check during bootstrap if all of the services are online and usable before moving on.

    This overload provides only the most commonly used options. If you need to configure something more esoteric, use the overload that takes a com.couchbase.client.scala.diagnostics.WaitUntilReadyOptions instead, which supports all available options.

    timeout

    the maximum time to wait until readiness.