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);