Package org.apache.bookkeeper.client
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 java.lang.Object implements CreateBuilder
-
-
Constructor Summary
Constructors Constructor Description CreateBuilderImpl(BookKeeper bk)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.concurrent.CompletableFuture<WriteHandle>execute()Start the operation and return an handle to the result.CreateAdvBuildermakeAdv()Switch the ledger into 'Advanced' mode.CreateBuilderwithAckQuorumSize(int ackQuorumSize)Set the number of acknowledgements to wait before considering a write to be completed with success.CreateBuilderwithCustomMetadata(java.util.Map<java.lang.String,byte[]> customMetadata)Set a map a custom data to be attached to the ledger.CreateBuilderwithDigestType(DigestType digestType)Set the Digest type used to guard data against corruption.CreateBuilderwithEnsembleSize(int ensembleSize)Set the number of bookies which will receive data for this ledger.CreateBuilderwithPassword(byte[] password)Set a password for the ledger.CreateBuilderwithWriteFlags(java.util.EnumSet<WriteFlag> writeFlags)Set write flags.CreateBuilderwithWriteQuorumSize(int writeQuorumSize)Set the number of bookies which receive every single entry.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.bookkeeper.client.api.CreateBuilder
withWriteFlags
-
-
-
-
Constructor Detail
-
CreateBuilderImpl
CreateBuilderImpl(BookKeeper bk)
-
-
Method Detail
-
withEnsembleSize
public CreateBuilder withEnsembleSize(int ensembleSize)
Description copied from interface:CreateBuilderSet the number of bookies which will receive data for this ledger. It defaults to 3.- Specified by:
withEnsembleSizein interfaceCreateBuilder- Parameters:
ensembleSize- the number of bookies- Returns:
- the builder itself
-
withWriteFlags
public CreateBuilder withWriteFlags(java.util.EnumSet<WriteFlag> writeFlags)
Description copied from interface:CreateBuilderSet write flags. Write flags specify the behaviour of writes- Specified by:
withWriteFlagsin interfaceCreateBuilder- Parameters:
writeFlags- the flags- Returns:
- the builder itself
-
withWriteQuorumSize
public CreateBuilder withWriteQuorumSize(int writeQuorumSize)
Description copied from interface:CreateBuilderSet 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:
withWriteQuorumSizein interfaceCreateBuilder- Parameters:
writeQuorumSize- the replication factor for each entry- Returns:
- the builder itself
-
withAckQuorumSize
public CreateBuilder withAckQuorumSize(int ackQuorumSize)
Description copied from interface:CreateBuilderSet 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:
withAckQuorumSizein interfaceCreateBuilder- Parameters:
ackQuorumSize- the number of acknowledgements to wait for- Returns:
- the builder itself
-
withPassword
public CreateBuilder withPassword(byte[] password)
Description copied from interface:CreateBuilderSet a password for the ledger. It defaults to empty password- Specified by:
withPasswordin interfaceCreateBuilder- Parameters:
password- the password- Returns:
- the builder itself
-
withCustomMetadata
public CreateBuilder withCustomMetadata(java.util.Map<java.lang.String,byte[]> customMetadata)
Description copied from interface:CreateBuilderSet a map a custom data to be attached to the ledger. The application is responsible for the semantics of these data.- Specified by:
withCustomMetadatain interfaceCreateBuilder- Parameters:
customMetadata- the ledger metadata- Returns:
- the builder itself
-
withDigestType
public CreateBuilder withDigestType(DigestType digestType)
Description copied from interface:CreateBuilderSet the Digest type used to guard data against corruption. It defaults toDigestType.CRC32- Specified by:
withDigestTypein interfaceCreateBuilder- Parameters:
digestType- the type of digest- Returns:
- the builder itself
-
makeAdv
public CreateAdvBuilder makeAdv()
Description copied from interface:CreateBuilderSwitch 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:
makeAdvin interfaceCreateBuilder- Returns:
- a new
CreateAdvBuilderbuilder
-
execute
public java.util.concurrent.CompletableFuture<WriteHandle> execute()
Description copied from interface:OpBuilderStart the operation and return an handle to the result.- Specified by:
executein interfaceOpBuilder<WriteHandle>- Returns:
- an handle to access the result of the operation
- See Also:
to have a simple method to access the result
-
-