Hazelcast C++ Client
Hazelcast C++ Client Library
hazelcast::client::config::near_cache_config Class Reference

Contains the configuration for a Near Cache. More...

#include <near_cache_config.h>

Public Types

enum  local_update_policy { INVALIDATE , CACHE }
 Local Update Policy enum. More...
 

Public Member Functions

 near_cache_config (const std::string &cache_name)
 
 near_cache_config (const std::string &cache_name, in_memory_format memory_format)
 
 near_cache_config (int32_t time_to_live_seconds, int32_t max_idle_seconds, bool invalidate_on_change, in_memory_format in_memory_format, const eviction_config &evict_config)
 
const std::string & get_name () const
 Gets the name of the Near Cache. More...
 
near_cache_configset_name (const std::string &name)
 Sets the name of the Near Cache. More...
 
int32_t get_time_to_live_seconds () const
 Gets the maximum number of seconds for each entry to stay in the Near Cache. More...
 
near_cache_configset_time_to_live_seconds (int32_t time_to_live_seconds)
 Sets the maximum number of seconds for each entry to stay in the Near Cache. More...
 
int32_t get_max_idle_seconds () const
 Maximum number of seconds each entry can stay in the Near Cache as untouched (not-read). More...
 
near_cache_configset_max_idle_seconds (int32_t max_idle_seconds)
 Maximum number of seconds each entry can stay in the Near Cache as untouched (not-read). More...
 
bool is_invalidate_on_change () const
 True to evict the cached entries if the entries are changed (updated or removed). More...
 
near_cache_configset_invalidate_on_change (bool invalidate_on_change)
 True to evict the cached entries if the entries are changed (updated or removed). More...
 
const in_memory_format & get_in_memory_format () const
 Gets the data type used to store entries. More...
 
virtual near_cache_configset_in_memory_format (const in_memory_format &in_memory_format)
 Sets the data type used to store entries. More...
 
bool is_cache_local_entries () const
 If true, cache local entries also. More...
 
near_cache_configset_cache_local_entries (bool cache_local_entries)
 True to cache local entries also. More...
 
const local_update_policyget_local_update_policy () const
 
near_cache_configset_local_update_policy (const local_update_policy &local_update_policy)
 
eviction_configget_eviction_config ()
 The eviction configuration. More...
 
near_cache_configset_eviction_config (const eviction_config &eviction_config)
 Sets the eviction configuration. More...
 

Static Public Attributes

static constexpr int32_t DEFAULT_TTL_SECONDS = 0
 Default value of the time to live in seconds.
 
static constexpr int32_t DEFAULT_MAX_IDLE_SECONDS = 0
 Default value of the idle time for eviction in seconds.
 
static constexpr in_memory_format DEFAULT_MEMORY_FORMAT
 Default value for the in-memory format. More...
 

Friends

std::ostream HAZELCAST_API & operator<< (std::ostream &out, const near_cache_config &cache_config)
 

Detailed Description

Contains the configuration for a Near Cache.

@BinaryInterface

Definition at line 33 of file near_cache_config.h.

Member Enumeration Documentation

◆ local_update_policy

Local Update Policy enum.

Enumerator
INVALIDATE 

INVALIDATE POLICY.

CACHE 

CACHE ON UPDATE POLICY.

Definition at line 55 of file near_cache_config.h.

56  {
60  INVALIDATE,
61 
65  CACHE
66  };

Member Function Documentation

◆ get_eviction_config()

eviction_config & hazelcast::client::config::near_cache_config::get_eviction_config ( )

The eviction configuration.

Returns
The eviction configuration.

Definition at line 1023 of file config.cpp.

1024 {
1025  return eviction_config_;
1026 }

◆ get_in_memory_format()

const in_memory_format & hazelcast::client::config::near_cache_config::get_in_memory_format ( ) const

Gets the data type used to store entries.

Possible values: BINARY (default): keys and values are stored as binary data. OBJECT: values are stored in their object forms.

Returns
The data type used to store entries.

Definition at line 982 of file config.cpp.

983 {
984  return in_memory_format_;
985 }

◆ get_max_idle_seconds()

int32_t hazelcast::client::config::near_cache_config::get_max_idle_seconds ( ) const

Maximum number of seconds each entry can stay in the Near Cache as untouched (not-read).

Entries that are not read (touched) more than max-idle-seconds value will get removed from the Near Cache.

Returns
Maximum number of seconds each entry can stay in the Near Cache as untouched (not-read).

Definition at line 955 of file config.cpp.

956 {
957  return max_idle_seconds_;
958 }

◆ get_name()

const std::string & hazelcast::client::config::near_cache_config::get_name ( ) const

Gets the name of the Near Cache.

Returns
The name of the Near Cache.

Definition at line 928 of file config.cpp.

929 {
930  return name_;
931 }

◆ get_time_to_live_seconds()

int32_t hazelcast::client::config::near_cache_config::get_time_to_live_seconds ( ) const

Gets the maximum number of seconds for each entry to stay in the Near Cache.

Entries that are older than time-to-live-seconds will get automatically evicted from the Near Cache.

Returns
The maximum number of seconds for each entry to stay in the Near Cache.

Definition at line 941 of file config.cpp.

942 {
943  return time_to_live_seconds_;
944 }

◆ is_cache_local_entries()

bool hazelcast::client::config::near_cache_config::is_cache_local_entries ( ) const

If true, cache local entries also.

This is useful when in-memory-format for Near Cache is different than the map's one.

Returns
True if local entries are cached also.

Definition at line 996 of file config.cpp.

997 {
998  return cache_local_entries_;
999 }

◆ is_invalidate_on_change()

bool hazelcast::client::config::near_cache_config::is_invalidate_on_change ( ) const

True to evict the cached entries if the entries are changed (updated or removed).

When true, the member listens for cluster-wide changes on the entries and invalidates them on change. Changes done on the local member always invalidate the cache.

Returns
This Near Cache config instance.

Definition at line 969 of file config.cpp.

970 {
971  return invalidate_on_change_;
972 }

◆ set_cache_local_entries()

near_cache_config & hazelcast::client::config::near_cache_config::set_cache_local_entries ( bool  cache_local_entries)

True to cache local entries also.

This is useful when in-memory-format for Near Cache is different than the map's one.

Parameters
cacheLocalEntriesTrue to cache local entries also.
Returns
This Near Cache config instance.

Definition at line 1002 of file config.cpp.

1003 {
1004  this->cache_local_entries_ = cache_local_entries;
1005  return *this;
1006 }

◆ set_eviction_config()

near_cache_config & hazelcast::client::config::near_cache_config::set_eviction_config ( const eviction_config eviction_config)

Sets the eviction configuration.

Parameters
evictionConfigThe eviction configuration.
Returns
This Near Cache config instance.

Definition at line 1029 of file config.cpp.

1030 {
1031  this->eviction_config_ = eviction_config;
1032  return *this;
1033 }

◆ set_in_memory_format()

near_cache_config & hazelcast::client::config::near_cache_config::set_in_memory_format ( const in_memory_format &  in_memory_format)
virtual

Sets the data type used to store entries.

Possible values: BINARY (default): keys and values are stored as binary data. OBJECT: values are stored in their object forms.

Parameters
inMemoryFormatThe data type used to store entries.
Returns
This Near Cache config instance.

Definition at line 988 of file config.cpp.

990 {
991  this->in_memory_format_ = in_memory_format;
992  return *this;
993 }

◆ set_invalidate_on_change()

near_cache_config & hazelcast::client::config::near_cache_config::set_invalidate_on_change ( bool  invalidate_on_change)

True to evict the cached entries if the entries are changed (updated or removed).

If set to true, the member will listen for cluster-wide changes on the entries and invalidate them on change. Changes done on the local member always invalidate the cache.

Parameters
invalidateOnChangeTrue to evict the cached entries if the entries are changed (updated or removed), false otherwise.
Returns
This Near Cache config instance.

Definition at line 975 of file config.cpp.

976 {
977  this->invalidate_on_change_ = invalidate_on_change;
978  return *this;
979 }

◆ set_max_idle_seconds()

near_cache_config & hazelcast::client::config::near_cache_config::set_max_idle_seconds ( int32_t  max_idle_seconds)

Maximum number of seconds each entry can stay in the Near Cache as untouched (not-read).

Entries that are not read (touched) more than max-idle-seconds value will get removed from the Near Cache. Any integer between 0 and Integer.MAX_VALUE. 0 means INT32_MAX. Default is 0.

Parameters
maxIdleSecondsMaximum number of seconds each entry can stay in the Near Cache as untouched (not-read).
Returns
This Near Cache config instance.

Definition at line 961 of file config.cpp.

962 {
963  this->max_idle_seconds_ = util::Preconditions::check_not_negative(
964  max_idle_seconds, "Max-Idle seconds cannot be negative!");
965  return *this;
966 }

◆ set_name()

near_cache_config & hazelcast::client::config::near_cache_config::set_name ( const std::string &  name)

Sets the name of the Near Cache.

Parameters
nameThe name of the Near Cache.
Returns
This Near Cache config instance.

Definition at line 934 of file config.cpp.

935 {
936  this->name_ = name;
937  return *this;
938 }

◆ set_time_to_live_seconds()

near_cache_config & hazelcast::client::config::near_cache_config::set_time_to_live_seconds ( int32_t  time_to_live_seconds)

Sets the maximum number of seconds for each entry to stay in the Near Cache.

Entries that are older than time-to-live-seconds will get automatically evicted from the Near Cache. Any integer between 0 and INT32_MAX. 0 means infinite. Default is 0.

Parameters
timeToLiveSecondsThe maximum number of seconds for each entry to stay in the Near Cache.
Returns
This Near Cache config instance.

Definition at line 947 of file config.cpp.

948 {
949  this->time_to_live_seconds_ = util::Preconditions::check_not_negative(
950  time_to_live_seconds, "TTL seconds cannot be negative!");
951  return *this;
952 }

Member Data Documentation

◆ DEFAULT_MEMORY_FORMAT

constexpr in_memory_format hazelcast::client::config::near_cache_config::DEFAULT_MEMORY_FORMAT
staticconstexpr
Initial value:
=
in_memory_format::BINARY

Default value for the in-memory format.

Definition at line 49 of file near_cache_config.h.


The documentation for this class was generated from the following files: