Package oracle.kv.table
Class WriteOptions
- java.lang.Object
-
- oracle.kv.table.WriteOptions
-
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
BulkWriteOptions
public class WriteOptions extends Object implements Cloneable
WriteOptions is passed to store operations that can update the store to specify non-default behavior relating to durability, timeouts and expiry operations.The default behavior is configured when a store is opened using
KVStoreConfig
.- Since:
- 3.0
-
-
Constructor Summary
Constructors Constructor Description WriteOptions()
Creates aWriteOptions
with default values.WriteOptions(Durability durability, long timeout, TimeUnit timeoutUnit)
Creates aWriteOptions
with the specified parameters.WriteOptions(WriteOptions options)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Object
clone()
Durability
getDurability()
Returns the durability associated with the operation.int
getIdentityCacheSize()
Gets the number of generated identity values that are requested from the server during a put.long
getTimeout()
Returns the timeout, which is an upper bound on the time interval for processing the operation.TimeUnit
getTimeoutUnit()
Returns the unit of the timeout parameter.boolean
getUpdateTTL()
Returns true if the absolute expiration time is to be modified during update operations.WriteOptions
setDurability(Durability durability)
Sets durability of write operation.WriteOptions
setIdentityCacheSize(int identityCacheSize)
Sets the number of generated identity values that are requested from the server during a put.WriteOptions
setTimeout(long timeout, TimeUnit timeoutUnit)
Sets timeout for write operation.WriteOptions
setUpdateTTL(boolean flag)
Sets whether absolute expiration time will be modified during update.String
toString()
-
-
-
Constructor Detail
-
WriteOptions
public WriteOptions()
Creates aWriteOptions
with default values. Same as WriteOptions(null, 0, null)- Since:
- 4.0
- See Also:
WriteOptions(Durability, long, TimeUnit)
-
WriteOptions
public WriteOptions(Durability durability, long timeout, TimeUnit timeoutUnit)
Creates aWriteOptions
with the specified parameters.If
durability
isnull
, thedefault durability
is used.The
timeout
parameter is an upper bound on the time interval for processing the operation. A best effort is made not to exceed the specified limit. If zero, thedefault request timeout
is used.If
timeout
is not 0, thetimeoutUnit
parameter must not benull
.- Parameters:
durability
- the write durability to usetimeout
- the timeout value to usetimeoutUnit
- theTimeUnit
used by thetimeout
parameter- Throws:
IllegalArgumentException
- if timeout is negativeIllegalArgumentException
- if timeout is > 0 and timeoutUnit is null
-
WriteOptions
public WriteOptions(WriteOptions options)
-
-
Method Detail
-
setDurability
public WriteOptions setDurability(Durability durability)
Sets durability of write operation.- Parameters:
durability
- can be null. Ifnull
, thedefault durability
will be used.- Returns:
- this
- Since:
- 4.0
-
setTimeout
public WriteOptions setTimeout(long timeout, TimeUnit timeoutUnit)
Sets timeout for write operation.- Parameters:
timeout
- the timeout value to usetimeoutUnit
- theTimeUnit
used by thetimeout
parameter- Returns:
- this
- Throws:
IllegalArgumentException
- if timeout is negativeIllegalArgumentException
- if timeout is > 0 and timeoutUnit is null- Since:
- 4.0
-
getDurability
public Durability getDurability()
Returns the durability associated with the operation.- Returns:
- the durability or null
-
getTimeout
public long getTimeout()
Returns the timeout, which is an upper bound on the time interval for processing the operation. A best effort is made not to exceed the specified limit. If zero, thedefault request timeout
is used.- Returns:
- the timeout or zero
-
getTimeoutUnit
public TimeUnit getTimeoutUnit()
Returns the unit of the timeout parameter.- Returns:
- the
TimeUnit
or null if the timeout has not been set. - Since:
- 4.0
-
setUpdateTTL
public WriteOptions setUpdateTTL(boolean flag)
Sets whether absolute expiration time will be modified during update. If false and the operation updates a record, the record's expiration time will not change.
If the operation inserts a record, this parameter is ignored and the specified TTL is always applied.
By default, this property is false. To update expiration time of an existing record, this flag must be set to true.- Parameters:
flag
- set to true if the operation should update an existing record's expiration time.- Returns:
- this
- Since:
- 4.0
-
getUpdateTTL
public boolean getUpdateTTL()
Returns true if the absolute expiration time is to be modified during update operations.- Since:
- 4.0
-
setIdentityCacheSize
public WriteOptions setIdentityCacheSize(int identityCacheSize)
Sets the number of generated identity values that are requested from the server during a put. This takes precedence to the DDL identity CACHE option. Any value equal of less than 0 means that the DDL identity CACHE value is used.- Since:
- 18.3
-
getIdentityCacheSize
public int getIdentityCacheSize()
Gets the number of generated identity values that are requested from the server during a put.- Since:
- 18.3
-
clone
protected Object clone() throws CloneNotSupportedException
- Overrides:
clone
in classObject
- Throws:
CloneNotSupportedException
- Since:
- 4.0
-
-