IceGrid::Admin

Overview

interface Admin

The IceGrid administrative interface.

Warning

Allowing access to this interface is a security risk! Please see the IceGrid documentation for further information.

Operation Index

addApplication

Add an application to IceGrid.

syncApplication

Synchronize a deployed application with the given application descriptor.

updateApplication

Update a deployed application with the given update application descriptor.

removeApplication

Remove an application from IceGrid.

instantiateServer

Instantiate a server template from an application on the given node.

patchApplication

Patch the given application data.

getApplicationDescriptor

Get an application descriptor.

getDefaultApplicationDescriptor

Get the default application descriptor.

getAllApplicationNames

Get all the IceGrid applications currently registered.

getServerInfo

Get the server information for the server with the given id.

getServerState

Get a server's state.

getServerPid

Get a server's system process id.

enableServer

Enable or disable a server.

isServerEnabled

Check if the server is enabled or disabled.

startServer

Start a server and wait for its activation.

stopServer

Stop a server.

patchServer

Patch a server.

sendSignal

Send signal to a server.

writeMessage

Write message on server stdout or stderr.

getAllServerIds

Get all the server ids registered with IceGrid.

getAdapterInfo

Get the adapter information for the replica group or adapter with the given id.

removeAdapter

Remove the adapter with the given id.

getAllAdapterIds

Get all the adapter ids registered with IceGrid.

addObject

Add an object to the object registry.

updateObject

Update an object in the object registry.

addObjectWithType

Add an object to the object registry and explicitly specify its type.

removeObject

Remove an object from the object registry.

getObjectInfo

Get the object info for the object with the given identity.

getObjectInfosByType

Get the object info of all the registered objects with the given type.

getAllObjectInfos

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

pingNode

Ping an IceGrid node to see if it is active.

getNodeLoad

Get the load averages of the node.

getNodeInfo

Get the node information for the node with the given name.

shutdownNode

Shutdown an IceGrid node.

getNodeHostname

Get the hostname of this node.

getAllNodeNames

Get all the IceGrid nodes currently registered.

shutdown

Shut down the IceGrid registry.

getSliceChecksums

Returns the checksums for the IceGrid Slice definitions.

addApplication

void addApplication(ApplicationDescriptor descriptor)
    throws
	AccessDeniedException,
	DeploymentException;

Add an application to IceGrid.

Parameters

descriptor

The application descriptor.

Exceptions

AccessDeniedException

Raised if the session doesn't hold the exclusive lock or if another session is holding the lock.

DeploymentException

Raised if application deployment failed.

syncApplication

void syncApplication(ApplicationDescriptor descriptor)
    throws
	AccessDeniedException,
	DeploymentException,
	ApplicationNotExistException;

Synchronize a deployed application with the given application descriptor. This operation will replace the current descriptor with this new descriptor.

Parameters

descriptor

The application descriptor.

Exceptions

AccessDeniedException

Raised if the session doesn't hold the exclusive lock or if another session is holding the lock.

DeploymentException

Raised if application deployment failed.

ApplicationNotExistException

Raised if the application doesn't exist.

updateApplication

void updateApplication(ApplicationUpdateDescriptor descriptor)
    throws
	AccessDeniedException,
	DeploymentException,
	ApplicationNotExistException;

Update a deployed application with the given update application descriptor.

Parameters

descriptor

The update descriptor.

Exceptions

AccessDeniedException

Raised if the session doesn't hold the exclusive lock or if another session is holding the lock.

DeploymentException

Raised if application deployment failed.

ApplicationNotExistException

Raised if the application doesn't exist.

removeApplication

void removeApplication(string name)
    throws
	AccessDeniedException,
	ApplicationNotExistException;

Remove an application from IceGrid.

Parameters

name

The application name.

Exceptions

AccessDeniedException

Raised if the session doesn't hold the exclusive lock or if another session is holding the lock.

ApplicationNotExistException

Raised if the application doesn't exist.

instantiateServer

void instantiateServer(string application,
    string node,
    ServerInstanceDescriptor desc)
    throws
	AccessDeniedException,
	ApplicationNotExistException,
	DeploymentException;

Instantiate a server template from an application on the given node.

Parameters

application

The application name.

node

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

desc

The descriptor of the server instance to deploy.

Exceptions

AccessDeniedException

Raised if the session doesn't hold the exclusive lock or if another session is holding the lock.

DeploymentException

Raised if server instantiation failed.

ApplicationNotExistException

Raised if the application doesn't exist.

patchApplication

[ "ami", "amd" ]
void patchApplication(string name,
    bool shutdown)
    throws
	ApplicationNotExistException,
	PatchException;

Patch the given application data.

Parameters

name

The application name.

shutdown

If true, the servers depending on the data to patch will be shutdown if necessary.

Exceptions

ApplicationNotExistException

Raised if the application doesn't exist.

PatchException

Raised if the patch failed.

getApplicationDescriptor

ApplicationDescriptor getApplicationDescriptor(string name)
    throws
	ApplicationNotExistException;

Get an application descriptor.

Parameters

name

The application name.

Return Value

The application descriptor.

Exceptions

ApplicationNotExistException

Raised if the application doesn't exist.

getDefaultApplicationDescriptor

ApplicationDescriptor getDefaultApplicationDescriptor()
    throws
	DeploymentException;

Get the default application descriptor.

Exceptions

DeploymentException

Raised if the default application descriptor can't be accessed or is invalid.

getAllApplicationNames

::Ice::StringSeq getAllApplicationNames();

Get all the IceGrid applications currently registered.

Return Value

The application names.

getServerInfo

ServerInfo getServerInfo(string id)
    throws
	ServerNotExistException;

Get the server information for the server with the given id.

Parameters

id

The server id.

Return Value

The server information.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

getServerState

ServerState getServerState(string id)
    throws
	ServerNotExistException,
	NodeUnreachableException,
	DeploymentException;

Get a server's state.

Parameters

id

The server id.

Return Value

The server state.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

getServerPid

int getServerPid(string id)
    throws
	ServerNotExistException,
	NodeUnreachableException,
	DeploymentException;

Get a server's system process id. The process id is operating system dependent.

Parameters

id

The server id.

Return Value

The server's process id.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

enableServer

[ "ami" ]
void enableServer(string id,
    bool enabled)
    throws
	ServerNotExistException,
	NodeUnreachableException,
	DeploymentException;

Enable or disable 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 shutdown and restarted, the server will be enabled by default.

Parameters

id

The server id.

enabled

True to enable the server, false to disable it.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

isServerEnabled

bool isServerEnabled(string id)
    throws
	ServerNotExistException,
	NodeUnreachableException,
	DeploymentException;

Check if the server is enabled or disabled.

Parameters

id

The server id.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

startServer

[ "ami" ]
void startServer(string id)
    throws
	ServerNotExistException,
	ServerStartException,
	NodeUnreachableException,
	DeploymentException;

Start a server and wait for its activation.

Parameters

id

The server id.

Return Value

True if the server was successfully started, false otherwise.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

ServerStartException

Raised if the server couldn't be started.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

stopServer

[ "ami" ]
void stopServer(string id)
    throws
	ServerNotExistException,
	ServerStopException,
	NodeUnreachableException,
	DeploymentException;

Stop a server.

Parameters

id

The server id.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

ServerStopException

Raised if the server couldn't be stopped.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

patchServer

[ "ami", "amd" ]
void patchServer(string id,
    bool shutdown)
    throws
	ServerNotExistException,
	NodeUnreachableException,
	DeploymentException,
	PatchException;

Patch a server.

Parameters

id

The server id.

shutdown

If true, servers depending on the data to patch will be shutdown if necessary.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

PatchException

Raised if the patch failed.

sendSignal

void sendSignal(string id,
    string signal)
    throws
	ServerNotExistException,
	NodeUnreachableException,
	DeploymentException,
	BadSignalException;

Send signal to a server.

Parameters

id

The server id.

signal

The signal, for example SIGTERM or 15.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

BadSignalException

Raised if the signal is not recognized by the target server.

writeMessage

void writeMessage(string id,
    string message,
    int fd)
    throws
	ServerNotExistException,
	NodeUnreachableException,
	DeploymentException;

Write message on server stdout or stderr.

Parameters

id

The server id.

message

The message.

fd

1 for stdout, 2 for stderr.

Exceptions

ServerNotExistException

Raised if the server doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

DeploymentException

Raised if the server couldn't be deployed on the node.

getAllServerIds

::Ice::StringSeq getAllServerIds();

Get all the server ids registered with IceGrid.

Return Value

The server ids.

getAdapterInfo

AdapterInfoSeq getAdapterInfo(string id)
    throws
	AdapterNotExistException;

Get the adapter information for the replica group or adapter with the given id.

Parameters

adapterId

The adapter id.

Return Value

A sequence of adapter information structures. If the given id refers to an adapter, this sequence will contain only one element. If the given id refers to a replica group, the sequence will contain the adapter information of each member of the replica group.

Exceptions

AdapterNotExistException

Raised if the adapter or replica group doesn't exist.

removeAdapter

[ "ami" ]
void removeAdapter(string adapterId)
    throws
	AdapterNotExistException,
	DeploymentException;

Remove the adapter with the given id.

Exceptions

AdapterNotExistException

Raised if the adapter doesn't exist.

getAllAdapterIds

::Ice::StringSeq getAllAdapterIds();

Get all the adapter ids registered with IceGrid.

Return Value

The adapter ids.

addObject

void addObject(Object* obj)
    throws
	ObjectExistsException,
	DeploymentException;

Add an object to the object registry. IceGrid will get the object type by calling ice_id on the given proxy. The object must be reachable.

Parameters

obj

The object to be added to the registry.

Exceptions

ObjectExistsException

Raised if the object is already registered.

DeploymentException

Raised if the object can't be added. This might be raised if the invocation on the proxy to get the object type failed.

updateObject

void updateObject(Object* obj)
    throws
	ObjectNotRegisteredException,
	DeploymentException;

Update 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.

Parameters

obj

The object to be updated to the registry.

Exceptions

ObjectNotRegisteredException

Raised if the object isn't registered with the registry.

DeploymentException

Raised if the object can't be updated. This might happen if the object was added with a deployment descriptor.

addObjectWithType

void addObjectWithType(Object* obj,
    string type)
    throws
	ObjectExistsException;

Add an object to the object registry and explicitly specify its type.

Parameters

obj

The object to be added to the registry.

type

The object type.

Exceptions

ObjectExistsException

Raised if the object is already registered.

removeObject

[ "ami" ]
void removeObject(::Ice::Identity id)
    throws
	ObjectNotRegisteredException,
	DeploymentException;

Remove 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.

Parameters

id

The identity of the object to be removed from the registry.

Exceptions

ObjectNotRegisteredException

Raised if the object isn't registered with the registry.

DeploymentException

Raised if the object can't be removed. This might happen if the object was added with a deployment descriptor.

getObjectInfo

ObjectInfo getObjectInfo(::Ice::Identity id)
    throws
	ObjectNotRegisteredException;

Get the object info for the object with the given identity.

Parameters

id

The identity of the object.

Return Value

The object info.

Exceptions

ObjectNotRegisteredException

Raised if the object isn't registered with the registry.

getObjectInfosByType

ObjectInfoSeq getObjectInfosByType(string type);

Get the object info of all the registered objects with the given type.

Parameters

type

The type of the object.

Return Value

The object infos.

getAllObjectInfos

ObjectInfoSeq getAllObjectInfos(string expr);

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

Parameters

expr

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

Return Value

All the object infos with a stringified identity matching the given expression.

pingNode

bool pingNode(string name)
    throws
	NodeNotExistException;

Ping an IceGrid node to see if it is active.

Parameters

name

The node name.

Return Value

true if the node ping succeeded, false otherwise.

Exceptions

NodeNotExistException

Raised if the node doesn't exist.

getNodeLoad

[ "ami" ]
LoadInfo getNodeLoad(string name)
    throws
	NodeNotExistException,
	NodeUnreachableException;

Get the load averages of the node.

Parameters

name

The node name.

Return Value

The node load information.

Exceptions

NodeNotExistException

Raised if the node doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

getNodeInfo

NodeInfo getNodeInfo(string name)
    throws
	NodeNotExistException,
	NodeUnreachableException;

Get the node information for the node with the given name.

Parameters

name

The node name.

Return Value

The node information.

Exceptions

NodeNotExistException

Raised if the node doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

shutdownNode

[ "ami" ]
void shutdownNode(string name)
    throws
	NodeNotExistException,
	NodeUnreachableException;

Shutdown an IceGrid node.

Parameters

name

The node name.

Exceptions

NodeNotExistException

Raised if the node doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

getNodeHostname

string getNodeHostname(string name)
    throws
	NodeNotExistException,
	NodeUnreachableException;

Get the hostname of this node.

Parameters

name

The node name.

Return Value

The node hostname.

Exceptions

NodeNotExistException

Raised if the node doesn't exist.

NodeUnreachableException

Raised if the node could not be reached.

getAllNodeNames

::Ice::StringSeq getAllNodeNames();

Get all the IceGrid nodes currently registered.

Return Value

The node names.

shutdown

void shutdown();

Shut down the IceGrid registry.

getSliceChecksums

::Ice::SliceChecksumDict getSliceChecksums();

Returns the checksums for the IceGrid Slice definitions.

Return Value

A dictionary mapping Slice type ids to their checksums.