Returns the value for the given key, passing the callback argument
to any cache loaders or that are invoked in the operation.
Namespace: GemStone.GemFire.Cache
Assembly: GemStone.GemFire.Cache (in GemStone.GemFire.Cache.dll)
Version: 2.7.0.0
Syntax
| C# |
|---|
public IGFSerializable Get( CacheableKey key, IGFSerializable callback ) |
| Visual Basic (Declaration) |
|---|
Public Function Get ( _ key As CacheableKey, _ callback As IGFSerializable _ ) As IGFSerializable |
| Visual C++ |
|---|
public: IGFSerializable^ Get ( CacheableKey^ key, IGFSerializable^ callback ) |
Parameters
- key
- CacheableKey
key whose associated value is to be returned -- the key object must implement the Equals and GetHashCode methods.
- callback
- IGFSerializable
An argument passed into the CacheLoader if loader is used. Has to be Serializable (i.e. implement IGFSerializable); can be null.
Return Value
value, or null if the value is not found and can't be loaded
Remarks
If the value is not present locally then it is requested from the java server. If even that is unsuccessful then a local CacheLoader will be invoked if there is one.
The value returned by get is not copied, so multi-threaded applications should not modify the value directly, but should use the update methods.
Updates the [!:CacheStatistics.LastAccessedTime][!:CacheStatistics.HitCount], [!:CacheStatistics.MissCount], and LastModifiedTime (if a new value is loaded) for this region and the entry.
Exceptions
| Exception | Condition |
|---|---|
| GemStone.GemFire.Cache..::IllegalArgumentException | if key is null |
| GemStone.GemFire.Cache..::CacheLoaderException | if CacheLoader throws an exception |
| GemStone.GemFire.Cache..::CacheServerException | If an exception is received from the Java cache server. Only for Native Client regions. |
| GemStone.GemFire.Cache..::NotConnectedException | if not connected to the GemFire system because the client cannot establish usable connections to any of the servers given to it. |
| GemStone.GemFire.Cache..::MessageException | If the message received from server could not be handled. This will be the case when an unregistered typeId is received in the reply or reply is not well formed. More information can be found in the log. |
| GemStone.GemFire.Cache..::TimeoutException | if the operation timed out |
| GemStone.GemFire.Cache..::RegionDestroyedException | if this region has been destroyed |