Class CacheManager
Provides and manages the instance of ICache.
Inheritance
Assembly: Alachisoft.NCache.Client.dll
Syntax
public sealed class CacheManager
Properties
Caches
Returns CacheCollection of the caches initialized within the same application domain.
Declaration
public static CacheCollection Caches { get; }
Property Value
Type | Description |
---|---|
CacheCollection | A collection of caches initialized within the same application domain. |
Methods
GetCache(String, CacheConnectionOptions, String, CacheConnectionOptions)
Returns an instance of ICache for this application.
Declaration
public static ICache GetCache(string cacheName, CacheConnectionOptions cacheConnectionOptions = null, string clientCacheName = null, CacheConnectionOptions clientCacheConnectionOptions = null)
Parameters
Type | Name | Description |
---|---|---|
System.String | cacheName | The identifier for the ICache. |
CacheConnectionOptions | cacheConnectionOptions | CacheConnectionOptions parameters for ICache connection. |
System.String | clientCacheName | The identifier for the ClientCache. |
CacheConnectionOptions | clientCacheConnectionOptions | CacheConnectionOptions parameters for ClientCache connection. |
Returns
Type | Description |
---|---|
ICache | Instance of ICache. |
Remarks
The clientCacheName
parameter represents the registration/config name of the Client Cache (L1 Cache).
Depending upon the configuration the ICache object is
created InProc or OutProc.
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException |
|
GetCacheClients(String, CacheConnection)
Gets information of clients connected to each server node in a cache.
Declaration
public static Dictionary<ServerNode, List<ClientInfo>> GetCacheClients(string cacheName, CacheConnection connection = null)
Parameters
Type | Name | Description |
---|---|---|
System.String | cacheName | The identifier for the ICache. |
CacheConnection | connection | CacheConnection parameters for connection to cache. |
Returns
Type | Description |
---|---|
System.Collections.Generic.Dictionary<ServerNode, System.Collections.Generic.List<ClientInfo>> | Key value pair of ServerNode and list of ClientInfo in a cache. |
Examples
The following example shows how to get connected clients to each server node in a cache.
CacheConnection cacheConnection = new CacheConnection("remoteServer", 8250);
cacheConnection.UserCredentials = new Credentials("domain\\user-id", "password");
Dictionary<ServerNode, List<Alachisoft.NCache.Runtime.Caching.ClientInfo> info = CacheManager.GetCacheClients("demoCache", cacheConnection);
GetCacheHealth(String, CacheConnection)
Gets Health status of a cache.
Declaration
public static CacheHealth GetCacheHealth(string cacheName, CacheConnection connection = null)
Parameters
Type | Name | Description |
---|---|---|
System.String | cacheName | The identifier for the ICache. |
CacheConnection | connection | CacheConnection parameters for connection to cache. |
Returns
Type | Description |
---|---|
CacheHealth | CacheHealth containing information about cache including NodeStatus for each node in cache. |
Examples
The following example shows the to Health status of a cache.
CacheConnection cacheConnection = new CacheConnection("remoteServer", 8250);
cacheConnection.UserCredentials = new Credentials("domain\\user-id", "password");
CacheHealth cacheHealth = CacheManager.GetCacheHealth("demoCache", cacheConnection);
StartCache(String, CacheConnection)
Starts an OutProc cache. The end result is the same as that of starting the cache using the NCache Manager. It starts the cache on the specified cache server. If the Cache Server could not be contacted then it throws a ManagementException. It tries to get the Security Parameters from the client.ncconf.
Declaration
public static void StartCache(string cacheName, CacheConnection connection = null)
Parameters
Type | Name | Description |
---|---|---|
System.String | cacheName | The identifier for the ICache. |
CacheConnection | connection | CacheConnection parameters for connection to cache. |
Examples
The following example shows to to start a cache from the application.
CacheConnection cacheConnection = new CacheConnection("remoteServer", 8250);
cacheConnection.UserCredentials = new Credentials("domain\\user-id", "password");
CacheManager.StartCache("demoCache", cacheConnection);
StopCache(String, CacheConnection, Boolean)
Stops an OutProc cache. The end result is the same as that of stopping the cache using the NCache Manager. It stops the cache only on the same server where the client application is running. If the Cache Server could not be contacted then it throws a ManagementException. It tries to get the Security Parameters from the client.ncconf.
Declaration
public static void StopCache(string cacheName, CacheConnection connection = null, bool gracefullyShutDownNode = false)
Parameters
Type | Name | Description |
---|---|---|
System.String | cacheName | The identifier for the ICache. |
CacheConnection | connection | CacheConnection parameters for connection to cache. |
System.Boolean | gracefullyShutDownNode | The identifier for graceful node shutdown. |
Examples
The following example shows how to stop the cache from application.
CacheConnection cacheConnection = new CacheConnection("remoteServer", 8250);
cacheConnection.UserCredentials = new Credentials("domain\\user-id", "password");
CacheManager.Stop("demoCache", cacheConnection, true);