K - type of the key in the cacheV - type of the value in the cachepublic class CachingTableDescriptor<K,V> extends HybridTableDescriptor<K,V,CachingTableDescriptor<K,V>>
| Modifier and Type | Field and Description | 
|---|---|
static java.lang.String | 
CACHE_SIZE  | 
static java.lang.String | 
CACHE_TABLE_ID  | 
static java.lang.String | 
PROVIDER_FACTORY_CLASS_NAME  | 
static java.lang.String | 
READ_TTL_MS  | 
static java.lang.String | 
REAL_TABLE_ID  | 
static java.lang.String | 
WRITE_AROUND  | 
static java.lang.String | 
WRITE_TTL_MS  | 
config, tableId| Constructor and Description | 
|---|
CachingTableDescriptor(java.lang.String tableId,
                      TableDescriptor<K,V,?> table)
Constructs a table descriptor instance with internal cache 
 | 
CachingTableDescriptor(java.lang.String tableId,
                      TableDescriptor<K,V,?> table,
                      TableDescriptor<K,V,?> cache)
Constructs a table descriptor instance and specify a cache (as Table descriptor)
 to be used for caching. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
java.lang.String | 
getProviderFactoryClassName()
Return the fully qualified class name of the  
TableProviderFactory | 
java.util.List<? extends TableDescriptor<K,V,?>> | 
getTableDescriptors()
Retrieve user-defined table descriptors contained in this table 
 | 
java.util.Map<java.lang.String,java.lang.String> | 
toConfig(Config jobConfig)
Generate configuration for this table descriptor, the generated configuration
 should be the complete configuration for this table that can be directly
 included in the job configuration. 
 | 
protected void | 
validate()
Validate that this table descriptor is constructed properly; this method is used internally. 
 | 
CachingTableDescriptor<K,V> | 
withCacheSize(long cacheSize)
Specify the max cache size for size-based eviction. 
 | 
CachingTableDescriptor<K,V> | 
withReadTtl(java.time.Duration readTtl)
Specify the TTL for each read access, ie. 
 | 
CachingTableDescriptor<K,V> | 
withWriteAround()
Specify if write-around policy should be used to bypass writing
 to cache for put operations. 
 | 
CachingTableDescriptor<K,V> | 
withWriteTtl(java.time.Duration writeTtl)
Specify the TTL for each write access, ie. 
 | 
addTableConfig, getTableId, withConfigpublic static final java.lang.String PROVIDER_FACTORY_CLASS_NAME
public static final java.lang.String REAL_TABLE_ID
public static final java.lang.String CACHE_TABLE_ID
public static final java.lang.String READ_TTL_MS
public static final java.lang.String WRITE_TTL_MS
public static final java.lang.String CACHE_SIZE
public static final java.lang.String WRITE_AROUND
public CachingTableDescriptor(java.lang.String tableId,
                              TableDescriptor<K,V,?> table)
tableId - Id of the table, it must conform to pattern { @literal [\\d\\w-_]+ }table - target table descriptorpublic CachingTableDescriptor(java.lang.String tableId,
                              TableDescriptor<K,V,?> table,
                              TableDescriptor<K,V,?> cache)
tableId - Id of the table, it must conform to pattern { @literal [\\d\\w-_]+ }table - target table descriptorcache - cache table descriptorpublic java.util.List<? extends TableDescriptor<K,V,?>> getTableDescriptors()
getTableDescriptors in class HybridTableDescriptor<K,V,CachingTableDescriptor<K,V>>public CachingTableDescriptor<K,V> withReadTtl(java.time.Duration readTtl)
readTtl - read TTLpublic CachingTableDescriptor<K,V> withWriteTtl(java.time.Duration writeTtl)
writeTtl - write TTLpublic CachingTableDescriptor<K,V> withCacheSize(long cacheSize)
cacheSize - max size of the cachepublic CachingTableDescriptor<K,V> withWriteAround()
public java.lang.String getProviderFactoryClassName()
BaseTableDescriptorTableProviderFactorygetProviderFactoryClassName in class BaseTableDescriptor<K,V,CachingTableDescriptor<K,V>>TableProviderFactorypublic java.util.Map<java.lang.String,java.lang.String> toConfig(Config jobConfig)
TableDescriptorjobConfig.toConfig in interface TableDescriptor<K,V,CachingTableDescriptor<K,V>>toConfig in class BaseTableDescriptor<K,V,CachingTableDescriptor<K,V>>jobConfig - job configurationprotected void validate()
BaseTableDescriptorvalidate in class BaseTableDescriptor<K,V,CachingTableDescriptor<K,V>>