IBM.WebSphere.Caching.Map NamespaceIBM WebSphere™ eXtreme Scale Client for .NET API Specification
IBM WebSphere™ eXtreme Scale Client for .NET Release 8.6.0.0 API Specification

The IBM.WebSphere.Caching.Map namespace includes the data access application programming interfaces. See the IBM.WebSphere.Caching namespace documentation for a description on how to access a map.

The eXtreme Scale client supports transactional data access to individual maps using automatic and manual transactions. The following maps are available:

See each respective interface for programming examples.

Classes

  ClassDescription
Public classCacheKeyNotFoundException
A CacheKeyNotFoundException exception occurs if a key cannot be found in the cache.
Public classClassAliasAttribute
Specifies the class alias that you can use to correlate different class names that have the same class alias. The class alias and class fields or types are used to identify a unique class type ID during the object class serialization and de-serialization.

The [ClassAlias] annotation can be specified for a user defined class.

Public classClientServerLoaderException
A ClientServerLoaderException exception is a base exception for any client/server operation exceptions.
Public classDuplicateKeyException
A DuplicateKeyException exception occurs if a key cannot be inserted into the backing map because an object with the same key already exists.
Public classFieldAliasAttribute
Specifies the field alias that you can use to correlate different class field names that have the same class field alias. The class alias and field alias or types are used to identify a unique class type ID during the object class serialization and de-serialization.

The [FieldAlias] annotation can be specified for user defined class fields.

Public classLoaderException
A LoaderException exception is the base exception that results for any exceptions that are encountered by a Loader.
Public classLockDeadlockException
A LockStrategyNotSupportedException exception occurs when the lock manager detects a deadlock. This exception occurs to prevent the deadlock.
Public classLockException
A LockException exception indicates errors with locking operations.
Public classLockStrategyNotSupportedException
A LockStrategyNotSupportedException exception occurs if a map is configured with an unsupported lock strategy.
Public classLockTimeoutException
A LockTimeoutException exception occurs when the lock manager detects that the lock wait time exceeded the maximum wait time. The timeout might be the result of a deadlock. If a deadlock is causing the timeout, the timeout is used to break the deadlock.
Public classMultiplePartitionWriteException
A MultiplePartitionWriteException exception is a base exception for client/server operations when a user attempts to write to multiple remote partitions on remote servers in the same transaction.
Public classOptimisticCollisionException
An OptimisticCollisionException occurs when an optimistic locking strategy is used and more than one update transaction collides on the same map entry of an ObjectGrid instance. The first transaction to commit updates the version object for the map entry. Other transactions that read this same map entry before committing have the previous version object. When the other transactions try to commit, the version object that is read does not match the version that was last committed. Therefore, other transactions are prevented from updating a map entry with stale data.

The default OptimisticCallback plug-in is used by the run time if an implementation is not provided by the application. If a well-constructed equals(Object) method is not on your value object, this exception occurs because the entire value object is used as the version object.

Because this exception indicates that the map entry contains stale data, stale map entries or entries as identified by the key parameter that is passed to the OptimisticCollisionException(String, String, String, Object) method are invalidated. If this exception is thrown by a Loader plug-in and a null reference is used as the key parameter by the loader, the run time assumes that the loader does not know which entry caused the exception. In this scenario, the LogSequence object is passed to the Loader.batchUpdate(TxID, LogSequence) method to determine which map entries to invalidate. Each LogElement entry in the LogSequence object that is type update or delete is invalidated.

Public classPartitionKeyAttribute
Specifies one or more attributes to use to calculate the partition hash code.

The PartitionKey attribute can be specified for the class using a path syntax to identify a single attribute. Multiple attributes can be specified using additional PartitionKey annotations on each field, using the Order attribute to specify the order in which the hash codes will be calculated.

The PartitionKey attribute is not inheritable.

Public classReadOnlyException
A ReadOnlyException exception occurs when a modify operation is attempted on a read-only map.
Public classTargetNotAvailableException
A TargetNotAvailableException occurs when a remote target was not found or was not reachable.
Public classTransactionAffinityException
A TransactionAffinityException exception occurs during server failover for inflight transactions. Applications can try the transaction again.
Public classUnavailableServiceException
An UnavailableServiceException exception occurs when all servers are not running, or when all services are not available even though servers are running.
Public classUndefinedMapException
An UndefinedMapException exception occurs to indicate that the map that an application tried to access is not defined in the ObjectGrid.
Interfaces

  InterfaceDescription
Public interfaceIGridMap TKey, TValue 
The top level interface for all maps. Use the interface to retrieve an appropriate IGridMap instance.

Different IGridMap implementations are returned which allow additional operations for specific configurations and usage patterns.

Public interfaceIGridMapPessimisticAutoTx TKey, TValue 
This is a handle to a map using automatic transaction demarcation.

An instance of this IGridMapPessimisticAutoTx can only be used by the thread at a time. Use the Dispose  method when finished with the map, to improve performance.

Public interfaceIGridMapPessimisticTx TKey, TValue 
This is a handle to a map using the pessimistic locking strategy and manual transaction demarcation. All data access operations must occur within an active transaction.

Use the Transaction property to access the IGridTransaction instance that is associated with this map instance, and use the Begin  method to begin a transaction. All keys in a single transaction must resolve to the same partition.

An instance of this IGridMapPessimisticTx is not thread-safe, and can only be used by the thread at a time. Use the Dispose  method when finished with the map, to improve performance.

Public interfaceIPartitionManager TKey, TValue 
An IPartitionManager provides properties and methods for determining how partitions are calculated. Retrieve an IPartitionManager from an IGridMap TKey, TValue .
Enumerations

  EnumerationDescription
Public enumerationLockMode
Specifies the strength of a lock to acquire.
Public enumerationTtlType
Every grid map has an optional, built in timed based evictor that is referred to as the "time to live" evictor or TTL evictor. Each grid map entry has an expiration time that determines how long the entry is allowed to live in the grid map. When the expiration time is reached, the TTL evictor causes the expired entry to be evicted from the grid map. This enum defines the TTLType value constants that determine how the the expiration time is computed for a map entry.