Table of Contents

Class AsyncAdminDisp_

Namespace
IceGrid
Assembly
IceGrid.dll

Implements dispatchAsync(IncomingRequest) for the operations of Slice interface Admin.

public abstract class AsyncAdminDisp_ : AsyncAdmin, Object
Inheritance
AsyncAdminDisp_
Implements
Inherited Members

Remarks

The Slice compiler generated this skeleton class from Slice interface ::IceGrid::Admin. This Async skeleton class provides only asynchronous methods. Your servant class derives from this abstract class to implement Slice interface Admin.

Methods

addApplicationAsync(ApplicationDescriptor, Current)

Adds an application to IceGrid.

public abstract Task addApplicationAsync(ApplicationDescriptor descriptor, Current current)

Parameters

descriptor ApplicationDescriptor

The application descriptor.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AccessDeniedException

Thrown when the session doesn't hold the exclusive lock or when another session is holding the lock.

DeploymentException

Thrown when the application deployment failed.

addObjectAsync(ObjectPrx?, Current)

Adds an object to the object registry. IceGrid gets the object type by calling ice_id on obj. The object must be reachable.

public abstract Task addObjectAsync(ObjectPrx? obj, Current current)

Parameters

obj ObjectPrx

A proxy to the object. This proxy is never null.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the object can't be added.

ObjectExistsException

Thrown when the object is already registered.

addObjectWithTypeAsync(ObjectPrx?, string, Current)

Adds an object to the object registry and explicitly specifies its type.

public abstract Task addObjectWithTypeAsync(ObjectPrx? obj, string type, Current current)

Parameters

obj ObjectPrx

The object to be added to the registry. The proxy is never null.

type string

The type name.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the application deployment failed.

ObjectExistsException

Thrown when the object is already registered.

dispatchAsync(IncomingRequest)

Dispatches an incoming request to one of the methods of this generated class, based on the operation name carried by the request.

public ValueTask<OutgoingResponse> dispatchAsync(IncomingRequest request)

Parameters

request IncomingRequest

The incoming request.

Returns

ValueTask<OutgoingResponse>

A value task that holds the outgoing response.

Remarks

Ice marshals any exception thrown by this method into the response.

enableServerAsync(string, bool, Current)

Enables or disables a server. A disabled server can't be started on demand or administratively. The enable state of the server is not persistent: if the node is shut down and restarted, the server will be enabled by default.

public abstract Task enableServerAsync(string id, bool enabled, Current current)

Parameters

id string

The server ID.

enabled bool

true to enable the server, false to disable it.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

getAdapterInfoAsync(string, Current)

Gets adapter information for the replica group or adapter with the given ID.

public abstract Task<AdapterInfo[]> getAdapterInfoAsync(string id, Current current)

Parameters

id string

The adapter or replica group ID.

current Current

The Current object for the dispatch.

Returns

Task<AdapterInfo[]>

A task that represents the asynchronous operation.

Exceptions

AdapterNotExistException

Thrown when the adapter or replica group doesn't exist.

getAllAdapterIdsAsync(Current)

Gets the IDs of all adapters registered with IceGrid.

public abstract Task<string[]> getAllAdapterIdsAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task<string[]>

A task that represents the asynchronous operation.

getAllApplicationNamesAsync(Current)

Gets all the IceGrid applications currently registered.

public abstract Task<string[]> getAllApplicationNamesAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task<string[]>

A task that represents the asynchronous operation.

getAllNodeNamesAsync(Current)

Gets the names of all IceGrid nodes currently registered.

public abstract Task<string[]> getAllNodeNamesAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task<string[]>

A task that represents the asynchronous operation.

getAllObjectInfosAsync(string, Current)

Gets the object info of all the registered objects whose stringified identities match the given expression.

public abstract Task<ObjectInfo[]> getAllObjectInfosAsync(string expr, Current current)

Parameters

expr string

The expression to match against the stringified identities of registered objects. The expression may contain a trailing wildcard (*) character.

current Current

The Current object for the dispatch.

Returns

Task<ObjectInfo[]>

A task that represents the asynchronous operation.

getAllRegistryNamesAsync(Current)

Gets the names of all the IceGrid registries currently registered.

public abstract Task<string[]> getAllRegistryNamesAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task<string[]>

A task that represents the asynchronous operation.

getAllServerIdsAsync(Current)

Gets the IDs of all the servers registered with IceGrid.

public abstract Task<string[]> getAllServerIdsAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task<string[]>

A task that represents the asynchronous operation.

getApplicationInfoAsync(string, Current)

Gets an application descriptor.

public abstract Task<ApplicationInfo> getApplicationInfoAsync(string name, Current current)

Parameters

name string

The application name.

current Current

The Current object for the dispatch.

Returns

Task<ApplicationInfo>

A task that represents the asynchronous operation.

Exceptions

ApplicationNotExistException

Thrown when the application doesn't exist.

getDefaultApplicationDescriptorAsync(Current)

Gets the default application descriptor.

public abstract Task<ApplicationDescriptor> getDefaultApplicationDescriptorAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task<ApplicationDescriptor>

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the default application descriptor is invalid or unreachable.

getNodeAdminAsync(string, Current)

Gets a proxy to the admin object of an IceGrid node.

public abstract Task<ObjectPrx?> getNodeAdminAsync(string name, Current current)

Parameters

name string

The IceGrid node name.

current Current

The Current object for the dispatch.

Returns

Task<ObjectPrx>

A task that represents the asynchronous operation.

Exceptions

NodeNotExistException

Thrown when the node doesn't exist.

NodeUnreachableException

Thrown when the node is unreachable.

getNodeHostnameAsync(string, Current)

Get the hostname of a node.

public abstract Task<string> getNodeHostnameAsync(string name, Current current)

Parameters

name string

The node name.

current Current

The Current object for the dispatch.

Returns

Task<string>

A task that represents the asynchronous operation.

Exceptions

NodeNotExistException

Thrown when the node doesn't exist.

NodeUnreachableException

Thrown when the node is unreachable.

getNodeInfoAsync(string, Current)

Gets the node information of a node.

public abstract Task<NodeInfo> getNodeInfoAsync(string name, Current current)

Parameters

name string

The node name.

current Current

The Current object for the dispatch.

Returns

Task<NodeInfo>

A task that represents the asynchronous operation.

Exceptions

NodeNotExistException

Thrown when the node doesn't exist.

NodeUnreachableException

Thrown when the node is unreachable.

getNodeLoadAsync(string, Current)

Gets the load averages of a node.

public abstract Task<LoadInfo> getNodeLoadAsync(string name, Current current)

Parameters

name string

The node name.

current Current

The Current object for the dispatch.

Returns

Task<LoadInfo>

A task that represents the asynchronous operation.

Exceptions

NodeNotExistException

Thrown when the node doesn't exist.

NodeUnreachableException

Thrown when the node is unreachable.

getNodeProcessorSocketCountAsync(string, Current)

Gets the number of physical processor sockets in the computer where an IceGrid node is deployed. Note that this operation returns 1 on operating systems where this can't be automatically determined and where the IceGrid.Node.ProcessorSocketCount property for the node is not set.

public abstract Task<int> getNodeProcessorSocketCountAsync(string name, Current current)

Parameters

name string

The node name.

current Current

The Current object for the dispatch.

Returns

Task<int>

A task that represents the asynchronous operation.

Exceptions

NodeNotExistException

Thrown when the node doesn't exist.

NodeUnreachableException

Thrown when the node is unreachable.

getObjectInfoAsync(Identity, Current)

Gets the object info for the object.

public abstract Task<ObjectInfo> getObjectInfoAsync(Identity id, Current current)

Parameters

id Identity

The identity of the object.

current Current

The Current object for the dispatch.

Returns

Task<ObjectInfo>

A task that represents the asynchronous operation.

Exceptions

ObjectNotRegisteredException

Thrown when the object isn't registered with the registry.

getObjectInfosByTypeAsync(string, Current)

Gets the object info of all the registered objects with a given type.

public abstract Task<ObjectInfo[]> getObjectInfosByTypeAsync(string type, Current current)

Parameters

type string

The type name.

current Current

The Current object for the dispatch.

Returns

Task<ObjectInfo[]>

A task that represents the asynchronous operation.

getRegistryAdminAsync(string, Current)

Gets a proxy to the admin object of an IceGrid registry.

public abstract Task<ObjectPrx?> getRegistryAdminAsync(string name, Current current)

Parameters

name string

The registry name.

current Current

The Current object for the dispatch.

Returns

Task<ObjectPrx>

A task that represents the asynchronous operation.

Exceptions

RegistryNotExistException

Thrown when the registry doesn't exist.

getRegistryInfoAsync(string, Current)

Gets the registry information of an IceGrid registry.

public abstract Task<RegistryInfo> getRegistryInfoAsync(string name, Current current)

Parameters

name string

The registry name.

current Current

The Current object for the dispatch.

Returns

Task<RegistryInfo>

A task that represents the asynchronous operation.

Exceptions

RegistryNotExistException

Thrown when the registry doesn't exist.

RegistryUnreachableException

Thrown when the registry is unreachable.

getServerAdminAsync(string, Current)

Gets a proxy to the admin object of a server.

public abstract Task<ObjectPrx?> getServerAdminAsync(string id, Current current)

Parameters

id string

The server ID.

current Current

The Current object for the dispatch.

Returns

Task<ObjectPrx>

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

getServerAdminCategoryAsync(Current)

Gets the category for server admin objects. You can manufacture a server admin proxy from the admin proxy by changing its identity: use the server ID as name and the returned category as category.

public abstract Task<string> getServerAdminCategoryAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task<string>

A task that represents the asynchronous operation.

getServerInfoAsync(string, Current)

Gets information about a server.

public abstract Task<ServerInfo> getServerInfoAsync(string id, Current current)

Parameters

id string

The server ID.

current Current

The Current object for the dispatch.

Returns

Task<ServerInfo>

A task that represents the asynchronous operation.

Exceptions

ServerNotExistException

Thrown when the server doesn't exist.

getServerPidAsync(string, Current)

Gets the system process ID of a server. The process ID is operating system dependent.

public abstract Task<int> getServerPidAsync(string id, Current current)

Parameters

id string

The server ID.

current Current

The Current object for the dispatch.

Returns

Task<int>

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

getServerStateAsync(string, Current)

Gets the state of a server.

public abstract Task<ServerState> getServerStateAsync(string id, Current current)

Parameters

id string

The server ID.

current Current

The Current object for the dispatch.

Returns

Task<ServerState>

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

ice_id(Current)

Returns the type ID of the most-derived Slice interface supported by this object.

public string ice_id(Current current)

Parameters

current Current

The Current object of the incoming request.

Returns

string

The Slice type ID of the most-derived interface.

ice_staticId()

Gets the type ID of the associated Slice interface.

public static string ice_staticId()

Returns

string

The string ::IceGrid::Admin.

instantiateServerAsync(string, string, ServerInstanceDescriptor, Current)

Instantiates a server template.

public abstract Task instantiateServerAsync(string application, string node, ServerInstanceDescriptor desc, Current current)

Parameters

application string

The application name.

node string

The name of the node where the server will be deployed.

desc ServerInstanceDescriptor

The descriptor of the server instance to deploy.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AccessDeniedException

Thrown when the session doesn't hold the exclusive lock or when another session is holding the lock.

ApplicationNotExistException

Thrown when the application doesn't exist.

DeploymentException

Thrown when the application deployment failed.

isServerEnabledAsync(string, Current)

Checks if the server is enabled or disabled.

public abstract Task<bool> isServerEnabledAsync(string id, Current current)

Parameters

id string

The server ID.

current Current

The Current object for the dispatch.

Returns

Task<bool>

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

pingNodeAsync(string, Current)

Pings an IceGrid node to see if it is active.

public abstract Task<bool> pingNodeAsync(string name, Current current)

Parameters

name string

The node name.

current Current

The Current object for the dispatch.

Returns

Task<bool>

A task that represents the asynchronous operation.

Exceptions

NodeNotExistException

Thrown when the node doesn't exist.

pingRegistryAsync(string, Current)

Pings an IceGrid registry to see if it is active.

public abstract Task<bool> pingRegistryAsync(string name, Current current)

Parameters

name string

The registry name.

current Current

The Current object for the dispatch.

Returns

Task<bool>

A task that represents the asynchronous operation.

Exceptions

RegistryNotExistException

Thrown when the registry doesn't exist.

removeAdapterAsync(string, Current)

Removes the adapter with the given ID.

public abstract Task removeAdapterAsync(string id, Current current)

Parameters

id string

The adapter ID.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AdapterNotExistException

Thrown when the adapter doesn't exist.

DeploymentException

Thrown when the application deployment failed.

removeApplicationAsync(string, Current)

Removes an application from IceGrid.

public abstract Task removeApplicationAsync(string name, Current current)

Parameters

name string

The application name.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AccessDeniedException

Thrown when the session doesn't hold the exclusive lock or when another session is holding the lock.

ApplicationNotExistException

Thrown when the application doesn't exist.

DeploymentException

Thrown when the application deployment failed.

removeObjectAsync(Identity, Current)

Removes an object from the object registry. Only objects added with this interface can be removed with this operation. Objects added with deployment descriptors should be removed with the deployment mechanism.

public abstract Task removeObjectAsync(Identity id, Current current)

Parameters

id Identity

The identity of the object to remove.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the object can't be removed.

ObjectNotRegisteredException

Thrown when the object isn't registered with the registry.

sendSignalAsync(string, string, Current)

Sends a signal to a server.

public abstract Task sendSignalAsync(string id, string signal, Current current)

Parameters

id string

The server ID.

signal string

The signal, for example SIGTERM or 15.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

BadSignalException

Thrown when the signal is not recognized by the target server.

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

shutdownAsync(Current)

Shuts down the IceGrid registry.

public abstract Task shutdownAsync(Current current)

Parameters

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

shutdownNodeAsync(string, Current)

Shuts down an IceGrid node.

public abstract Task shutdownNodeAsync(string name, Current current)

Parameters

name string

The node name.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

NodeNotExistException

Thrown when the node doesn't exist.

NodeUnreachableException

Thrown when the node is unreachable.

shutdownRegistryAsync(string, Current)

Shuts down an IceGrid registry.

public abstract Task shutdownRegistryAsync(string name, Current current)

Parameters

name string

The registry name.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

RegistryNotExistException

Thrown when the registry doesn't exist.

RegistryUnreachableException

Thrown when the registry is unreachable.

startServerAsync(string, Current)

Starts a server and waits for its activation.

public abstract Task startServerAsync(string id, Current current)

Parameters

id string

The server id.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

ServerStartException

Thrown when the server startup failed.

stopServerAsync(string, Current)

Stops a server.

public abstract Task stopServerAsync(string id, Current current)

Parameters

id string

The server ID.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the deployment of the server failed.

NodeUnreachableException

Thrown when the node is unreachable.

ServerNotExistException

Thrown when the server doesn't exist.

ServerStopException

Thrown when the server stop failed.

syncApplicationAsync(ApplicationDescriptor, Current)

Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor.

public abstract Task syncApplicationAsync(ApplicationDescriptor descriptor, Current current)

Parameters

descriptor ApplicationDescriptor

The new application descriptor.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AccessDeniedException

Thrown when the session doesn't hold the exclusive lock or when another session is holding the lock.

ApplicationNotExistException

Thrown when the application doesn't exist.

DeploymentException

Thrown when the application deployment failed.

syncApplicationWithoutRestartAsync(ApplicationDescriptor, Current)

Synchronizes a deployed application. This operation replaces the current descriptor with a new descriptor only if no server restarts are necessary for the update of the application. If some servers need to be restarted, the synchronization is rejected with a DeploymentException.

public abstract Task syncApplicationWithoutRestartAsync(ApplicationDescriptor descriptor, Current current)

Parameters

descriptor ApplicationDescriptor

The application descriptor.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AccessDeniedException

Thrown when the session doesn't hold the exclusive lock or when another session is holding the lock.

ApplicationNotExistException

Thrown when the application doesn't exist.

DeploymentException

Thrown when the application deployment failed.

updateApplicationAsync(ApplicationUpdateDescriptor, Current)

Updates a deployed application.

public abstract Task updateApplicationAsync(ApplicationUpdateDescriptor descriptor, Current current)

Parameters

descriptor ApplicationUpdateDescriptor

The update descriptor.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AccessDeniedException

Thrown when the session doesn't hold the exclusive lock or when another session is holding the lock.

ApplicationNotExistException

Thrown when the application doesn't exist.

DeploymentException

Thrown when the application deployment failed.

updateApplicationWithoutRestartAsync(ApplicationUpdateDescriptor, Current)

Updates a deployed application. This operation succeeds only when no server restarts are necessary for the update of the application. If some servers need to be restarted, the synchronization is rejected with a DeploymentException.

public abstract Task updateApplicationWithoutRestartAsync(ApplicationUpdateDescriptor descriptor, Current current)

Parameters

descriptor ApplicationUpdateDescriptor

The update descriptor.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

AccessDeniedException

Thrown when the session doesn't hold the exclusive lock or when another session is holding the lock.

ApplicationNotExistException

Thrown when the application doesn't exist.

DeploymentException

Thrown when the application deployment failed.

updateObjectAsync(ObjectPrx?, Current)

Updates an object in the object registry. Only objects added with this interface can be updated with this operation. Objects added with deployment descriptors should be updated with the deployment mechanism.

public abstract Task updateObjectAsync(ObjectPrx? obj, Current current)

Parameters

obj ObjectPrx

A proxy to the object. This proxy is never null.

current Current

The Current object for the dispatch.

Returns

Task

A task that represents the asynchronous operation.

Exceptions

DeploymentException

Thrown when the object can't be updated.

ObjectNotRegisteredException

Thrown when the object isn't registered with the registry.