com.holonplatform.datastore.mongo.core.async.internal

## Class AbstractAsyncMongoDatastore.AsyncBuilder<TX extends MongoTransaction<com.mongodb.reactivestreams.client.ClientSession>,I extends AbstractAsyncMongoDatastore<TX>,D extends com.holonplatform.core.datastore.DatastoreOperations,B extends BaseAsyncMongoDatastore.Builder<D,TX,B>>

- java.lang.Object
- - com.holonplatform.datastore.mongo.core.internal.datastore.AbstractMongoDatastore.AbstractBuilder<com.mongodb.reactivestreams.client.MongoDatabase,AsyncMongoDatastoreCommodityContext,com.mongodb.reactivestreams.client.ClientSession,TX,I,D,B>
  - - com.holonplatform.datastore.mongo.core.async.internal.AbstractAsyncMongoDatastore.AsyncBuilder<TX,I,D,B>

- All Implemented Interfaces:
    com.holonplatform.core.datastore.DatastoreOperations.Builder<D,B>, com.holonplatform.core.ExpressionResolver.ExpressionResolverBuilder<B>, BaseAsyncMongoDatastore.Builder<D,TX,B>, MongoDatastoreBuilder<D,com.mongodb.reactivestreams.client.ClientSession,TX,B>
  Direct Known Subclasses:
    DefaultAsyncMongoDatastore.DefaultBuilder, DefaultReactiveMongoDatastore.DefaultBuilder
  Enclosing class:
    AbstractAsyncMongoDatastore<TX extends MongoTransaction<com.mongodb.reactivestreams.client.ClientSession>>

      public abstract static class AbstractAsyncMongoDatastore.AsyncBuilder<TX extends MongoTransaction<com.mongodb.reactivestreams.client.ClientSession>,I extends AbstractAsyncMongoDatastore<TX>,D extends com.holonplatform.core.datastore.DatastoreOperations,B extends BaseAsyncMongoDatastore.Builder<D,TX,B>>
      extends com.holonplatform.datastore.mongo.core.internal.datastore.AbstractMongoDatastore.AbstractBuilder<com.mongodb.reactivestreams.client.MongoDatabase,AsyncMongoDatastoreCommodityContext,com.mongodb.reactivestreams.client.ClientSession,TX,I,D,B>
      implements BaseAsyncMongoDatastore.Builder<D,TX,B>

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `AsyncBuilder(I datastore)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `B` | `client(com.mongodb.reactivestreams.client.MongoClient client)` Set the `MongoClient` to use.
    `<C extends com.holonplatform.core.datastore.DatastoreCommodity> B` | `withCommodity(AsyncMongoDatastoreCommodityFactory<C> commodityFactory)` Register a `AsyncMongoDatastoreCommodityFactory`.

    - ### Methods inherited from class com.holonplatform.datastore.mongo.core.internal.datastore.AbstractMongoDatastore.AbstractBuilder

      `configuration, database, dataContextId, enumCodecStrategy, readConcern, readPreference, traceEnabled, transactionFactory, withCodec, withCodecProvider, withExpressionResolver, writeConcern`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface com.holonplatform.datastore.mongo.core.MongoDatastoreBuilder

      `database, enumCodecStrategy, readConcern, readPreference, transactionFactory, withCodec, withCodecProvider, writeConcern`

    - ### Methods inherited from interface com.holonplatform.core.datastore.DatastoreOperations.Builder

      `build, configuration, dataContextId, traceEnabled`

    - ### Methods inherited from interface com.holonplatform.core.ExpressionResolver.ExpressionResolverBuilder

      `withExpressionResolver`

- - ### Constructor Detail

    - #### AsyncBuilder

          public AsyncBuilder(I datastore)

  - ### Method Detail

    - #### client

          public B client(com.mongodb.reactivestreams.client.MongoClient client)

      Description copied from interface: `BaseAsyncMongoDatastore.Builder`
      Set the `MongoClient` to use.
      Specified by:
        `client` in interface `BaseAsyncMongoDatastore.Builder<D extends com.holonplatform.core.datastore.DatastoreOperations,TX extends MongoTransaction<com.mongodb.reactivestreams.client.ClientSession>,B extends BaseAsyncMongoDatastore.Builder<D,TX,B>>`
      Parameters:
        `client` - MongoClient to set (not null)
      Returns:
        this

    - #### withCommodity

          public <C extends com.holonplatform.core.datastore.DatastoreCommodity> B withCommodity(AsyncMongoDatastoreCommodityFactory<C> commodityFactory)

      Description copied from interface: `BaseAsyncMongoDatastore.Builder`
      Register a `AsyncMongoDatastoreCommodityFactory`.
      Specified by:
        `withCommodity` in interface `BaseAsyncMongoDatastore.Builder<D extends com.holonplatform.core.datastore.DatastoreOperations,TX extends MongoTransaction<com.mongodb.reactivestreams.client.ClientSession>,B extends BaseAsyncMongoDatastore.Builder<D,TX,B>>`
      Type Parameters:
        `C` - Commodity type
      Parameters:
        `commodityFactory` - The factory to register (not null)
      Returns:
        this

Copyright © 2019 The Holon Platform. All rights reserved.