Class LedgerCreateOp.CreateBuilderImpl

java.lang.Object
org.apache.bookkeeper.client.LedgerCreateOp.CreateBuilderImpl
All Implemented Interfaces:
CreateBuilder, OpBuilder<WriteHandle>
Enclosing class:
LedgerCreateOp

public static class LedgerCreateOp.CreateBuilderImpl extends Object implements CreateBuilder
  • Constructor Details

    • CreateBuilderImpl

      CreateBuilderImpl(BookKeeper bk)
  • Method Details

    • withEnsembleSize

      public CreateBuilder withEnsembleSize(int ensembleSize)
      Description copied from interface: CreateBuilder
      Set the number of bookies which will receive data for this ledger. It defaults to 3.
      Specified by:
      withEnsembleSize in interface CreateBuilder
      Parameters:
      ensembleSize - the number of bookies
      Returns:
      the builder itself
    • withWriteFlags

      public CreateBuilder withWriteFlags(EnumSet<WriteFlag> writeFlags)
      Description copied from interface: CreateBuilder
      Set write flags. Write flags specify the behaviour of writes
      Specified by:
      withWriteFlags in interface CreateBuilder
      Parameters:
      writeFlags - the flags
      Returns:
      the builder itself
    • withWriteQuorumSize

      public CreateBuilder withWriteQuorumSize(int writeQuorumSize)
      Description copied from interface: CreateBuilder
      Set the number of bookies which receive every single entry. In case of ensembleSize > writeQuorumSize data will be striped across a number of ensembleSize bookies. It defaults to 2.
      Specified by:
      withWriteQuorumSize in interface CreateBuilder
      Parameters:
      writeQuorumSize - the replication factor for each entry
      Returns:
      the builder itself
    • withAckQuorumSize

      public CreateBuilder withAckQuorumSize(int ackQuorumSize)
      Description copied from interface: CreateBuilder
      Set the number of acknowledgements to wait before considering a write to be completed with success. This value can be less or equals to writeQuorumSize. It defaults to 2.
      Specified by:
      withAckQuorumSize in interface CreateBuilder
      Parameters:
      ackQuorumSize - the number of acknowledgements to wait for
      Returns:
      the builder itself
    • withPassword

      public CreateBuilder withPassword(byte[] password)
      Description copied from interface: CreateBuilder
      Set a password for the ledger. It defaults to empty password
      Specified by:
      withPassword in interface CreateBuilder
      Parameters:
      password - the password
      Returns:
      the builder itself
    • withCustomMetadata

      public CreateBuilder withCustomMetadata(Map<String,byte[]> customMetadata)
      Description copied from interface: CreateBuilder
      Set a map a custom data to be attached to the ledger. The application is responsible for the semantics of these data.
      Specified by:
      withCustomMetadata in interface CreateBuilder
      Parameters:
      customMetadata - the ledger metadata
      Returns:
      the builder itself
    • withDigestType

      public CreateBuilder withDigestType(DigestType digestType)
      Description copied from interface: CreateBuilder
      Set the Digest type used to guard data against corruption. It defaults to DigestType.CRC32
      Specified by:
      withDigestType in interface CreateBuilder
      Parameters:
      digestType - the type of digest
      Returns:
      the builder itself
    • makeAdv

      public CreateAdvBuilder makeAdv()
      Description copied from interface: CreateBuilder
      Switch the ledger into 'Advanced' mode. A ledger used in Advanced mode will explicitly generate the sequence of entry identifiers. Advanced ledgers can be created with a client side defined ledgerId
      Specified by:
      makeAdv in interface CreateBuilder
      Returns:
      a new CreateAdvBuilder builder
    • execute

      public CompletableFuture<WriteHandle> execute()
      Description copied from interface: OpBuilder
      Start the operation and return an handle to the result.
      Specified by:
      execute in interface OpBuilder<WriteHandle>
      Returns:
      an handle to access the result of the operation
      See Also: