# -*- coding: utf-8 -*-
#
# Copyright (c) ZeroC, Inc. All rights reserved.
#
#
# Ice version 3.7.6
#
# <auto-generated>
#
# Generated from file `Admin.ice'
#
# Warning: do not edit this file.
#
# </auto-generated>
#

from sys import version_info as _version_info_
import Ice, IcePy
import Ice.Identity_ice
import Ice.BuiltinSequences_ice
import Ice.Properties_ice
import Ice.SliceChecksumDict_ice
import Glacier2.Session_ice
import IceGrid.Exception_ice
import IceGrid.Descriptor_ice

# Included module Ice
_M_Ice = Ice.openModule('Ice')

# Included module Glacier2
_M_Glacier2 = Ice.openModule('Glacier2')

# Included module IceGrid
_M_IceGrid = Ice.openModule('IceGrid')

# Start of module IceGrid
__name__ = 'IceGrid'

if 'ServerState' not in _M_IceGrid.__dict__:
    _M_IceGrid.ServerState = Ice.createTempClass()
    class ServerState(Ice.EnumBase):
        """
        An enumeration representing the state of the server.
        Enumerators:
        Inactive -- The server is not running.
        Activating -- The server is being activated and will change to the active
        state when the registered server object adapters are activated
        or to the activation timed out state if the activation timeout
        expires.
        ActivationTimedOut -- The activation timed out state indicates that the server
        activation timed out.
        Active -- The server is running.
        Deactivating -- The server is being deactivated.
        Destroying -- The server is being destroyed.
        Destroyed -- The server is destroyed.
        """

        def __init__(self, _n, _v):
            Ice.EnumBase.__init__(self, _n, _v)

        def valueOf(self, _n):
            if _n in self._enumerators:
                return self._enumerators[_n]
            return None
        valueOf = classmethod(valueOf)

    ServerState.Inactive = ServerState("Inactive", 0)
    ServerState.Activating = ServerState("Activating", 1)
    ServerState.ActivationTimedOut = ServerState("ActivationTimedOut", 2)
    ServerState.Active = ServerState("Active", 3)
    ServerState.Deactivating = ServerState("Deactivating", 4)
    ServerState.Destroying = ServerState("Destroying", 5)
    ServerState.Destroyed = ServerState("Destroyed", 6)
    ServerState._enumerators = { 0:ServerState.Inactive, 1:ServerState.Activating, 2:ServerState.ActivationTimedOut, 3:ServerState.Active, 4:ServerState.Deactivating, 5:ServerState.Destroying, 6:ServerState.Destroyed }

    _M_IceGrid._t_ServerState = IcePy.defineEnum('::IceGrid::ServerState', ServerState, (), ServerState._enumerators)

    _M_IceGrid.ServerState = ServerState
    del ServerState

if '_t_StringObjectProxyDict' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_StringObjectProxyDict = IcePy.defineDictionary('::IceGrid::StringObjectProxyDict', (), IcePy._t_string, IcePy._t_ObjectPrx)

if 'ObjectInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.ObjectInfo = Ice.createTempClass()
    class ObjectInfo(object):
        """
        Information about an Ice object.
        Members:
        proxy -- The proxy of the object.
        type -- The type of the object.
        """
        def __init__(self, proxy=None, type=''):
            self.proxy = proxy
            self.type = type

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.ObjectInfo):
                return NotImplemented
            else:
                if self.proxy != other.proxy:
                    return False
                if self.type != other.type:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_ObjectInfo)

        __repr__ = __str__

    _M_IceGrid._t_ObjectInfo = IcePy.defineStruct('::IceGrid::ObjectInfo', ObjectInfo, (), (
        ('proxy', (), IcePy._t_ObjectPrx),
        ('type', (), IcePy._t_string)
    ))

    _M_IceGrid.ObjectInfo = ObjectInfo
    del ObjectInfo

if '_t_ObjectInfoSeq' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_ObjectInfoSeq = IcePy.defineSequence('::IceGrid::ObjectInfoSeq', (), _M_IceGrid._t_ObjectInfo)

if 'AdapterInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.AdapterInfo = Ice.createTempClass()
    class AdapterInfo(object):
        """
        Information about an adapter registered with the IceGrid registry.
        Members:
        id -- The id of the adapter.
        proxy -- A dummy direct proxy that contains the adapter endpoints.
        replicaGroupId -- The replica group id of the object adapter, or empty if the
        adapter doesn't belong to a replica group.
        """
        def __init__(self, id='', proxy=None, replicaGroupId=''):
            self.id = id
            self.proxy = proxy
            self.replicaGroupId = replicaGroupId

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.AdapterInfo):
                return NotImplemented
            else:
                if self.id != other.id:
                    return False
                if self.proxy != other.proxy:
                    return False
                if self.replicaGroupId != other.replicaGroupId:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_AdapterInfo)

        __repr__ = __str__

    _M_IceGrid._t_AdapterInfo = IcePy.defineStruct('::IceGrid::AdapterInfo', AdapterInfo, (), (
        ('id', (), IcePy._t_string),
        ('proxy', (), IcePy._t_ObjectPrx),
        ('replicaGroupId', (), IcePy._t_string)
    ))

    _M_IceGrid.AdapterInfo = AdapterInfo
    del AdapterInfo

if '_t_AdapterInfoSeq' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_AdapterInfoSeq = IcePy.defineSequence('::IceGrid::AdapterInfoSeq', (), _M_IceGrid._t_AdapterInfo)

if 'ServerInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.ServerInfo = Ice.createTempClass()
    class ServerInfo(object):
        """
        Information about a server managed by an IceGrid node.
        Members:
        application -- The server application.
        uuid -- The application uuid.
        revision -- The application revision.
        node -- The server node.
        descriptor -- The server descriptor.
        sessionId -- The id of the session which allocated the server.
        """
        def __init__(self, application='', uuid='', revision=0, node='', descriptor=None, sessionId=''):
            self.application = application
            self.uuid = uuid
            self.revision = revision
            self.node = node
            self.descriptor = descriptor
            self.sessionId = sessionId

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.ServerInfo):
                return NotImplemented
            else:
                if self.application != other.application:
                    return False
                if self.uuid != other.uuid:
                    return False
                if self.revision != other.revision:
                    return False
                if self.node != other.node:
                    return False
                if self.descriptor != other.descriptor:
                    return False
                if self.sessionId != other.sessionId:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_ServerInfo)

        __repr__ = __str__

    _M_IceGrid._t_ServerInfo = IcePy.defineStruct('::IceGrid::ServerInfo', ServerInfo, (), (
        ('application', (), IcePy._t_string),
        ('uuid', (), IcePy._t_string),
        ('revision', (), IcePy._t_int),
        ('node', (), IcePy._t_string),
        ('descriptor', (), _M_IceGrid._t_ServerDescriptor),
        ('sessionId', (), IcePy._t_string)
    ))

    _M_IceGrid.ServerInfo = ServerInfo
    del ServerInfo

if 'NodeInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.NodeInfo = Ice.createTempClass()
    class NodeInfo(object):
        """
        Information about an IceGrid node.
        Members:
        name -- The name of the node.
        os -- The operating system name.
        hostname -- The network name of the host running this node (as defined in
        uname()).
        release -- The operation system release level (as defined in uname()).
        version -- The operation system version (as defined in uname()).
        machine -- The machine hardware type (as defined in uname()).
        nProcessors -- The number of processor threads on the node.
        For example, nProcessors is 8 on a computer with a single quad-core
        processor and two HT threads per core.
        dataDir -- The path to the node data directory.
        """
        def __init__(self, name='', os='', hostname='', release='', version='', machine='', nProcessors=0, dataDir=''):
            self.name = name
            self.os = os
            self.hostname = hostname
            self.release = release
            self.version = version
            self.machine = machine
            self.nProcessors = nProcessors
            self.dataDir = dataDir

        def __hash__(self):
            _h = 0
            _h = 5 * _h + Ice.getHash(self.name)
            _h = 5 * _h + Ice.getHash(self.os)
            _h = 5 * _h + Ice.getHash(self.hostname)
            _h = 5 * _h + Ice.getHash(self.release)
            _h = 5 * _h + Ice.getHash(self.version)
            _h = 5 * _h + Ice.getHash(self.machine)
            _h = 5 * _h + Ice.getHash(self.nProcessors)
            _h = 5 * _h + Ice.getHash(self.dataDir)
            return _h % 0x7fffffff

        def __compare(self, other):
            if other is None:
                return 1
            elif not isinstance(other, _M_IceGrid.NodeInfo):
                return NotImplemented
            else:
                if self.name is None or other.name is None:
                    if self.name != other.name:
                        return (-1 if self.name is None else 1)
                else:
                    if self.name < other.name:
                        return -1
                    elif self.name > other.name:
                        return 1
                if self.os is None or other.os is None:
                    if self.os != other.os:
                        return (-1 if self.os is None else 1)
                else:
                    if self.os < other.os:
                        return -1
                    elif self.os > other.os:
                        return 1
                if self.hostname is None or other.hostname is None:
                    if self.hostname != other.hostname:
                        return (-1 if self.hostname is None else 1)
                else:
                    if self.hostname < other.hostname:
                        return -1
                    elif self.hostname > other.hostname:
                        return 1
                if self.release is None or other.release is None:
                    if self.release != other.release:
                        return (-1 if self.release is None else 1)
                else:
                    if self.release < other.release:
                        return -1
                    elif self.release > other.release:
                        return 1
                if self.version is None or other.version is None:
                    if self.version != other.version:
                        return (-1 if self.version is None else 1)
                else:
                    if self.version < other.version:
                        return -1
                    elif self.version > other.version:
                        return 1
                if self.machine is None or other.machine is None:
                    if self.machine != other.machine:
                        return (-1 if self.machine is None else 1)
                else:
                    if self.machine < other.machine:
                        return -1
                    elif self.machine > other.machine:
                        return 1
                if self.nProcessors is None or other.nProcessors is None:
                    if self.nProcessors != other.nProcessors:
                        return (-1 if self.nProcessors is None else 1)
                else:
                    if self.nProcessors < other.nProcessors:
                        return -1
                    elif self.nProcessors > other.nProcessors:
                        return 1
                if self.dataDir is None or other.dataDir is None:
                    if self.dataDir != other.dataDir:
                        return (-1 if self.dataDir is None else 1)
                else:
                    if self.dataDir < other.dataDir:
                        return -1
                    elif self.dataDir > other.dataDir:
                        return 1
                return 0

        def __lt__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r < 0

        def __le__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r <= 0

        def __gt__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r > 0

        def __ge__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r >= 0

        def __eq__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r == 0

        def __ne__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r != 0

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_NodeInfo)

        __repr__ = __str__

    _M_IceGrid._t_NodeInfo = IcePy.defineStruct('::IceGrid::NodeInfo', NodeInfo, (), (
        ('name', (), IcePy._t_string),
        ('os', (), IcePy._t_string),
        ('hostname', (), IcePy._t_string),
        ('release', (), IcePy._t_string),
        ('version', (), IcePy._t_string),
        ('machine', (), IcePy._t_string),
        ('nProcessors', (), IcePy._t_int),
        ('dataDir', (), IcePy._t_string)
    ))

    _M_IceGrid.NodeInfo = NodeInfo
    del NodeInfo

if 'RegistryInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.RegistryInfo = Ice.createTempClass()
    class RegistryInfo(object):
        """
        Information about an IceGrid registry replica.
        Members:
        name -- The name of the registry.
        hostname -- The network name of the host running this registry (as defined in
        uname()).
        """
        def __init__(self, name='', hostname=''):
            self.name = name
            self.hostname = hostname

        def __hash__(self):
            _h = 0
            _h = 5 * _h + Ice.getHash(self.name)
            _h = 5 * _h + Ice.getHash(self.hostname)
            return _h % 0x7fffffff

        def __compare(self, other):
            if other is None:
                return 1
            elif not isinstance(other, _M_IceGrid.RegistryInfo):
                return NotImplemented
            else:
                if self.name is None or other.name is None:
                    if self.name != other.name:
                        return (-1 if self.name is None else 1)
                else:
                    if self.name < other.name:
                        return -1
                    elif self.name > other.name:
                        return 1
                if self.hostname is None or other.hostname is None:
                    if self.hostname != other.hostname:
                        return (-1 if self.hostname is None else 1)
                else:
                    if self.hostname < other.hostname:
                        return -1
                    elif self.hostname > other.hostname:
                        return 1
                return 0

        def __lt__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r < 0

        def __le__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r <= 0

        def __gt__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r > 0

        def __ge__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r >= 0

        def __eq__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r == 0

        def __ne__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r != 0

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_RegistryInfo)

        __repr__ = __str__

    _M_IceGrid._t_RegistryInfo = IcePy.defineStruct('::IceGrid::RegistryInfo', RegistryInfo, (), (
        ('name', (), IcePy._t_string),
        ('hostname', (), IcePy._t_string)
    ))

    _M_IceGrid.RegistryInfo = RegistryInfo
    del RegistryInfo

if '_t_RegistryInfoSeq' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_RegistryInfoSeq = IcePy.defineSequence('::IceGrid::RegistryInfoSeq', (), _M_IceGrid._t_RegistryInfo)

if 'LoadInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.LoadInfo = Ice.createTempClass()
    class LoadInfo(object):
        """
        Information about the load of a node.
        Members:
        avg1 -- The load average over the past minute.
        avg5 -- The load average over the past 5 minutes.
        avg15 -- The load average over the past 15 minutes.
        """
        def __init__(self, avg1=0.0, avg5=0.0, avg15=0.0):
            self.avg1 = avg1
            self.avg5 = avg5
            self.avg15 = avg15

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.LoadInfo):
                return NotImplemented
            else:
                if self.avg1 != other.avg1:
                    return False
                if self.avg5 != other.avg5:
                    return False
                if self.avg15 != other.avg15:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_LoadInfo)

        __repr__ = __str__

    _M_IceGrid._t_LoadInfo = IcePy.defineStruct('::IceGrid::LoadInfo', LoadInfo, (), (
        ('avg1', (), IcePy._t_float),
        ('avg5', (), IcePy._t_float),
        ('avg15', (), IcePy._t_float)
    ))

    _M_IceGrid.LoadInfo = LoadInfo
    del LoadInfo

if 'ApplicationInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.ApplicationInfo = Ice.createTempClass()
    class ApplicationInfo(object):
        """
        Information about an IceGrid application.
        Members:
        uuid -- Unique application identifier.
        createTime -- The creation time.
        createUser -- The user who created the application.
        updateTime -- The update time.
        updateUser -- The user who updated the application.
        revision -- The application revision number.
        descriptor -- The application descriptor
        """
        def __init__(self, uuid='', createTime=0, createUser='', updateTime=0, updateUser='', revision=0, descriptor=Ice._struct_marker):
            self.uuid = uuid
            self.createTime = createTime
            self.createUser = createUser
            self.updateTime = updateTime
            self.updateUser = updateUser
            self.revision = revision
            if descriptor is Ice._struct_marker:
                self.descriptor = _M_IceGrid.ApplicationDescriptor()
            else:
                self.descriptor = descriptor

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.ApplicationInfo):
                return NotImplemented
            else:
                if self.uuid != other.uuid:
                    return False
                if self.createTime != other.createTime:
                    return False
                if self.createUser != other.createUser:
                    return False
                if self.updateTime != other.updateTime:
                    return False
                if self.updateUser != other.updateUser:
                    return False
                if self.revision != other.revision:
                    return False
                if self.descriptor != other.descriptor:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_ApplicationInfo)

        __repr__ = __str__

    _M_IceGrid._t_ApplicationInfo = IcePy.defineStruct('::IceGrid::ApplicationInfo', ApplicationInfo, (), (
        ('uuid', (), IcePy._t_string),
        ('createTime', (), IcePy._t_long),
        ('createUser', (), IcePy._t_string),
        ('updateTime', (), IcePy._t_long),
        ('updateUser', (), IcePy._t_string),
        ('revision', (), IcePy._t_int),
        ('descriptor', (), _M_IceGrid._t_ApplicationDescriptor)
    ))

    _M_IceGrid.ApplicationInfo = ApplicationInfo
    del ApplicationInfo

if '_t_ApplicationInfoSeq' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_ApplicationInfoSeq = IcePy.defineSequence('::IceGrid::ApplicationInfoSeq', (), _M_IceGrid._t_ApplicationInfo)

if 'ApplicationUpdateInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.ApplicationUpdateInfo = Ice.createTempClass()
    class ApplicationUpdateInfo(object):
        """
        Information about updates to an IceGrid application.
        Members:
        updateTime -- The update time.
        updateUser -- The user who updated the application.
        revision -- The application revision number.
        descriptor -- The update descriptor.
        """
        def __init__(self, updateTime=0, updateUser='', revision=0, descriptor=Ice._struct_marker):
            self.updateTime = updateTime
            self.updateUser = updateUser
            self.revision = revision
            if descriptor is Ice._struct_marker:
                self.descriptor = _M_IceGrid.ApplicationUpdateDescriptor()
            else:
                self.descriptor = descriptor

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.ApplicationUpdateInfo):
                return NotImplemented
            else:
                if self.updateTime != other.updateTime:
                    return False
                if self.updateUser != other.updateUser:
                    return False
                if self.revision != other.revision:
                    return False
                if self.descriptor != other.descriptor:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_ApplicationUpdateInfo)

        __repr__ = __str__

    _M_IceGrid._t_ApplicationUpdateInfo = IcePy.defineStruct('::IceGrid::ApplicationUpdateInfo', ApplicationUpdateInfo, (), (
        ('updateTime', (), IcePy._t_long),
        ('updateUser', (), IcePy._t_string),
        ('revision', (), IcePy._t_int),
        ('descriptor', (), _M_IceGrid._t_ApplicationUpdateDescriptor)
    ))

    _M_IceGrid.ApplicationUpdateInfo = ApplicationUpdateInfo
    del ApplicationUpdateInfo

_M_IceGrid._t_Admin = IcePy.defineValue('::IceGrid::Admin', Ice.Value, -1, (), False, True, None, ())

if 'AdminPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.AdminPrx = Ice.createTempClass()
    class AdminPrx(Ice.ObjectPrx):

        """
        Add an application to IceGrid.
        Arguments:
        descriptor -- The application descriptor.
        context -- The request context for the invocation.
        Throws:
        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.
        """
        def addApplication(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_addApplication.invoke(self, ((descriptor, ), context))

        """
        Add an application to IceGrid.
        Arguments:
        descriptor -- The application descriptor.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def addApplicationAsync(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_addApplication.invokeAsync(self, ((descriptor, ), context))

        """
        Add an application to IceGrid.
        Arguments:
        descriptor -- The application descriptor.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_addApplication(self, descriptor, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_addApplication.begin(self, ((descriptor, ), _response, _ex, _sent, context))

        """
        Add an application to IceGrid.
        Arguments:
        descriptor -- The application descriptor.
        Throws:
        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.
        """
        def end_addApplication(self, _r):
            return _M_IceGrid.Admin._op_addApplication.end(self, _r)

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this new descriptor.
        Arguments:
        descriptor -- The application descriptor.
        context -- The request context for the invocation.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def syncApplication(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_syncApplication.invoke(self, ((descriptor, ), context))

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this new descriptor.
        Arguments:
        descriptor -- The application descriptor.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def syncApplicationAsync(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_syncApplication.invokeAsync(self, ((descriptor, ), context))

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this new descriptor.
        Arguments:
        descriptor -- The application descriptor.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_syncApplication(self, descriptor, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_syncApplication.begin(self, ((descriptor, ), _response, _ex, _sent, context))

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this new descriptor.
        Arguments:
        descriptor -- The application descriptor.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def end_syncApplication(self, _r):
            return _M_IceGrid.Admin._op_syncApplication.end(self, _r)

        """
        Update a deployed application with the given update application
        descriptor.
        Arguments:
        descriptor -- The update descriptor.
        context -- The request context for the invocation.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def updateApplication(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_updateApplication.invoke(self, ((descriptor, ), context))

        """
        Update a deployed application with the given update application
        descriptor.
        Arguments:
        descriptor -- The update descriptor.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def updateApplicationAsync(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_updateApplication.invokeAsync(self, ((descriptor, ), context))

        """
        Update a deployed application with the given update application
        descriptor.
        Arguments:
        descriptor -- The update descriptor.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_updateApplication(self, descriptor, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_updateApplication.begin(self, ((descriptor, ), _response, _ex, _sent, context))

        """
        Update a deployed application with the given update application
        descriptor.
        Arguments:
        descriptor -- The update descriptor.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def end_updateApplication(self, _r):
            return _M_IceGrid.Admin._op_updateApplication.end(self, _r)

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this 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.
        Arguments:
        descriptor -- The application descriptor.
        context -- The request context for the invocation.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def syncApplicationWithoutRestart(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_syncApplicationWithoutRestart.invoke(self, ((descriptor, ), context))

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this 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.
        Arguments:
        descriptor -- The application descriptor.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def syncApplicationWithoutRestartAsync(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_syncApplicationWithoutRestart.invokeAsync(self, ((descriptor, ), context))

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this 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.
        Arguments:
        descriptor -- The application descriptor.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_syncApplicationWithoutRestart(self, descriptor, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_syncApplicationWithoutRestart.begin(self, ((descriptor, ), _response, _ex, _sent, context))

        """
        Synchronize a deployed application with the given application
        descriptor. This operation will replace the current descriptor
        with this 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.
        Arguments:
        descriptor -- The application descriptor.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def end_syncApplicationWithoutRestart(self, _r):
            return _M_IceGrid.Admin._op_syncApplicationWithoutRestart.end(self, _r)

        """
        Update a deployed application with the given update application
        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.
        Arguments:
        descriptor -- The update descriptor.
        context -- The request context for the invocation.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def updateApplicationWithoutRestart(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_updateApplicationWithoutRestart.invoke(self, ((descriptor, ), context))

        """
        Update a deployed application with the given update application
        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.
        Arguments:
        descriptor -- The update descriptor.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def updateApplicationWithoutRestartAsync(self, descriptor, context=None):
            return _M_IceGrid.Admin._op_updateApplicationWithoutRestart.invokeAsync(self, ((descriptor, ), context))

        """
        Update a deployed application with the given update application
        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.
        Arguments:
        descriptor -- The update descriptor.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_updateApplicationWithoutRestart(self, descriptor, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_updateApplicationWithoutRestart.begin(self, ((descriptor, ), _response, _ex, _sent, context))

        """
        Update a deployed application with the given update application
        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.
        Arguments:
        descriptor -- The update descriptor.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def end_updateApplicationWithoutRestart(self, _r):
            return _M_IceGrid.Admin._op_updateApplicationWithoutRestart.end(self, _r)

        """
        Remove an application from IceGrid.
        Arguments:
        name -- The application name.
        context -- The request context for the invocation.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def removeApplication(self, name, context=None):
            return _M_IceGrid.Admin._op_removeApplication.invoke(self, ((name, ), context))

        """
        Remove an application from IceGrid.
        Arguments:
        name -- The application name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def removeApplicationAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_removeApplication.invokeAsync(self, ((name, ), context))

        """
        Remove an application from IceGrid.
        Arguments:
        name -- The application name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_removeApplication(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_removeApplication.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Remove an application from IceGrid.
        Arguments:
        name -- The application name.
        Throws:
        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.
        DeploymentException -- Raised if application deployment failed.
        """
        def end_removeApplication(self, _r):
            return _M_IceGrid.Admin._op_removeApplication.end(self, _r)

        """
        Instantiate a server template from an application on the given
        node.
        Arguments:
        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.
        context -- The request context for the invocation.
        Throws:
        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.
        DeploymentException -- Raised if server instantiation failed.
        """
        def instantiateServer(self, application, node, desc, context=None):
            return _M_IceGrid.Admin._op_instantiateServer.invoke(self, ((application, node, desc), context))

        """
        Instantiate a server template from an application on the given
        node.
        Arguments:
        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.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def instantiateServerAsync(self, application, node, desc, context=None):
            return _M_IceGrid.Admin._op_instantiateServer.invokeAsync(self, ((application, node, desc), context))

        """
        Instantiate a server template from an application on the given
        node.
        Arguments:
        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.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_instantiateServer(self, application, node, desc, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_instantiateServer.begin(self, ((application, node, desc), _response, _ex, _sent, context))

        """
        Instantiate a server template from an application on the given
        node.
        Arguments:
        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.
        Throws:
        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.
        DeploymentException -- Raised if server instantiation failed.
        """
        def end_instantiateServer(self, _r):
            return _M_IceGrid.Admin._op_instantiateServer.end(self, _r)

        """
        Patch the given application data.
        Arguments:
        name -- The application name.
        shutdown -- If true, the servers depending on the data to patch will be shut down if necessary.
        context -- The request context for the invocation.
        Throws:
        ApplicationNotExistException -- Raised if the application doesn't exist.
        PatchException -- Raised if the patch failed.
        """
        def patchApplication(self, name, shutdown, context=None):
            return _M_IceGrid.Admin._op_patchApplication.invoke(self, ((name, shutdown), context))

        """
        Patch the given application data.
        Arguments:
        name -- The application name.
        shutdown -- If true, the servers depending on the data to patch will be shut down if necessary.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def patchApplicationAsync(self, name, shutdown, context=None):
            return _M_IceGrid.Admin._op_patchApplication.invokeAsync(self, ((name, shutdown), context))

        """
        Patch the given application data.
        Arguments:
        name -- The application name.
        shutdown -- If true, the servers depending on the data to patch will be shut down if necessary.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_patchApplication(self, name, shutdown, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_patchApplication.begin(self, ((name, shutdown), _response, _ex, _sent, context))

        """
        Patch the given application data.
        Arguments:
        name -- The application name.
        shutdown -- If true, the servers depending on the data to patch will be shut down if necessary.
        Throws:
        ApplicationNotExistException -- Raised if the application doesn't exist.
        PatchException -- Raised if the patch failed.
        """
        def end_patchApplication(self, _r):
            return _M_IceGrid.Admin._op_patchApplication.end(self, _r)

        """
        Get an application descriptor.
        Arguments:
        name -- The application name.
        context -- The request context for the invocation.
        Returns: The application descriptor.
        Throws:
        ApplicationNotExistException -- Raised if the application doesn't exist.
        """
        def getApplicationInfo(self, name, context=None):
            return _M_IceGrid.Admin._op_getApplicationInfo.invoke(self, ((name, ), context))

        """
        Get an application descriptor.
        Arguments:
        name -- The application name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getApplicationInfoAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getApplicationInfo.invokeAsync(self, ((name, ), context))

        """
        Get an application descriptor.
        Arguments:
        name -- The application name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getApplicationInfo(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getApplicationInfo.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get an application descriptor.
        Arguments:
        name -- The application name.
        Returns: The application descriptor.
        Throws:
        ApplicationNotExistException -- Raised if the application doesn't exist.
        """
        def end_getApplicationInfo(self, _r):
            return _M_IceGrid.Admin._op_getApplicationInfo.end(self, _r)

        """
        Get the default application descriptor.
        Arguments:
        context -- The request context for the invocation.
        Returns: The default application descriptor.
        Throws:
        DeploymentException -- Raised if the default application descriptor can't be accessed or is invalid.
        """
        def getDefaultApplicationDescriptor(self, context=None):
            return _M_IceGrid.Admin._op_getDefaultApplicationDescriptor.invoke(self, ((), context))

        """
        Get the default application descriptor.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getDefaultApplicationDescriptorAsync(self, context=None):
            return _M_IceGrid.Admin._op_getDefaultApplicationDescriptor.invokeAsync(self, ((), context))

        """
        Get the default application descriptor.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getDefaultApplicationDescriptor(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getDefaultApplicationDescriptor.begin(self, ((), _response, _ex, _sent, context))

        """
        Get the default application descriptor.
        Arguments:
        Returns: The default application descriptor.
        Throws:
        DeploymentException -- Raised if the default application descriptor can't be accessed or is invalid.
        """
        def end_getDefaultApplicationDescriptor(self, _r):
            return _M_IceGrid.Admin._op_getDefaultApplicationDescriptor.end(self, _r)

        """
        Get all the IceGrid applications currently registered.
        Arguments:
        context -- The request context for the invocation.
        Returns: The application names.
        """
        def getAllApplicationNames(self, context=None):
            return _M_IceGrid.Admin._op_getAllApplicationNames.invoke(self, ((), context))

        """
        Get all the IceGrid applications currently registered.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAllApplicationNamesAsync(self, context=None):
            return _M_IceGrid.Admin._op_getAllApplicationNames.invokeAsync(self, ((), context))

        """
        Get all the IceGrid applications currently registered.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAllApplicationNames(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getAllApplicationNames.begin(self, ((), _response, _ex, _sent, context))

        """
        Get all the IceGrid applications currently registered.
        Arguments:
        Returns: The application names.
        """
        def end_getAllApplicationNames(self, _r):
            return _M_IceGrid.Admin._op_getAllApplicationNames.end(self, _r)

        """
        Get the server information for the server with the given id.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: The server information.
        Throws:
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def getServerInfo(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerInfo.invoke(self, ((id, ), context))

        """
        Get the server information for the server with the given id.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getServerInfoAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerInfo.invokeAsync(self, ((id, ), context))

        """
        Get the server information for the server with the given id.
        Arguments:
        id -- The server id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getServerInfo(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getServerInfo.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Get the server information for the server with the given id.
        Arguments:
        id -- The server id.
        Returns: The server information.
        Throws:
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_getServerInfo(self, _r):
            return _M_IceGrid.Admin._op_getServerInfo.end(self, _r)

        """
        Get a server's state.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: The server state.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def getServerState(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerState.invoke(self, ((id, ), context))

        """
        Get a server's state.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getServerStateAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerState.invokeAsync(self, ((id, ), context))

        """
        Get a server's state.
        Arguments:
        id -- The server id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getServerState(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getServerState.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Get a server's state.
        Arguments:
        id -- The server id.
        Returns: The server state.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_getServerState(self, _r):
            return _M_IceGrid.Admin._op_getServerState.end(self, _r)

        """
        Get a server's system process id. The process id is operating
        system dependent.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: The server's process id.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def getServerPid(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerPid.invoke(self, ((id, ), context))

        """
        Get a server's system process id. The process id is operating
        system dependent.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getServerPidAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerPid.invokeAsync(self, ((id, ), context))

        """
        Get a server's system process id. The process id is operating
        system dependent.
        Arguments:
        id -- The server id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getServerPid(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getServerPid.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Get a server's system process id. The process id is operating
        system dependent.
        Arguments:
        id -- The server id.
        Returns: The server's process id.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_getServerPid(self, _r):
            return _M_IceGrid.Admin._op_getServerPid.end(self, _r)

        """
        Get 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.
        Arguments:
        context -- The request context for the invocation.
        Returns: The category for server admin objects.
        """
        def getServerAdminCategory(self, context=None):
            return _M_IceGrid.Admin._op_getServerAdminCategory.invoke(self, ((), context))

        """
        Get 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.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getServerAdminCategoryAsync(self, context=None):
            return _M_IceGrid.Admin._op_getServerAdminCategory.invokeAsync(self, ((), context))

        """
        Get 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.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getServerAdminCategory(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getServerAdminCategory.begin(self, ((), _response, _ex, _sent, context))

        """
        Get 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.
        Arguments:
        Returns: The category for server admin objects.
        """
        def end_getServerAdminCategory(self, _r):
            return _M_IceGrid.Admin._op_getServerAdminCategory.end(self, _r)

        """
        Get a proxy to the server's admin object.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A proxy to the server's admin object
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def getServerAdmin(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerAdmin.invoke(self, ((id, ), context))

        """
        Get a proxy to the server's admin object.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getServerAdminAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_getServerAdmin.invokeAsync(self, ((id, ), context))

        """
        Get a proxy to the server's admin object.
        Arguments:
        id -- The server id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getServerAdmin(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getServerAdmin.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Get a proxy to the server's admin object.
        Arguments:
        id -- The server id.
        Returns: A proxy to the server's admin object
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_getServerAdmin(self, _r):
            return _M_IceGrid.Admin._op_getServerAdmin.end(self, _r)

        """
        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 shut down and restarted, the
        server will be enabled by default.
        Arguments:
        id -- The server id.
        enabled -- True to enable the server, false to disable it.
        context -- The request context for the invocation.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def enableServer(self, id, enabled, context=None):
            return _M_IceGrid.Admin._op_enableServer.invoke(self, ((id, enabled), context))

        """
        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 shut down and restarted, the
        server will be enabled by default.
        Arguments:
        id -- The server id.
        enabled -- True to enable the server, false to disable it.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def enableServerAsync(self, id, enabled, context=None):
            return _M_IceGrid.Admin._op_enableServer.invokeAsync(self, ((id, enabled), context))

        """
        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 shut down and restarted, the
        server will be enabled by default.
        Arguments:
        id -- The server id.
        enabled -- True to enable the server, false to disable it.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_enableServer(self, id, enabled, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_enableServer.begin(self, ((id, enabled), _response, _ex, _sent, context))

        """
        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 shut down and restarted, the
        server will be enabled by default.
        Arguments:
        id -- The server id.
        enabled -- True to enable the server, false to disable it.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_enableServer(self, _r):
            return _M_IceGrid.Admin._op_enableServer.end(self, _r)

        """
        Check if the server is enabled or disabled.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: True if the server is enabled.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def isServerEnabled(self, id, context=None):
            return _M_IceGrid.Admin._op_isServerEnabled.invoke(self, ((id, ), context))

        """
        Check if the server is enabled or disabled.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def isServerEnabledAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_isServerEnabled.invokeAsync(self, ((id, ), context))

        """
        Check if the server is enabled or disabled.
        Arguments:
        id -- The server id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_isServerEnabled(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_isServerEnabled.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Check if the server is enabled or disabled.
        Arguments:
        id -- The server id.
        Returns: True if the server is enabled.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_isServerEnabled(self, _r):
            return _M_IceGrid.Admin._op_isServerEnabled.end(self, _r)

        """
        Start a server and wait for its activation.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        ServerStartException -- Raised if the server couldn't be started.
        """
        def startServer(self, id, context=None):
            return _M_IceGrid.Admin._op_startServer.invoke(self, ((id, ), context))

        """
        Start a server and wait for its activation.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def startServerAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_startServer.invokeAsync(self, ((id, ), context))

        """
        Start a server and wait for its activation.
        Arguments:
        id -- The server id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_startServer(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_startServer.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Start a server and wait for its activation.
        Arguments:
        id -- The server id.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        ServerStartException -- Raised if the server couldn't be started.
        """
        def end_startServer(self, _r):
            return _M_IceGrid.Admin._op_startServer.end(self, _r)

        """
        Stop a server.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        ServerStopException -- Raised if the server couldn't be stopped.
        """
        def stopServer(self, id, context=None):
            return _M_IceGrid.Admin._op_stopServer.invoke(self, ((id, ), context))

        """
        Stop a server.
        Arguments:
        id -- The server id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def stopServerAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_stopServer.invokeAsync(self, ((id, ), context))

        """
        Stop a server.
        Arguments:
        id -- The server id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_stopServer(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_stopServer.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Stop a server.
        Arguments:
        id -- The server id.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        ServerStopException -- Raised if the server couldn't be stopped.
        """
        def end_stopServer(self, _r):
            return _M_IceGrid.Admin._op_stopServer.end(self, _r)

        """
        Patch a server.
        Arguments:
        id -- The server id.
        shutdown -- If true, servers depending on the data to patch will be shut down if necessary.
        context -- The request context for the invocation.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        PatchException -- Raised if the patch failed.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def patchServer(self, id, shutdown, context=None):
            return _M_IceGrid.Admin._op_patchServer.invoke(self, ((id, shutdown), context))

        """
        Patch a server.
        Arguments:
        id -- The server id.
        shutdown -- If true, servers depending on the data to patch will be shut down if necessary.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def patchServerAsync(self, id, shutdown, context=None):
            return _M_IceGrid.Admin._op_patchServer.invokeAsync(self, ((id, shutdown), context))

        """
        Patch a server.
        Arguments:
        id -- The server id.
        shutdown -- If true, servers depending on the data to patch will be shut down if necessary.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_patchServer(self, id, shutdown, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_patchServer.begin(self, ((id, shutdown), _response, _ex, _sent, context))

        """
        Patch a server.
        Arguments:
        id -- The server id.
        shutdown -- If true, servers depending on the data to patch will be shut down if necessary.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        PatchException -- Raised if the patch failed.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_patchServer(self, _r):
            return _M_IceGrid.Admin._op_patchServer.end(self, _r)

        """
        Send signal to a server.
        Arguments:
        id -- The server id.
        signal -- The signal, for example SIGTERM or 15.
        context -- The request context for the invocation.
        Throws:
        BadSignalException -- Raised if the signal is not recognized by the target server.
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def sendSignal(self, id, signal, context=None):
            return _M_IceGrid.Admin._op_sendSignal.invoke(self, ((id, signal), context))

        """
        Send signal to a server.
        Arguments:
        id -- The server id.
        signal -- The signal, for example SIGTERM or 15.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def sendSignalAsync(self, id, signal, context=None):
            return _M_IceGrid.Admin._op_sendSignal.invokeAsync(self, ((id, signal), context))

        """
        Send signal to a server.
        Arguments:
        id -- The server id.
        signal -- The signal, for example SIGTERM or 15.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_sendSignal(self, id, signal, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_sendSignal.begin(self, ((id, signal), _response, _ex, _sent, context))

        """
        Send signal to a server.
        Arguments:
        id -- The server id.
        signal -- The signal, for example SIGTERM or 15.
        Throws:
        BadSignalException -- Raised if the signal is not recognized by the target server.
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_sendSignal(self, _r):
            return _M_IceGrid.Admin._op_sendSignal.end(self, _r)

        """
        Get all the server ids registered with IceGrid.
        Arguments:
        context -- The request context for the invocation.
        Returns: The server ids.
        """
        def getAllServerIds(self, context=None):
            return _M_IceGrid.Admin._op_getAllServerIds.invoke(self, ((), context))

        """
        Get all the server ids registered with IceGrid.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAllServerIdsAsync(self, context=None):
            return _M_IceGrid.Admin._op_getAllServerIds.invokeAsync(self, ((), context))

        """
        Get all the server ids registered with IceGrid.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAllServerIds(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getAllServerIds.begin(self, ((), _response, _ex, _sent, context))

        """
        Get all the server ids registered with IceGrid.
        Arguments:
        Returns: The server ids.
        """
        def end_getAllServerIds(self, _r):
            return _M_IceGrid.Admin._op_getAllServerIds.end(self, _r)

        """
        Get the adapter information for the replica group or adapter
        with the given id.
        Arguments:
        id -- The adapter id.
        context -- The request context for the invocation.
        Returns: 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.
        Throws:
        AdapterNotExistException -- Raised if the adapter or replica group doesn't exist.
        """
        def getAdapterInfo(self, id, context=None):
            return _M_IceGrid.Admin._op_getAdapterInfo.invoke(self, ((id, ), context))

        """
        Get the adapter information for the replica group or adapter
        with the given id.
        Arguments:
        id -- The adapter id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAdapterInfoAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_getAdapterInfo.invokeAsync(self, ((id, ), context))

        """
        Get the adapter information for the replica group or adapter
        with the given id.
        Arguments:
        id -- The adapter id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAdapterInfo(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getAdapterInfo.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Get the adapter information for the replica group or adapter
        with the given id.
        Arguments:
        id -- The adapter id.
        Returns: 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.
        Throws:
        AdapterNotExistException -- Raised if the adapter or replica group doesn't exist.
        """
        def end_getAdapterInfo(self, _r):
            return _M_IceGrid.Admin._op_getAdapterInfo.end(self, _r)

        """
        Remove the adapter with the given id.
        Arguments:
        id -- The adapter id.
        context -- The request context for the invocation.
        Throws:
        AdapterNotExistException -- Raised if the adapter doesn't exist.
        DeploymentException -- Raised if application deployment failed.
        """
        def removeAdapter(self, id, context=None):
            return _M_IceGrid.Admin._op_removeAdapter.invoke(self, ((id, ), context))

        """
        Remove the adapter with the given id.
        Arguments:
        id -- The adapter id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def removeAdapterAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_removeAdapter.invokeAsync(self, ((id, ), context))

        """
        Remove the adapter with the given id.
        Arguments:
        id -- The adapter id.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_removeAdapter(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_removeAdapter.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Remove the adapter with the given id.
        Arguments:
        id -- The adapter id.
        Throws:
        AdapterNotExistException -- Raised if the adapter doesn't exist.
        DeploymentException -- Raised if application deployment failed.
        """
        def end_removeAdapter(self, _r):
            return _M_IceGrid.Admin._op_removeAdapter.end(self, _r)

        """
        Get all the adapter ids registered with IceGrid.
        Arguments:
        context -- The request context for the invocation.
        Returns: The adapter ids.
        """
        def getAllAdapterIds(self, context=None):
            return _M_IceGrid.Admin._op_getAllAdapterIds.invoke(self, ((), context))

        """
        Get all the adapter ids registered with IceGrid.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAllAdapterIdsAsync(self, context=None):
            return _M_IceGrid.Admin._op_getAllAdapterIds.invokeAsync(self, ((), context))

        """
        Get all the adapter ids registered with IceGrid.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAllAdapterIds(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getAllAdapterIds.begin(self, ((), _response, _ex, _sent, context))

        """
        Get all the adapter ids registered with IceGrid.
        Arguments:
        Returns: The adapter ids.
        """
        def end_getAllAdapterIds(self, _r):
            return _M_IceGrid.Admin._op_getAllAdapterIds.end(self, _r)

        """
        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.
        Arguments:
        obj -- The object to be added to the registry.
        context -- The request context for the invocation.
        Throws:
        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.
        ObjectExistsException -- Raised if the object is already registered.
        """
        def addObject(self, obj, context=None):
            return _M_IceGrid.Admin._op_addObject.invoke(self, ((obj, ), context))

        """
        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.
        Arguments:
        obj -- The object to be added to the registry.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def addObjectAsync(self, obj, context=None):
            return _M_IceGrid.Admin._op_addObject.invokeAsync(self, ((obj, ), context))

        """
        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.
        Arguments:
        obj -- The object to be added to the registry.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_addObject(self, obj, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_addObject.begin(self, ((obj, ), _response, _ex, _sent, context))

        """
        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.
        Arguments:
        obj -- The object to be added to the registry.
        Throws:
        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.
        ObjectExistsException -- Raised if the object is already registered.
        """
        def end_addObject(self, _r):
            return _M_IceGrid.Admin._op_addObject.end(self, _r)

        """
        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.
        Arguments:
        obj -- The object to be updated to the registry.
        context -- The request context for the invocation.
        Throws:
        DeploymentException -- Raised if the object can't be updated. This might happen if the object was added with a deployment descriptor.
        ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
        """
        def updateObject(self, obj, context=None):
            return _M_IceGrid.Admin._op_updateObject.invoke(self, ((obj, ), context))

        """
        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.
        Arguments:
        obj -- The object to be updated to the registry.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def updateObjectAsync(self, obj, context=None):
            return _M_IceGrid.Admin._op_updateObject.invokeAsync(self, ((obj, ), context))

        """
        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.
        Arguments:
        obj -- The object to be updated to the registry.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_updateObject(self, obj, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_updateObject.begin(self, ((obj, ), _response, _ex, _sent, context))

        """
        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.
        Arguments:
        obj -- The object to be updated to the registry.
        Throws:
        DeploymentException -- Raised if the object can't be updated. This might happen if the object was added with a deployment descriptor.
        ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
        """
        def end_updateObject(self, _r):
            return _M_IceGrid.Admin._op_updateObject.end(self, _r)

        """
        Add an object to the object registry and explicitly specify
        its type.
        Arguments:
        obj -- The object to be added to the registry.
        type -- The object type.
        context -- The request context for the invocation.
        Throws:
        DeploymentException -- Raised if application deployment failed.
        ObjectExistsException -- Raised if the object is already registered.
        """
        def addObjectWithType(self, obj, type, context=None):
            return _M_IceGrid.Admin._op_addObjectWithType.invoke(self, ((obj, type), context))

        """
        Add an object to the object registry and explicitly specify
        its type.
        Arguments:
        obj -- The object to be added to the registry.
        type -- The object type.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def addObjectWithTypeAsync(self, obj, type, context=None):
            return _M_IceGrid.Admin._op_addObjectWithType.invokeAsync(self, ((obj, type), context))

        """
        Add an object to the object registry and explicitly specify
        its type.
        Arguments:
        obj -- The object to be added to the registry.
        type -- The object type.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_addObjectWithType(self, obj, type, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_addObjectWithType.begin(self, ((obj, type), _response, _ex, _sent, context))

        """
        Add an object to the object registry and explicitly specify
        its type.
        Arguments:
        obj -- The object to be added to the registry.
        type -- The object type.
        Throws:
        DeploymentException -- Raised if application deployment failed.
        ObjectExistsException -- Raised if the object is already registered.
        """
        def end_addObjectWithType(self, _r):
            return _M_IceGrid.Admin._op_addObjectWithType.end(self, _r)

        """
        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.
        Arguments:
        id -- The identity of the object to be removed from the registry.
        context -- The request context for the invocation.
        Throws:
        DeploymentException -- Raised if the object can't be removed. This might happen if the object was added with a deployment descriptor.
        ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
        """
        def removeObject(self, id, context=None):
            return _M_IceGrid.Admin._op_removeObject.invoke(self, ((id, ), context))

        """
        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.
        Arguments:
        id -- The identity of the object to be removed from the registry.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def removeObjectAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_removeObject.invokeAsync(self, ((id, ), context))

        """
        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.
        Arguments:
        id -- The identity of the object to be removed from the registry.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_removeObject(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_removeObject.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        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.
        Arguments:
        id -- The identity of the object to be removed from the registry.
        Throws:
        DeploymentException -- Raised if the object can't be removed. This might happen if the object was added with a deployment descriptor.
        ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
        """
        def end_removeObject(self, _r):
            return _M_IceGrid.Admin._op_removeObject.end(self, _r)

        """
        Get the object info for the object with the given identity.
        Arguments:
        id -- The identity of the object.
        context -- The request context for the invocation.
        Returns: The object info.
        Throws:
        ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
        """
        def getObjectInfo(self, id, context=None):
            return _M_IceGrid.Admin._op_getObjectInfo.invoke(self, ((id, ), context))

        """
        Get the object info for the object with the given identity.
        Arguments:
        id -- The identity of the object.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getObjectInfoAsync(self, id, context=None):
            return _M_IceGrid.Admin._op_getObjectInfo.invokeAsync(self, ((id, ), context))

        """
        Get the object info for the object with the given identity.
        Arguments:
        id -- The identity of the object.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getObjectInfo(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getObjectInfo.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Get the object info for the object with the given identity.
        Arguments:
        id -- The identity of the object.
        Returns: The object info.
        Throws:
        ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
        """
        def end_getObjectInfo(self, _r):
            return _M_IceGrid.Admin._op_getObjectInfo.end(self, _r)

        """
        Get the object info of all the registered objects with the
        given type.
        Arguments:
        type -- The type of the object.
        context -- The request context for the invocation.
        Returns: The object infos.
        """
        def getObjectInfosByType(self, type, context=None):
            return _M_IceGrid.Admin._op_getObjectInfosByType.invoke(self, ((type, ), context))

        """
        Get the object info of all the registered objects with the
        given type.
        Arguments:
        type -- The type of the object.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getObjectInfosByTypeAsync(self, type, context=None):
            return _M_IceGrid.Admin._op_getObjectInfosByType.invokeAsync(self, ((type, ), context))

        """
        Get the object info of all the registered objects with the
        given type.
        Arguments:
        type -- The type of the object.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getObjectInfosByType(self, type, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getObjectInfosByType.begin(self, ((type, ), _response, _ex, _sent, context))

        """
        Get the object info of all the registered objects with the
        given type.
        Arguments:
        type -- The type of the object.
        Returns: The object infos.
        """
        def end_getObjectInfosByType(self, _r):
            return _M_IceGrid.Admin._op_getObjectInfosByType.end(self, _r)

        """
        Get the object info of all the registered objects whose stringified
        identities match the given expression.
        Arguments:
        expr -- The expression to match against the stringified identities of registered objects. The expression may contain a trailing wildcard (*) character.
        context -- The request context for the invocation.
        Returns: All the object infos with a stringified identity matching the given expression.
        """
        def getAllObjectInfos(self, expr, context=None):
            return _M_IceGrid.Admin._op_getAllObjectInfos.invoke(self, ((expr, ), context))

        """
        Get the object info of all the registered objects whose stringified
        identities match the given expression.
        Arguments:
        expr -- The expression to match against the stringified identities of registered objects. The expression may contain a trailing wildcard (*) character.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAllObjectInfosAsync(self, expr, context=None):
            return _M_IceGrid.Admin._op_getAllObjectInfos.invokeAsync(self, ((expr, ), context))

        """
        Get the object info of all the registered objects whose stringified
        identities match the given expression.
        Arguments:
        expr -- The expression to match against the stringified identities of registered objects. The expression may contain a trailing wildcard (*) character.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAllObjectInfos(self, expr, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getAllObjectInfos.begin(self, ((expr, ), _response, _ex, _sent, context))

        """
        Get the object info of all the registered objects whose stringified
        identities match the given expression.
        Arguments:
        expr -- The expression to match against the stringified identities of registered objects. The expression may contain a trailing wildcard (*) character.
        Returns: All the object infos with a stringified identity matching the given expression.
        """
        def end_getAllObjectInfos(self, _r):
            return _M_IceGrid.Admin._op_getAllObjectInfos.end(self, _r)

        """
        Ping an IceGrid node to see if it is active.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: true if the node ping succeeded, false otherwise.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        """
        def pingNode(self, name, context=None):
            return _M_IceGrid.Admin._op_pingNode.invoke(self, ((name, ), context))

        """
        Ping an IceGrid node to see if it is active.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def pingNodeAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_pingNode.invokeAsync(self, ((name, ), context))

        """
        Ping an IceGrid node to see if it is active.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_pingNode(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_pingNode.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Ping an IceGrid node to see if it is active.
        Arguments:
        name -- The node name.
        Returns: true if the node ping succeeded, false otherwise.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        """
        def end_pingNode(self, _r):
            return _M_IceGrid.Admin._op_pingNode.end(self, _r)

        """
        Get the load averages of the node.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: The node load information.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def getNodeLoad(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeLoad.invoke(self, ((name, ), context))

        """
        Get the load averages of the node.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getNodeLoadAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeLoad.invokeAsync(self, ((name, ), context))

        """
        Get the load averages of the node.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getNodeLoad(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getNodeLoad.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get the load averages of the node.
        Arguments:
        name -- The node name.
        Returns: The node load information.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_getNodeLoad(self, _r):
            return _M_IceGrid.Admin._op_getNodeLoad.end(self, _r)

        """
        Get the node information for the node with the given name.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: The node information.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def getNodeInfo(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeInfo.invoke(self, ((name, ), context))

        """
        Get the node information for the node with the given name.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getNodeInfoAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeInfo.invokeAsync(self, ((name, ), context))

        """
        Get the node information for the node with the given name.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getNodeInfo(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getNodeInfo.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get the node information for the node with the given name.
        Arguments:
        name -- The node name.
        Returns: The node information.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_getNodeInfo(self, _r):
            return _M_IceGrid.Admin._op_getNodeInfo.end(self, _r)

        """
        Get a proxy to the IceGrid node's admin object.
        Arguments:
        name -- The IceGrid node name
        context -- The request context for the invocation.
        Returns: A proxy to the IceGrid node's admin object
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def getNodeAdmin(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeAdmin.invoke(self, ((name, ), context))

        """
        Get a proxy to the IceGrid node's admin object.
        Arguments:
        name -- The IceGrid node name
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getNodeAdminAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeAdmin.invokeAsync(self, ((name, ), context))

        """
        Get a proxy to the IceGrid node's admin object.
        Arguments:
        name -- The IceGrid node name
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getNodeAdmin(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getNodeAdmin.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get a proxy to the IceGrid node's admin object.
        Arguments:
        name -- The IceGrid node name
        Returns: A proxy to the IceGrid node's admin object
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_getNodeAdmin(self, _r):
            return _M_IceGrid.Admin._op_getNodeAdmin.end(self, _r)

        """
        Get the number of physical processor sockets for the machine
        running the node with the given name.
        Note that this method will return 1 on operating systems where
        this can't be automatically determined and where the
        IceGrid.Node.ProcessorSocketCount property for the node is not
        set.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: The number of processor sockets or 1 if the number of sockets can't determined.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def getNodeProcessorSocketCount(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeProcessorSocketCount.invoke(self, ((name, ), context))

        """
        Get the number of physical processor sockets for the machine
        running the node with the given name.
        Note that this method will return 1 on operating systems where
        this can't be automatically determined and where the
        IceGrid.Node.ProcessorSocketCount property for the node is not
        set.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getNodeProcessorSocketCountAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeProcessorSocketCount.invokeAsync(self, ((name, ), context))

        """
        Get the number of physical processor sockets for the machine
        running the node with the given name.
        Note that this method will return 1 on operating systems where
        this can't be automatically determined and where the
        IceGrid.Node.ProcessorSocketCount property for the node is not
        set.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getNodeProcessorSocketCount(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getNodeProcessorSocketCount.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get the number of physical processor sockets for the machine
        running the node with the given name.
        Note that this method will return 1 on operating systems where
        this can't be automatically determined and where the
        IceGrid.Node.ProcessorSocketCount property for the node is not
        set.
        Arguments:
        name -- The node name.
        Returns: The number of processor sockets or 1 if the number of sockets can't determined.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_getNodeProcessorSocketCount(self, _r):
            return _M_IceGrid.Admin._op_getNodeProcessorSocketCount.end(self, _r)

        """
        Shutdown an IceGrid node.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def shutdownNode(self, name, context=None):
            return _M_IceGrid.Admin._op_shutdownNode.invoke(self, ((name, ), context))

        """
        Shutdown an IceGrid node.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def shutdownNodeAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_shutdownNode.invokeAsync(self, ((name, ), context))

        """
        Shutdown an IceGrid node.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_shutdownNode(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_shutdownNode.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Shutdown an IceGrid node.
        Arguments:
        name -- The node name.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_shutdownNode(self, _r):
            return _M_IceGrid.Admin._op_shutdownNode.end(self, _r)

        """
        Get the hostname of this node.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: The node hostname.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def getNodeHostname(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeHostname.invoke(self, ((name, ), context))

        """
        Get the hostname of this node.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getNodeHostnameAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getNodeHostname.invokeAsync(self, ((name, ), context))

        """
        Get the hostname of this node.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getNodeHostname(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getNodeHostname.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get the hostname of this node.
        Arguments:
        name -- The node name.
        Returns: The node hostname.
        Throws:
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_getNodeHostname(self, _r):
            return _M_IceGrid.Admin._op_getNodeHostname.end(self, _r)

        """
        Get all the IceGrid nodes currently registered.
        Arguments:
        context -- The request context for the invocation.
        Returns: The node names.
        """
        def getAllNodeNames(self, context=None):
            return _M_IceGrid.Admin._op_getAllNodeNames.invoke(self, ((), context))

        """
        Get all the IceGrid nodes currently registered.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAllNodeNamesAsync(self, context=None):
            return _M_IceGrid.Admin._op_getAllNodeNames.invokeAsync(self, ((), context))

        """
        Get all the IceGrid nodes currently registered.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAllNodeNames(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getAllNodeNames.begin(self, ((), _response, _ex, _sent, context))

        """
        Get all the IceGrid nodes currently registered.
        Arguments:
        Returns: The node names.
        """
        def end_getAllNodeNames(self, _r):
            return _M_IceGrid.Admin._op_getAllNodeNames.end(self, _r)

        """
        Ping an IceGrid registry to see if it is active.
        Arguments:
        name -- The registry name.
        context -- The request context for the invocation.
        Returns: true if the registry ping succeeded, false otherwise.
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        """
        def pingRegistry(self, name, context=None):
            return _M_IceGrid.Admin._op_pingRegistry.invoke(self, ((name, ), context))

        """
        Ping an IceGrid registry to see if it is active.
        Arguments:
        name -- The registry name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def pingRegistryAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_pingRegistry.invokeAsync(self, ((name, ), context))

        """
        Ping an IceGrid registry to see if it is active.
        Arguments:
        name -- The registry name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_pingRegistry(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_pingRegistry.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Ping an IceGrid registry to see if it is active.
        Arguments:
        name -- The registry name.
        Returns: true if the registry ping succeeded, false otherwise.
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        """
        def end_pingRegistry(self, _r):
            return _M_IceGrid.Admin._op_pingRegistry.end(self, _r)

        """
        Get the registry information for the registry with the given name.
        Arguments:
        name -- The registry name.
        context -- The request context for the invocation.
        Returns: The registry information.
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def getRegistryInfo(self, name, context=None):
            return _M_IceGrid.Admin._op_getRegistryInfo.invoke(self, ((name, ), context))

        """
        Get the registry information for the registry with the given name.
        Arguments:
        name -- The registry name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getRegistryInfoAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getRegistryInfo.invokeAsync(self, ((name, ), context))

        """
        Get the registry information for the registry with the given name.
        Arguments:
        name -- The registry name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getRegistryInfo(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getRegistryInfo.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get the registry information for the registry with the given name.
        Arguments:
        name -- The registry name.
        Returns: The registry information.
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def end_getRegistryInfo(self, _r):
            return _M_IceGrid.Admin._op_getRegistryInfo.end(self, _r)

        """
        Get a proxy to the IceGrid registry's admin object.
        Arguments:
        name -- The registry name
        context -- The request context for the invocation.
        Returns: A proxy to the IceGrid registry's admin object
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        """
        def getRegistryAdmin(self, name, context=None):
            return _M_IceGrid.Admin._op_getRegistryAdmin.invoke(self, ((name, ), context))

        """
        Get a proxy to the IceGrid registry's admin object.
        Arguments:
        name -- The registry name
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getRegistryAdminAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_getRegistryAdmin.invokeAsync(self, ((name, ), context))

        """
        Get a proxy to the IceGrid registry's admin object.
        Arguments:
        name -- The registry name
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getRegistryAdmin(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getRegistryAdmin.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Get a proxy to the IceGrid registry's admin object.
        Arguments:
        name -- The registry name
        Returns: A proxy to the IceGrid registry's admin object
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        """
        def end_getRegistryAdmin(self, _r):
            return _M_IceGrid.Admin._op_getRegistryAdmin.end(self, _r)

        """
        Shutdown an IceGrid registry.
        Arguments:
        name -- The registry name.
        context -- The request context for the invocation.
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def shutdownRegistry(self, name, context=None):
            return _M_IceGrid.Admin._op_shutdownRegistry.invoke(self, ((name, ), context))

        """
        Shutdown an IceGrid registry.
        Arguments:
        name -- The registry name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def shutdownRegistryAsync(self, name, context=None):
            return _M_IceGrid.Admin._op_shutdownRegistry.invokeAsync(self, ((name, ), context))

        """
        Shutdown an IceGrid registry.
        Arguments:
        name -- The registry name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_shutdownRegistry(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_shutdownRegistry.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        Shutdown an IceGrid registry.
        Arguments:
        name -- The registry name.
        Throws:
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def end_shutdownRegistry(self, _r):
            return _M_IceGrid.Admin._op_shutdownRegistry.end(self, _r)

        """
        Get all the IceGrid registries currently registered.
        Arguments:
        context -- The request context for the invocation.
        Returns: The registry names.
        """
        def getAllRegistryNames(self, context=None):
            return _M_IceGrid.Admin._op_getAllRegistryNames.invoke(self, ((), context))

        """
        Get all the IceGrid registries currently registered.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAllRegistryNamesAsync(self, context=None):
            return _M_IceGrid.Admin._op_getAllRegistryNames.invokeAsync(self, ((), context))

        """
        Get all the IceGrid registries currently registered.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAllRegistryNames(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getAllRegistryNames.begin(self, ((), _response, _ex, _sent, context))

        """
        Get all the IceGrid registries currently registered.
        Arguments:
        Returns: The registry names.
        """
        def end_getAllRegistryNames(self, _r):
            return _M_IceGrid.Admin._op_getAllRegistryNames.end(self, _r)

        """
        Shut down the IceGrid registry.
        Arguments:
        context -- The request context for the invocation.
        """
        def shutdown(self, context=None):
            return _M_IceGrid.Admin._op_shutdown.invoke(self, ((), context))

        """
        Shut down the IceGrid registry.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def shutdownAsync(self, context=None):
            return _M_IceGrid.Admin._op_shutdown.invokeAsync(self, ((), context))

        """
        Shut down the IceGrid registry.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_shutdown(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_shutdown.begin(self, ((), _response, _ex, _sent, context))

        """
        Shut down the IceGrid registry.
        Arguments:
        """
        def end_shutdown(self, _r):
            return _M_IceGrid.Admin._op_shutdown.end(self, _r)

        """
        Returns the checksums for the IceGrid Slice definitions.
        Arguments:
        context -- The request context for the invocation.
        Returns: A dictionary mapping Slice type ids to their checksums.
        """
        def getSliceChecksums(self, context=None):
            return _M_IceGrid.Admin._op_getSliceChecksums.invoke(self, ((), context))

        """
        Returns the checksums for the IceGrid Slice definitions.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getSliceChecksumsAsync(self, context=None):
            return _M_IceGrid.Admin._op_getSliceChecksums.invokeAsync(self, ((), context))

        """
        Returns the checksums for the IceGrid Slice definitions.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getSliceChecksums(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Admin._op_getSliceChecksums.begin(self, ((), _response, _ex, _sent, context))

        """
        Returns the checksums for the IceGrid Slice definitions.
        Arguments:
        Returns: A dictionary mapping Slice type ids to their checksums.
        """
        def end_getSliceChecksums(self, _r):
            return _M_IceGrid.Admin._op_getSliceChecksums.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.AdminPrx.ice_checkedCast(proxy, '::IceGrid::Admin', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.AdminPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::Admin'
    _M_IceGrid._t_AdminPrx = IcePy.defineProxy('::IceGrid::Admin', AdminPrx)

    _M_IceGrid.AdminPrx = AdminPrx
    del AdminPrx

    _M_IceGrid.Admin = Ice.createTempClass()
    class Admin(Ice.Object):

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::IceGrid::Admin')

        def ice_id(self, current=None):
            return '::IceGrid::Admin'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::Admin'

        def addApplication(self, descriptor, current=None):
            """
            Add an application to IceGrid.
            Arguments:
            descriptor -- The application descriptor.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            """
            raise NotImplementedError("servant method 'addApplication' not implemented")

        def syncApplication(self, descriptor, current=None):
            """
            Synchronize a deployed application with the given application
            descriptor. This operation will replace the current descriptor
            with this new descriptor.
            Arguments:
            descriptor -- The application descriptor.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            DeploymentException -- Raised if application deployment failed.
            """
            raise NotImplementedError("servant method 'syncApplication' not implemented")

        def updateApplication(self, descriptor, current=None):
            """
            Update a deployed application with the given update application
            descriptor.
            Arguments:
            descriptor -- The update descriptor.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            DeploymentException -- Raised if application deployment failed.
            """
            raise NotImplementedError("servant method 'updateApplication' not implemented")

        def syncApplicationWithoutRestart(self, descriptor, current=None):
            """
            Synchronize a deployed application with the given application
            descriptor. This operation will replace the current descriptor
            with this 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.
            Arguments:
            descriptor -- The application descriptor.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            DeploymentException -- Raised if application deployment failed.
            """
            raise NotImplementedError("servant method 'syncApplicationWithoutRestart' not implemented")

        def updateApplicationWithoutRestart(self, descriptor, current=None):
            """
            Update a deployed application with the given update application
            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.
            Arguments:
            descriptor -- The update descriptor.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            DeploymentException -- Raised if application deployment failed.
            """
            raise NotImplementedError("servant method 'updateApplicationWithoutRestart' not implemented")

        def removeApplication(self, name, current=None):
            """
            Remove an application from IceGrid.
            Arguments:
            name -- The application name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            DeploymentException -- Raised if application deployment failed.
            """
            raise NotImplementedError("servant method 'removeApplication' not implemented")

        def instantiateServer(self, application, node, desc, current=None):
            """
            Instantiate a server template from an application on the given
            node.
            Arguments:
            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.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            DeploymentException -- Raised if server instantiation failed.
            """
            raise NotImplementedError("servant method 'instantiateServer' not implemented")

        def patchApplication(self, name, shutdown, current=None):
            """
            Patch the given application data.
            Arguments:
            name -- The application name.
            shutdown -- If true, the servers depending on the data to patch will be shut down if necessary.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            ApplicationNotExistException -- Raised if the application doesn't exist.
            PatchException -- Raised if the patch failed.
            """
            raise NotImplementedError("servant method 'patchApplication' not implemented")

        def getApplicationInfo(self, name, current=None):
            """
            Get an application descriptor.
            Arguments:
            name -- The application name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            ApplicationNotExistException -- Raised if the application doesn't exist.
            """
            raise NotImplementedError("servant method 'getApplicationInfo' not implemented")

        def getDefaultApplicationDescriptor(self, current=None):
            """
            Get the default application descriptor.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the default application descriptor can't be accessed or is invalid.
            """
            raise NotImplementedError("servant method 'getDefaultApplicationDescriptor' not implemented")

        def getAllApplicationNames(self, current=None):
            """
            Get all the IceGrid applications currently registered.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAllApplicationNames' not implemented")

        def getServerInfo(self, id, current=None):
            """
            Get the server information for the server with the given id.
            Arguments:
            id -- The server id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'getServerInfo' not implemented")

        def getServerState(self, id, current=None):
            """
            Get a server's state.
            Arguments:
            id -- The server id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'getServerState' not implemented")

        def getServerPid(self, id, current=None):
            """
            Get a server's system process id. The process id is operating
            system dependent.
            Arguments:
            id -- The server id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'getServerPid' not implemented")

        def getServerAdminCategory(self, current=None):
            """
            Get 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.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getServerAdminCategory' not implemented")

        def getServerAdmin(self, id, current=None):
            """
            Get a proxy to the server's admin object.
            Arguments:
            id -- The server id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'getServerAdmin' not implemented")

        def enableServer(self, id, enabled, current=None):
            """
            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 shut down and restarted, the
            server will be enabled by default.
            Arguments:
            id -- The server id.
            enabled -- True to enable the server, false to disable it.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'enableServer' not implemented")

        def isServerEnabled(self, id, current=None):
            """
            Check if the server is enabled or disabled.
            Arguments:
            id -- The server id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'isServerEnabled' not implemented")

        def startServer(self, id, current=None):
            """
            Start a server and wait for its activation.
            Arguments:
            id -- The server id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            ServerStartException -- Raised if the server couldn't be started.
            """
            raise NotImplementedError("servant method 'startServer' not implemented")

        def stopServer(self, id, current=None):
            """
            Stop a server.
            Arguments:
            id -- The server id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            ServerStopException -- Raised if the server couldn't be stopped.
            """
            raise NotImplementedError("servant method 'stopServer' not implemented")

        def patchServer(self, id, shutdown, current=None):
            """
            Patch a server.
            Arguments:
            id -- The server id.
            shutdown -- If true, servers depending on the data to patch will be shut down if necessary.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            PatchException -- Raised if the patch failed.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'patchServer' not implemented")

        def sendSignal(self, id, signal, current=None):
            """
            Send signal to a server.
            Arguments:
            id -- The server id.
            signal -- The signal, for example SIGTERM or 15.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            BadSignalException -- Raised if the signal is not recognized by the target server.
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'sendSignal' not implemented")

        def getAllServerIds(self, current=None):
            """
            Get all the server ids registered with IceGrid.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAllServerIds' not implemented")

        def getAdapterInfo(self, id, current=None):
            """
            Get the adapter information for the replica group or adapter
            with the given id.
            Arguments:
            id -- The adapter id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            AdapterNotExistException -- Raised if the adapter or replica group doesn't exist.
            """
            raise NotImplementedError("servant method 'getAdapterInfo' not implemented")

        def removeAdapter(self, id, current=None):
            """
            Remove the adapter with the given id.
            Arguments:
            id -- The adapter id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            AdapterNotExistException -- Raised if the adapter doesn't exist.
            DeploymentException -- Raised if application deployment failed.
            """
            raise NotImplementedError("servant method 'removeAdapter' not implemented")

        def getAllAdapterIds(self, current=None):
            """
            Get all the adapter ids registered with IceGrid.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAllAdapterIds' not implemented")

        def addObject(self, obj, current=None):
            """
            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.
            Arguments:
            obj -- The object to be added to the registry.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            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.
            ObjectExistsException -- Raised if the object is already registered.
            """
            raise NotImplementedError("servant method 'addObject' not implemented")

        def updateObject(self, obj, current=None):
            """
            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.
            Arguments:
            obj -- The object to be updated to the registry.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the object can't be updated. This might happen if the object was added with a deployment descriptor.
            ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
            """
            raise NotImplementedError("servant method 'updateObject' not implemented")

        def addObjectWithType(self, obj, type, current=None):
            """
            Add an object to the object registry and explicitly specify
            its type.
            Arguments:
            obj -- The object to be added to the registry.
            type -- The object type.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if application deployment failed.
            ObjectExistsException -- Raised if the object is already registered.
            """
            raise NotImplementedError("servant method 'addObjectWithType' not implemented")

        def removeObject(self, id, current=None):
            """
            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.
            Arguments:
            id -- The identity of the object to be removed from the registry.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the object can't be removed. This might happen if the object was added with a deployment descriptor.
            ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
            """
            raise NotImplementedError("servant method 'removeObject' not implemented")

        def getObjectInfo(self, id, current=None):
            """
            Get the object info for the object with the given identity.
            Arguments:
            id -- The identity of the object.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            ObjectNotRegisteredException -- Raised if the object isn't registered with the registry.
            """
            raise NotImplementedError("servant method 'getObjectInfo' not implemented")

        def getObjectInfosByType(self, type, current=None):
            """
            Get the object info of all the registered objects with the
            given type.
            Arguments:
            type -- The type of the object.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getObjectInfosByType' not implemented")

        def getAllObjectInfos(self, expr, current=None):
            """
            Get the object info of all the registered objects whose stringified
            identities match the given expression.
            Arguments:
            expr -- The expression to match against the stringified identities of registered objects. The expression may contain a trailing wildcard (*) character.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAllObjectInfos' not implemented")

        def pingNode(self, name, current=None):
            """
            Ping an IceGrid node to see if it is active.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            NodeNotExistException -- Raised if the node doesn't exist.
            """
            raise NotImplementedError("servant method 'pingNode' not implemented")

        def getNodeLoad(self, name, current=None):
            """
            Get the load averages of the node.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'getNodeLoad' not implemented")

        def getNodeInfo(self, name, current=None):
            """
            Get the node information for the node with the given name.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'getNodeInfo' not implemented")

        def getNodeAdmin(self, name, current=None):
            """
            Get a proxy to the IceGrid node's admin object.
            Arguments:
            name -- The IceGrid node name
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'getNodeAdmin' not implemented")

        def getNodeProcessorSocketCount(self, name, current=None):
            """
            Get the number of physical processor sockets for the machine
            running the node with the given name.
            Note that this method will return 1 on operating systems where
            this can't be automatically determined and where the
            IceGrid.Node.ProcessorSocketCount property for the node is not
            set.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'getNodeProcessorSocketCount' not implemented")

        def shutdownNode(self, name, current=None):
            """
            Shutdown an IceGrid node.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'shutdownNode' not implemented")

        def getNodeHostname(self, name, current=None):
            """
            Get the hostname of this node.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'getNodeHostname' not implemented")

        def getAllNodeNames(self, current=None):
            """
            Get all the IceGrid nodes currently registered.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAllNodeNames' not implemented")

        def pingRegistry(self, name, current=None):
            """
            Ping an IceGrid registry to see if it is active.
            Arguments:
            name -- The registry name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            RegistryNotExistException -- Raised if the registry doesn't exist.
            """
            raise NotImplementedError("servant method 'pingRegistry' not implemented")

        def getRegistryInfo(self, name, current=None):
            """
            Get the registry information for the registry with the given name.
            Arguments:
            name -- The registry name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            RegistryNotExistException -- Raised if the registry doesn't exist.
            RegistryUnreachableException -- Raised if the registry could not be reached.
            """
            raise NotImplementedError("servant method 'getRegistryInfo' not implemented")

        def getRegistryAdmin(self, name, current=None):
            """
            Get a proxy to the IceGrid registry's admin object.
            Arguments:
            name -- The registry name
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            RegistryNotExistException -- Raised if the registry doesn't exist.
            """
            raise NotImplementedError("servant method 'getRegistryAdmin' not implemented")

        def shutdownRegistry(self, name, current=None):
            """
            Shutdown an IceGrid registry.
            Arguments:
            name -- The registry name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            RegistryNotExistException -- Raised if the registry doesn't exist.
            RegistryUnreachableException -- Raised if the registry could not be reached.
            """
            raise NotImplementedError("servant method 'shutdownRegistry' not implemented")

        def getAllRegistryNames(self, current=None):
            """
            Get all the IceGrid registries currently registered.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAllRegistryNames' not implemented")

        def shutdown(self, current=None):
            """
            Shut down the IceGrid registry.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'shutdown' not implemented")

        def getSliceChecksums(self, current=None):
            """
            Returns the checksums for the IceGrid Slice definitions.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getSliceChecksums' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_AdminDisp)

        __repr__ = __str__

    _M_IceGrid._t_AdminDisp = IcePy.defineClass('::IceGrid::Admin', Admin, (), None, ())
    Admin._ice_type = _M_IceGrid._t_AdminDisp

    Admin._op_addApplication = IcePy.Operation('addApplication', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ApplicationDescriptor, False, 0),), (), None, (_M_IceGrid._t_AccessDeniedException, _M_IceGrid._t_DeploymentException))
    Admin._op_syncApplication = IcePy.Operation('syncApplication', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ApplicationDescriptor, False, 0),), (), None, (_M_IceGrid._t_AccessDeniedException, _M_IceGrid._t_DeploymentException, _M_IceGrid._t_ApplicationNotExistException))
    Admin._op_updateApplication = IcePy.Operation('updateApplication', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ApplicationUpdateDescriptor, False, 0),), (), None, (_M_IceGrid._t_AccessDeniedException, _M_IceGrid._t_DeploymentException, _M_IceGrid._t_ApplicationNotExistException))
    Admin._op_syncApplicationWithoutRestart = IcePy.Operation('syncApplicationWithoutRestart', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ApplicationDescriptor, False, 0),), (), None, (_M_IceGrid._t_AccessDeniedException, _M_IceGrid._t_DeploymentException, _M_IceGrid._t_ApplicationNotExistException))
    Admin._op_updateApplicationWithoutRestart = IcePy.Operation('updateApplicationWithoutRestart', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ApplicationUpdateDescriptor, False, 0),), (), None, (_M_IceGrid._t_AccessDeniedException, _M_IceGrid._t_DeploymentException, _M_IceGrid._t_ApplicationNotExistException))
    Admin._op_removeApplication = IcePy.Operation('removeApplication', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0),), (), None, (_M_IceGrid._t_AccessDeniedException, _M_IceGrid._t_DeploymentException, _M_IceGrid._t_ApplicationNotExistException))
    Admin._op_instantiateServer = IcePy.Operation('instantiateServer', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_string, False, 0), ((), _M_IceGrid._t_ServerInstanceDescriptor, False, 0)), (), None, (_M_IceGrid._t_AccessDeniedException, _M_IceGrid._t_ApplicationNotExistException, _M_IceGrid._t_DeploymentException))
    Admin._op_patchApplication = IcePy.Operation('patchApplication', Ice.OperationMode.Normal, Ice.OperationMode.Normal, True, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_bool, False, 0)), (), None, (_M_IceGrid._t_ApplicationNotExistException, _M_IceGrid._t_PatchException))
    Admin._op_getApplicationInfo = IcePy.Operation('getApplicationInfo', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_ApplicationInfo, False, 0), (_M_IceGrid._t_ApplicationNotExistException,))
    Admin._op_getDefaultApplicationDescriptor = IcePy.Operation('getDefaultApplicationDescriptor', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), _M_IceGrid._t_ApplicationDescriptor, False, 0), (_M_IceGrid._t_DeploymentException,))
    Admin._op_getAllApplicationNames = IcePy.Operation('getAllApplicationNames', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), _M_Ice._t_StringSeq, False, 0), ())
    Admin._op_getServerInfo = IcePy.Operation('getServerInfo', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_ServerInfo, False, 0), (_M_IceGrid._t_ServerNotExistException,))
    Admin._op_getServerState = IcePy.Operation('getServerState', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_ServerState, False, 0), (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    Admin._op_getServerPid = IcePy.Operation('getServerPid', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_int, False, 0), (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    Admin._op_getServerAdminCategory = IcePy.Operation('getServerAdminCategory', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (), (), ((), IcePy._t_string, False, 0), ())
    Admin._op_getServerAdmin = IcePy.Operation('getServerAdmin', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_ObjectPrx, False, 0), (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    Admin._op_enableServer = IcePy.Operation('enableServer', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_bool, False, 0)), (), None, (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    Admin._op_isServerEnabled = IcePy.Operation('isServerEnabled', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_bool, False, 0), (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    Admin._op_startServer = IcePy.Operation('startServer', Ice.OperationMode.Normal, Ice.OperationMode.Normal, True, None, (), (((), IcePy._t_string, False, 0),), (), None, (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_ServerStartException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    Admin._op_stopServer = IcePy.Operation('stopServer', Ice.OperationMode.Normal, Ice.OperationMode.Normal, True, None, (), (((), IcePy._t_string, False, 0),), (), None, (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_ServerStopException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    Admin._op_patchServer = IcePy.Operation('patchServer', Ice.OperationMode.Normal, Ice.OperationMode.Normal, True, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_bool, False, 0)), (), None, (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException, _M_IceGrid._t_PatchException))
    Admin._op_sendSignal = IcePy.Operation('sendSignal', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_string, False, 0)), (), None, (_M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException, _M_IceGrid._t_BadSignalException))
    Admin._op_getAllServerIds = IcePy.Operation('getAllServerIds', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), _M_Ice._t_StringSeq, False, 0), ())
    Admin._op_getAdapterInfo = IcePy.Operation('getAdapterInfo', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_AdapterInfoSeq, False, 0), (_M_IceGrid._t_AdapterNotExistException,))
    Admin._op_removeAdapter = IcePy.Operation('removeAdapter', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0),), (), None, (_M_IceGrid._t_AdapterNotExistException, _M_IceGrid._t_DeploymentException))
    Admin._op_getAllAdapterIds = IcePy.Operation('getAllAdapterIds', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), _M_Ice._t_StringSeq, False, 0), ())
    Admin._op_addObject = IcePy.Operation('addObject', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_ObjectPrx, False, 0),), (), None, (_M_IceGrid._t_ObjectExistsException, _M_IceGrid._t_DeploymentException))
    Admin._op_updateObject = IcePy.Operation('updateObject', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_ObjectPrx, False, 0),), (), None, (_M_IceGrid._t_ObjectNotRegisteredException, _M_IceGrid._t_DeploymentException))
    Admin._op_addObjectWithType = IcePy.Operation('addObjectWithType', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_ObjectPrx, False, 0), ((), IcePy._t_string, False, 0)), (), None, (_M_IceGrid._t_ObjectExistsException, _M_IceGrid._t_DeploymentException))
    Admin._op_removeObject = IcePy.Operation('removeObject', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_Ice._t_Identity, False, 0),), (), None, (_M_IceGrid._t_ObjectNotRegisteredException, _M_IceGrid._t_DeploymentException))
    Admin._op_getObjectInfo = IcePy.Operation('getObjectInfo', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), _M_Ice._t_Identity, False, 0),), (), ((), _M_IceGrid._t_ObjectInfo, False, 0), (_M_IceGrid._t_ObjectNotRegisteredException,))
    Admin._op_getObjectInfosByType = IcePy.Operation('getObjectInfosByType', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_ObjectInfoSeq, False, 0), ())
    Admin._op_getAllObjectInfos = IcePy.Operation('getAllObjectInfos', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_ObjectInfoSeq, False, 0), ())
    Admin._op_pingNode = IcePy.Operation('pingNode', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_bool, False, 0), (_M_IceGrid._t_NodeNotExistException,))
    Admin._op_getNodeLoad = IcePy.Operation('getNodeLoad', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_LoadInfo, False, 0), (_M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    Admin._op_getNodeInfo = IcePy.Operation('getNodeInfo', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_NodeInfo, False, 0), (_M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    Admin._op_getNodeAdmin = IcePy.Operation('getNodeAdmin', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_ObjectPrx, False, 0), (_M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    Admin._op_getNodeProcessorSocketCount = IcePy.Operation('getNodeProcessorSocketCount', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_int, False, 0), (_M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    Admin._op_shutdownNode = IcePy.Operation('shutdownNode', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0),), (), None, (_M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    Admin._op_getNodeHostname = IcePy.Operation('getNodeHostname', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_string, False, 0), (_M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    Admin._op_getAllNodeNames = IcePy.Operation('getAllNodeNames', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), _M_Ice._t_StringSeq, False, 0), ())
    Admin._op_pingRegistry = IcePy.Operation('pingRegistry', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_bool, False, 0), (_M_IceGrid._t_RegistryNotExistException,))
    Admin._op_getRegistryInfo = IcePy.Operation('getRegistryInfo', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_IceGrid._t_RegistryInfo, False, 0), (_M_IceGrid._t_RegistryNotExistException, _M_IceGrid._t_RegistryUnreachableException))
    Admin._op_getRegistryAdmin = IcePy.Operation('getRegistryAdmin', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_ObjectPrx, False, 0), (_M_IceGrid._t_RegistryNotExistException,))
    Admin._op_shutdownRegistry = IcePy.Operation('shutdownRegistry', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_string, False, 0),), (), None, (_M_IceGrid._t_RegistryNotExistException, _M_IceGrid._t_RegistryUnreachableException))
    Admin._op_getAllRegistryNames = IcePy.Operation('getAllRegistryNames', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (), (), ((), _M_Ice._t_StringSeq, False, 0), ())
    Admin._op_shutdown = IcePy.Operation('shutdown', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), None, ())
    Admin._op_getSliceChecksums = IcePy.Operation('getSliceChecksums', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), _M_Ice._t_SliceChecksumDict, False, 0), ())

    _M_IceGrid.Admin = Admin
    del Admin

_M_IceGrid._t_FileIterator = IcePy.defineValue('::IceGrid::FileIterator', Ice.Value, -1, (), False, True, None, ())

if 'FileIteratorPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.FileIteratorPrx = Ice.createTempClass()
    class FileIteratorPrx(Ice.ObjectPrx):

        """
        Read lines from the log file.
        Arguments:
        size -- Specifies the maximum number of bytes to be received. The server will ensure that the returned message doesn't exceed the given size.
        context -- The request context for the invocation.
        Returns a tuple containing the following:
        _retval -- True if EOF is encountered.
        lines -- The lines read from the file. If there was nothing to read from the file since the last call to read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no '\n' should be added when writing the last line to the to the output device).
        Throws:
        FileNotAvailableException -- Raised if there was a problem to read lines from the file.
        """
        def read(self, size, context=None):
            return _M_IceGrid.FileIterator._op_read.invoke(self, ((size, ), context))

        """
        Read lines from the log file.
        Arguments:
        size -- Specifies the maximum number of bytes to be received. The server will ensure that the returned message doesn't exceed the given size.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def readAsync(self, size, context=None):
            return _M_IceGrid.FileIterator._op_read.invokeAsync(self, ((size, ), context))

        """
        Read lines from the log file.
        Arguments:
        size -- Specifies the maximum number of bytes to be received. The server will ensure that the returned message doesn't exceed the given size.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_read(self, size, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.FileIterator._op_read.begin(self, ((size, ), _response, _ex, _sent, context))

        """
        Read lines from the log file.
        Arguments:
        size -- Specifies the maximum number of bytes to be received. The server will ensure that the returned message doesn't exceed the given size.
        Returns a tuple containing the following:
        _retval -- True if EOF is encountered.
        lines -- The lines read from the file. If there was nothing to read from the file since the last call to read, an empty sequence is returned. The last line of the sequence is always incomplete (and therefore no '\n' should be added when writing the last line to the to the output device).
        Throws:
        FileNotAvailableException -- Raised if there was a problem to read lines from the file.
        """
        def end_read(self, _r):
            return _M_IceGrid.FileIterator._op_read.end(self, _r)

        """
        Destroy the iterator.
        Arguments:
        context -- The request context for the invocation.
        """
        def destroy(self, context=None):
            return _M_IceGrid.FileIterator._op_destroy.invoke(self, ((), context))

        """
        Destroy the iterator.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def destroyAsync(self, context=None):
            return _M_IceGrid.FileIterator._op_destroy.invokeAsync(self, ((), context))

        """
        Destroy the iterator.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_destroy(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.FileIterator._op_destroy.begin(self, ((), _response, _ex, _sent, context))

        """
        Destroy the iterator.
        Arguments:
        """
        def end_destroy(self, _r):
            return _M_IceGrid.FileIterator._op_destroy.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.FileIteratorPrx.ice_checkedCast(proxy, '::IceGrid::FileIterator', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.FileIteratorPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::FileIterator'
    _M_IceGrid._t_FileIteratorPrx = IcePy.defineProxy('::IceGrid::FileIterator', FileIteratorPrx)

    _M_IceGrid.FileIteratorPrx = FileIteratorPrx
    del FileIteratorPrx

    _M_IceGrid.FileIterator = Ice.createTempClass()
    class FileIterator(Ice.Object):

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::IceGrid::FileIterator')

        def ice_id(self, current=None):
            return '::IceGrid::FileIterator'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::FileIterator'

        def read(self, size, current=None):
            """
            Read lines from the log file.
            Arguments:
            size -- Specifies the maximum number of bytes to be received. The server will ensure that the returned message doesn't exceed the given size.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            FileNotAvailableException -- Raised if there was a problem to read lines from the file.
            """
            raise NotImplementedError("servant method 'read' not implemented")

        def destroy(self, current=None):
            """
            Destroy the iterator.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'destroy' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_FileIteratorDisp)

        __repr__ = __str__

    _M_IceGrid._t_FileIteratorDisp = IcePy.defineClass('::IceGrid::FileIterator', FileIterator, (), None, ())
    FileIterator._ice_type = _M_IceGrid._t_FileIteratorDisp

    FileIterator._op_read = IcePy.Operation('read', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_int, False, 0),), (((), _M_Ice._t_StringSeq, False, 0),), ((), IcePy._t_bool, False, 0), (_M_IceGrid._t_FileNotAvailableException,))
    FileIterator._op_destroy = IcePy.Operation('destroy', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), None, ())

    _M_IceGrid.FileIterator = FileIterator
    del FileIterator

if 'ServerDynamicInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.ServerDynamicInfo = Ice.createTempClass()
    class ServerDynamicInfo(object):
        """
        Dynamic information about the state of a server.
        Members:
        id -- The id of the server.
        state -- The state of the server.
        pid -- The process id of the server.
        enabled -- Indicates whether the server is enabled.
        """
        def __init__(self, id='', state=_M_IceGrid.ServerState.Inactive, pid=0, enabled=False):
            self.id = id
            self.state = state
            self.pid = pid
            self.enabled = enabled

        def __hash__(self):
            _h = 0
            _h = 5 * _h + Ice.getHash(self.id)
            _h = 5 * _h + Ice.getHash(self.state)
            _h = 5 * _h + Ice.getHash(self.pid)
            _h = 5 * _h + Ice.getHash(self.enabled)
            return _h % 0x7fffffff

        def __compare(self, other):
            if other is None:
                return 1
            elif not isinstance(other, _M_IceGrid.ServerDynamicInfo):
                return NotImplemented
            else:
                if self.id is None or other.id is None:
                    if self.id != other.id:
                        return (-1 if self.id is None else 1)
                else:
                    if self.id < other.id:
                        return -1
                    elif self.id > other.id:
                        return 1
                if self.state is None or other.state is None:
                    if self.state != other.state:
                        return (-1 if self.state is None else 1)
                else:
                    if self.state < other.state:
                        return -1
                    elif self.state > other.state:
                        return 1
                if self.pid is None or other.pid is None:
                    if self.pid != other.pid:
                        return (-1 if self.pid is None else 1)
                else:
                    if self.pid < other.pid:
                        return -1
                    elif self.pid > other.pid:
                        return 1
                if self.enabled is None or other.enabled is None:
                    if self.enabled != other.enabled:
                        return (-1 if self.enabled is None else 1)
                else:
                    if self.enabled < other.enabled:
                        return -1
                    elif self.enabled > other.enabled:
                        return 1
                return 0

        def __lt__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r < 0

        def __le__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r <= 0

        def __gt__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r > 0

        def __ge__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r >= 0

        def __eq__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r == 0

        def __ne__(self, other):
            r = self.__compare(other)
            if r is NotImplemented:
                return r
            else:
                return r != 0

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_ServerDynamicInfo)

        __repr__ = __str__

    _M_IceGrid._t_ServerDynamicInfo = IcePy.defineStruct('::IceGrid::ServerDynamicInfo', ServerDynamicInfo, (), (
        ('id', (), IcePy._t_string),
        ('state', (), _M_IceGrid._t_ServerState),
        ('pid', (), IcePy._t_int),
        ('enabled', (), IcePy._t_bool)
    ))

    _M_IceGrid.ServerDynamicInfo = ServerDynamicInfo
    del ServerDynamicInfo

if '_t_ServerDynamicInfoSeq' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_ServerDynamicInfoSeq = IcePy.defineSequence('::IceGrid::ServerDynamicInfoSeq', (), _M_IceGrid._t_ServerDynamicInfo)

if 'AdapterDynamicInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.AdapterDynamicInfo = Ice.createTempClass()
    class AdapterDynamicInfo(object):
        """
        Dynamic information about the state of an adapter.
        Members:
        id -- The id of the adapter.
        proxy -- The direct proxy containing the adapter endpoints.
        """
        def __init__(self, id='', proxy=None):
            self.id = id
            self.proxy = proxy

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.AdapterDynamicInfo):
                return NotImplemented
            else:
                if self.id != other.id:
                    return False
                if self.proxy != other.proxy:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_AdapterDynamicInfo)

        __repr__ = __str__

    _M_IceGrid._t_AdapterDynamicInfo = IcePy.defineStruct('::IceGrid::AdapterDynamicInfo', AdapterDynamicInfo, (), (
        ('id', (), IcePy._t_string),
        ('proxy', (), IcePy._t_ObjectPrx)
    ))

    _M_IceGrid.AdapterDynamicInfo = AdapterDynamicInfo
    del AdapterDynamicInfo

if '_t_AdapterDynamicInfoSeq' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_AdapterDynamicInfoSeq = IcePy.defineSequence('::IceGrid::AdapterDynamicInfoSeq', (), _M_IceGrid._t_AdapterDynamicInfo)

if 'NodeDynamicInfo' not in _M_IceGrid.__dict__:
    _M_IceGrid.NodeDynamicInfo = Ice.createTempClass()
    class NodeDynamicInfo(object):
        """
        Dynamic information about the state of a node.
        Members:
        info -- Some static information about the node.
        servers -- The dynamic information of the servers deployed on this node.
        adapters -- The dynamic information of the adapters deployed on this node.
        """
        def __init__(self, info=Ice._struct_marker, servers=None, adapters=None):
            if info is Ice._struct_marker:
                self.info = _M_IceGrid.NodeInfo()
            else:
                self.info = info
            self.servers = servers
            self.adapters = adapters

        def __eq__(self, other):
            if other is None:
                return False
            elif not isinstance(other, _M_IceGrid.NodeDynamicInfo):
                return NotImplemented
            else:
                if self.info != other.info:
                    return False
                if self.servers != other.servers:
                    return False
                if self.adapters != other.adapters:
                    return False
                return True

        def __ne__(self, other):
            return not self.__eq__(other)

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_NodeDynamicInfo)

        __repr__ = __str__

    _M_IceGrid._t_NodeDynamicInfo = IcePy.defineStruct('::IceGrid::NodeDynamicInfo', NodeDynamicInfo, (), (
        ('info', (), _M_IceGrid._t_NodeInfo),
        ('servers', (), _M_IceGrid._t_ServerDynamicInfoSeq),
        ('adapters', (), _M_IceGrid._t_AdapterDynamicInfoSeq)
    ))

    _M_IceGrid.NodeDynamicInfo = NodeDynamicInfo
    del NodeDynamicInfo

_M_IceGrid._t_RegistryObserver = IcePy.defineValue('::IceGrid::RegistryObserver', Ice.Value, -1, (), False, True, None, ())

if 'RegistryObserverPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.RegistryObserverPrx = Ice.createTempClass()
    class RegistryObserverPrx(Ice.ObjectPrx):

        """
        The registryInit operation is called after registration of
        an observer to indicate the state of the registries.
        Arguments:
        registries -- The current state of the registries.
        context -- The request context for the invocation.
        """
        def registryInit(self, registries, context=None):
            return _M_IceGrid.RegistryObserver._op_registryInit.invoke(self, ((registries, ), context))

        """
        The registryInit operation is called after registration of
        an observer to indicate the state of the registries.
        Arguments:
        registries -- The current state of the registries.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def registryInitAsync(self, registries, context=None):
            return _M_IceGrid.RegistryObserver._op_registryInit.invokeAsync(self, ((registries, ), context))

        """
        The registryInit operation is called after registration of
        an observer to indicate the state of the registries.
        Arguments:
        registries -- The current state of the registries.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_registryInit(self, registries, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.RegistryObserver._op_registryInit.begin(self, ((registries, ), _response, _ex, _sent, context))

        """
        The registryInit operation is called after registration of
        an observer to indicate the state of the registries.
        Arguments:
        registries -- The current state of the registries.
        """
        def end_registryInit(self, _r):
            return _M_IceGrid.RegistryObserver._op_registryInit.end(self, _r)

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        context -- The request context for the invocation.
        """
        def registryUp(self, node, context=None):
            return _M_IceGrid.RegistryObserver._op_registryUp.invoke(self, ((node, ), context))

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def registryUpAsync(self, node, context=None):
            return _M_IceGrid.RegistryObserver._op_registryUp.invokeAsync(self, ((node, ), context))

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_registryUp(self, node, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.RegistryObserver._op_registryUp.begin(self, ((node, ), _response, _ex, _sent, context))

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        """
        def end_registryUp(self, _r):
            return _M_IceGrid.RegistryObserver._op_registryUp.end(self, _r)

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        """
        def registryDown(self, name, context=None):
            return _M_IceGrid.RegistryObserver._op_registryDown.invoke(self, ((name, ), context))

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def registryDownAsync(self, name, context=None):
            return _M_IceGrid.RegistryObserver._op_registryDown.invokeAsync(self, ((name, ), context))

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_registryDown(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.RegistryObserver._op_registryDown.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        """
        def end_registryDown(self, _r):
            return _M_IceGrid.RegistryObserver._op_registryDown.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.RegistryObserverPrx.ice_checkedCast(proxy, '::IceGrid::RegistryObserver', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.RegistryObserverPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::RegistryObserver'
    _M_IceGrid._t_RegistryObserverPrx = IcePy.defineProxy('::IceGrid::RegistryObserver', RegistryObserverPrx)

    _M_IceGrid.RegistryObserverPrx = RegistryObserverPrx
    del RegistryObserverPrx

    _M_IceGrid.RegistryObserver = Ice.createTempClass()
    class RegistryObserver(Ice.Object):

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::IceGrid::RegistryObserver')

        def ice_id(self, current=None):
            return '::IceGrid::RegistryObserver'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::RegistryObserver'

        def registryInit(self, registries, current=None):
            """
            The registryInit operation is called after registration of
            an observer to indicate the state of the registries.
            Arguments:
            registries -- The current state of the registries.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'registryInit' not implemented")

        def registryUp(self, node, current=None):
            """
            The nodeUp operation is called to notify an observer that a node
            came up.
            Arguments:
            node -- The node state.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'registryUp' not implemented")

        def registryDown(self, name, current=None):
            """
            The nodeDown operation is called to notify an observer that a node
            went down.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'registryDown' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_RegistryObserverDisp)

        __repr__ = __str__

    _M_IceGrid._t_RegistryObserverDisp = IcePy.defineClass('::IceGrid::RegistryObserver', RegistryObserver, (), None, ())
    RegistryObserver._ice_type = _M_IceGrid._t_RegistryObserverDisp

    RegistryObserver._op_registryInit = IcePy.Operation('registryInit', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_RegistryInfoSeq, False, 0),), (), None, ())
    RegistryObserver._op_registryUp = IcePy.Operation('registryUp', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_RegistryInfo, False, 0),), (), None, ())
    RegistryObserver._op_registryDown = IcePy.Operation('registryDown', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0),), (), None, ())

    _M_IceGrid.RegistryObserver = RegistryObserver
    del RegistryObserver

if '_t_NodeDynamicInfoSeq' not in _M_IceGrid.__dict__:
    _M_IceGrid._t_NodeDynamicInfoSeq = IcePy.defineSequence('::IceGrid::NodeDynamicInfoSeq', (), _M_IceGrid._t_NodeDynamicInfo)

_M_IceGrid._t_NodeObserver = IcePy.defineValue('::IceGrid::NodeObserver', Ice.Value, -1, (), False, True, None, ())

if 'NodeObserverPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.NodeObserverPrx = Ice.createTempClass()
    class NodeObserverPrx(Ice.ObjectPrx):

        """
        The nodeInit operation indicates the current state
        of nodes. It is called after the registration of an observer.
        Arguments:
        nodes -- The current state of the nodes.
        context -- The request context for the invocation.
        """
        def nodeInit(self, nodes, context=None):
            return _M_IceGrid.NodeObserver._op_nodeInit.invoke(self, ((nodes, ), context))

        """
        The nodeInit operation indicates the current state
        of nodes. It is called after the registration of an observer.
        Arguments:
        nodes -- The current state of the nodes.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def nodeInitAsync(self, nodes, context=None):
            return _M_IceGrid.NodeObserver._op_nodeInit.invokeAsync(self, ((nodes, ), context))

        """
        The nodeInit operation indicates the current state
        of nodes. It is called after the registration of an observer.
        Arguments:
        nodes -- The current state of the nodes.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_nodeInit(self, nodes, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.NodeObserver._op_nodeInit.begin(self, ((nodes, ), _response, _ex, _sent, context))

        """
        The nodeInit operation indicates the current state
        of nodes. It is called after the registration of an observer.
        Arguments:
        nodes -- The current state of the nodes.
        """
        def end_nodeInit(self, _r):
            return _M_IceGrid.NodeObserver._op_nodeInit.end(self, _r)

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        context -- The request context for the invocation.
        """
        def nodeUp(self, node, context=None):
            return _M_IceGrid.NodeObserver._op_nodeUp.invoke(self, ((node, ), context))

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def nodeUpAsync(self, node, context=None):
            return _M_IceGrid.NodeObserver._op_nodeUp.invokeAsync(self, ((node, ), context))

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_nodeUp(self, node, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.NodeObserver._op_nodeUp.begin(self, ((node, ), _response, _ex, _sent, context))

        """
        The nodeUp operation is called to notify an observer that a node
        came up.
        Arguments:
        node -- The node state.
        """
        def end_nodeUp(self, _r):
            return _M_IceGrid.NodeObserver._op_nodeUp.end(self, _r)

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        """
        def nodeDown(self, name, context=None):
            return _M_IceGrid.NodeObserver._op_nodeDown.invoke(self, ((name, ), context))

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def nodeDownAsync(self, name, context=None):
            return _M_IceGrid.NodeObserver._op_nodeDown.invokeAsync(self, ((name, ), context))

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_nodeDown(self, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.NodeObserver._op_nodeDown.begin(self, ((name, ), _response, _ex, _sent, context))

        """
        The nodeDown operation is called to notify an observer that a node
        went down.
        Arguments:
        name -- The node name.
        """
        def end_nodeDown(self, _r):
            return _M_IceGrid.NodeObserver._op_nodeDown.end(self, _r)

        """
        The updateServer operation is called to notify an observer that
        the state of a server changed.
        Arguments:
        node -- The node hosting the server.
        updatedInfo -- The new server state.
        context -- The request context for the invocation.
        """
        def updateServer(self, node, updatedInfo, context=None):
            return _M_IceGrid.NodeObserver._op_updateServer.invoke(self, ((node, updatedInfo), context))

        """
        The updateServer operation is called to notify an observer that
        the state of a server changed.
        Arguments:
        node -- The node hosting the server.
        updatedInfo -- The new server state.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def updateServerAsync(self, node, updatedInfo, context=None):
            return _M_IceGrid.NodeObserver._op_updateServer.invokeAsync(self, ((node, updatedInfo), context))

        """
        The updateServer operation is called to notify an observer that
        the state of a server changed.
        Arguments:
        node -- The node hosting the server.
        updatedInfo -- The new server state.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_updateServer(self, node, updatedInfo, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.NodeObserver._op_updateServer.begin(self, ((node, updatedInfo), _response, _ex, _sent, context))

        """
        The updateServer operation is called to notify an observer that
        the state of a server changed.
        Arguments:
        node -- The node hosting the server.
        updatedInfo -- The new server state.
        """
        def end_updateServer(self, _r):
            return _M_IceGrid.NodeObserver._op_updateServer.end(self, _r)

        """
        The updateAdapter operation is called to notify an observer that
        the state of an adapter changed.
        Arguments:
        node -- The node hosting the adapter.
        updatedInfo -- The new adapter state.
        context -- The request context for the invocation.
        """
        def updateAdapter(self, node, updatedInfo, context=None):
            return _M_IceGrid.NodeObserver._op_updateAdapter.invoke(self, ((node, updatedInfo), context))

        """
        The updateAdapter operation is called to notify an observer that
        the state of an adapter changed.
        Arguments:
        node -- The node hosting the adapter.
        updatedInfo -- The new adapter state.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def updateAdapterAsync(self, node, updatedInfo, context=None):
            return _M_IceGrid.NodeObserver._op_updateAdapter.invokeAsync(self, ((node, updatedInfo), context))

        """
        The updateAdapter operation is called to notify an observer that
        the state of an adapter changed.
        Arguments:
        node -- The node hosting the adapter.
        updatedInfo -- The new adapter state.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_updateAdapter(self, node, updatedInfo, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.NodeObserver._op_updateAdapter.begin(self, ((node, updatedInfo), _response, _ex, _sent, context))

        """
        The updateAdapter operation is called to notify an observer that
        the state of an adapter changed.
        Arguments:
        node -- The node hosting the adapter.
        updatedInfo -- The new adapter state.
        """
        def end_updateAdapter(self, _r):
            return _M_IceGrid.NodeObserver._op_updateAdapter.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.NodeObserverPrx.ice_checkedCast(proxy, '::IceGrid::NodeObserver', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.NodeObserverPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::NodeObserver'
    _M_IceGrid._t_NodeObserverPrx = IcePy.defineProxy('::IceGrid::NodeObserver', NodeObserverPrx)

    _M_IceGrid.NodeObserverPrx = NodeObserverPrx
    del NodeObserverPrx

    _M_IceGrid.NodeObserver = Ice.createTempClass()
    class NodeObserver(Ice.Object):

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::IceGrid::NodeObserver')

        def ice_id(self, current=None):
            return '::IceGrid::NodeObserver'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::NodeObserver'

        def nodeInit(self, nodes, current=None):
            """
            The nodeInit operation indicates the current state
            of nodes. It is called after the registration of an observer.
            Arguments:
            nodes -- The current state of the nodes.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'nodeInit' not implemented")

        def nodeUp(self, node, current=None):
            """
            The nodeUp operation is called to notify an observer that a node
            came up.
            Arguments:
            node -- The node state.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'nodeUp' not implemented")

        def nodeDown(self, name, current=None):
            """
            The nodeDown operation is called to notify an observer that a node
            went down.
            Arguments:
            name -- The node name.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'nodeDown' not implemented")

        def updateServer(self, node, updatedInfo, current=None):
            """
            The updateServer operation is called to notify an observer that
            the state of a server changed.
            Arguments:
            node -- The node hosting the server.
            updatedInfo -- The new server state.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'updateServer' not implemented")

        def updateAdapter(self, node, updatedInfo, current=None):
            """
            The updateAdapter operation is called to notify an observer that
            the state of an adapter changed.
            Arguments:
            node -- The node hosting the adapter.
            updatedInfo -- The new adapter state.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'updateAdapter' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_NodeObserverDisp)

        __repr__ = __str__

    _M_IceGrid._t_NodeObserverDisp = IcePy.defineClass('::IceGrid::NodeObserver', NodeObserver, (), None, ())
    NodeObserver._ice_type = _M_IceGrid._t_NodeObserverDisp

    NodeObserver._op_nodeInit = IcePy.Operation('nodeInit', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_NodeDynamicInfoSeq, False, 0),), (), None, ())
    NodeObserver._op_nodeUp = IcePy.Operation('nodeUp', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_NodeDynamicInfo, False, 0),), (), None, ())
    NodeObserver._op_nodeDown = IcePy.Operation('nodeDown', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0),), (), None, ())
    NodeObserver._op_updateServer = IcePy.Operation('updateServer', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), _M_IceGrid._t_ServerDynamicInfo, False, 0)), (), None, ())
    NodeObserver._op_updateAdapter = IcePy.Operation('updateAdapter', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), _M_IceGrid._t_AdapterDynamicInfo, False, 0)), (), None, ())

    _M_IceGrid.NodeObserver = NodeObserver
    del NodeObserver

_M_IceGrid._t_ApplicationObserver = IcePy.defineValue('::IceGrid::ApplicationObserver', Ice.Value, -1, (), False, True, None, ())

if 'ApplicationObserverPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.ApplicationObserverPrx = Ice.createTempClass()
    class ApplicationObserverPrx(Ice.ObjectPrx):

        """
        applicationInit is called after the registration
        of an observer to indicate the state of the registry.
        Arguments:
        serial -- The current serial number of the registry database. This serial number allows observers to make sure that their internal state is synchronized with the registry.
        applications -- The applications currently registered with the registry.
        context -- The request context for the invocation.
        """
        def applicationInit(self, serial, applications, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationInit.invoke(self, ((serial, applications), context))

        """
        applicationInit is called after the registration
        of an observer to indicate the state of the registry.
        Arguments:
        serial -- The current serial number of the registry database. This serial number allows observers to make sure that their internal state is synchronized with the registry.
        applications -- The applications currently registered with the registry.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def applicationInitAsync(self, serial, applications, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationInit.invokeAsync(self, ((serial, applications), context))

        """
        applicationInit is called after the registration
        of an observer to indicate the state of the registry.
        Arguments:
        serial -- The current serial number of the registry database. This serial number allows observers to make sure that their internal state is synchronized with the registry.
        applications -- The applications currently registered with the registry.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_applicationInit(self, serial, applications, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationInit.begin(self, ((serial, applications), _response, _ex, _sent, context))

        """
        applicationInit is called after the registration
        of an observer to indicate the state of the registry.
        Arguments:
        serial -- The current serial number of the registry database. This serial number allows observers to make sure that their internal state is synchronized with the registry.
        applications -- The applications currently registered with the registry.
        """
        def end_applicationInit(self, _r):
            return _M_IceGrid.ApplicationObserver._op_applicationInit.end(self, _r)

        """
        The applicationAdded operation is called to notify an observer
        that an application was added.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the new application.
        context -- The request context for the invocation.
        """
        def applicationAdded(self, serial, desc, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationAdded.invoke(self, ((serial, desc), context))

        """
        The applicationAdded operation is called to notify an observer
        that an application was added.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the new application.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def applicationAddedAsync(self, serial, desc, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationAdded.invokeAsync(self, ((serial, desc), context))

        """
        The applicationAdded operation is called to notify an observer
        that an application was added.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the new application.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_applicationAdded(self, serial, desc, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationAdded.begin(self, ((serial, desc), _response, _ex, _sent, context))

        """
        The applicationAdded operation is called to notify an observer
        that an application was added.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the new application.
        """
        def end_applicationAdded(self, _r):
            return _M_IceGrid.ApplicationObserver._op_applicationAdded.end(self, _r)

        """
        The applicationRemoved operation is called to notify an observer
        that an application was removed.
        Arguments:
        serial -- The new serial number of the registry database.
        name -- The name of the application that was removed.
        context -- The request context for the invocation.
        """
        def applicationRemoved(self, serial, name, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationRemoved.invoke(self, ((serial, name), context))

        """
        The applicationRemoved operation is called to notify an observer
        that an application was removed.
        Arguments:
        serial -- The new serial number of the registry database.
        name -- The name of the application that was removed.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def applicationRemovedAsync(self, serial, name, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationRemoved.invokeAsync(self, ((serial, name), context))

        """
        The applicationRemoved operation is called to notify an observer
        that an application was removed.
        Arguments:
        serial -- The new serial number of the registry database.
        name -- The name of the application that was removed.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_applicationRemoved(self, serial, name, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationRemoved.begin(self, ((serial, name), _response, _ex, _sent, context))

        """
        The applicationRemoved operation is called to notify an observer
        that an application was removed.
        Arguments:
        serial -- The new serial number of the registry database.
        name -- The name of the application that was removed.
        """
        def end_applicationRemoved(self, _r):
            return _M_IceGrid.ApplicationObserver._op_applicationRemoved.end(self, _r)

        """
        The applicationUpdated operation is called to notify an observer
        that an application was updated.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the update.
        context -- The request context for the invocation.
        """
        def applicationUpdated(self, serial, desc, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationUpdated.invoke(self, ((serial, desc), context))

        """
        The applicationUpdated operation is called to notify an observer
        that an application was updated.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the update.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def applicationUpdatedAsync(self, serial, desc, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationUpdated.invokeAsync(self, ((serial, desc), context))

        """
        The applicationUpdated operation is called to notify an observer
        that an application was updated.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the update.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_applicationUpdated(self, serial, desc, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ApplicationObserver._op_applicationUpdated.begin(self, ((serial, desc), _response, _ex, _sent, context))

        """
        The applicationUpdated operation is called to notify an observer
        that an application was updated.
        Arguments:
        serial -- The new serial number of the registry database.
        desc -- The descriptor of the update.
        """
        def end_applicationUpdated(self, _r):
            return _M_IceGrid.ApplicationObserver._op_applicationUpdated.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.ApplicationObserverPrx.ice_checkedCast(proxy, '::IceGrid::ApplicationObserver', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.ApplicationObserverPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::ApplicationObserver'
    _M_IceGrid._t_ApplicationObserverPrx = IcePy.defineProxy('::IceGrid::ApplicationObserver', ApplicationObserverPrx)

    _M_IceGrid.ApplicationObserverPrx = ApplicationObserverPrx
    del ApplicationObserverPrx

    _M_IceGrid.ApplicationObserver = Ice.createTempClass()
    class ApplicationObserver(Ice.Object):

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::IceGrid::ApplicationObserver')

        def ice_id(self, current=None):
            return '::IceGrid::ApplicationObserver'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::ApplicationObserver'

        def applicationInit(self, serial, applications, current=None):
            """
            applicationInit is called after the registration
            of an observer to indicate the state of the registry.
            Arguments:
            serial -- The current serial number of the registry database. This serial number allows observers to make sure that their internal state is synchronized with the registry.
            applications -- The applications currently registered with the registry.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'applicationInit' not implemented")

        def applicationAdded(self, serial, desc, current=None):
            """
            The applicationAdded operation is called to notify an observer
            that an application was added.
            Arguments:
            serial -- The new serial number of the registry database.
            desc -- The descriptor of the new application.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'applicationAdded' not implemented")

        def applicationRemoved(self, serial, name, current=None):
            """
            The applicationRemoved operation is called to notify an observer
            that an application was removed.
            Arguments:
            serial -- The new serial number of the registry database.
            name -- The name of the application that was removed.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'applicationRemoved' not implemented")

        def applicationUpdated(self, serial, desc, current=None):
            """
            The applicationUpdated operation is called to notify an observer
            that an application was updated.
            Arguments:
            serial -- The new serial number of the registry database.
            desc -- The descriptor of the update.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'applicationUpdated' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_ApplicationObserverDisp)

        __repr__ = __str__

    _M_IceGrid._t_ApplicationObserverDisp = IcePy.defineClass('::IceGrid::ApplicationObserver', ApplicationObserver, (), None, ())
    ApplicationObserver._ice_type = _M_IceGrid._t_ApplicationObserverDisp

    ApplicationObserver._op_applicationInit = IcePy.Operation('applicationInit', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_int, False, 0), ((), _M_IceGrid._t_ApplicationInfoSeq, False, 0)), (), None, ())
    ApplicationObserver._op_applicationAdded = IcePy.Operation('applicationAdded', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_int, False, 0), ((), _M_IceGrid._t_ApplicationInfo, False, 0)), (), None, ())
    ApplicationObserver._op_applicationRemoved = IcePy.Operation('applicationRemoved', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_int, False, 0), ((), IcePy._t_string, False, 0)), (), None, ())
    ApplicationObserver._op_applicationUpdated = IcePy.Operation('applicationUpdated', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_int, False, 0), ((), _M_IceGrid._t_ApplicationUpdateInfo, False, 0)), (), None, ())

    _M_IceGrid.ApplicationObserver = ApplicationObserver
    del ApplicationObserver

_M_IceGrid._t_AdapterObserver = IcePy.defineValue('::IceGrid::AdapterObserver', Ice.Value, -1, (), False, True, None, ())

if 'AdapterObserverPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.AdapterObserverPrx = Ice.createTempClass()
    class AdapterObserverPrx(Ice.ObjectPrx):

        """
        adapterInit is called after registration of
        an observer to indicate the state of the registry.
        Arguments:
        adpts -- The adapters that were dynamically registered with the registry (not through the deployment mechanism).
        context -- The request context for the invocation.
        """
        def adapterInit(self, adpts, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterInit.invoke(self, ((adpts, ), context))

        """
        adapterInit is called after registration of
        an observer to indicate the state of the registry.
        Arguments:
        adpts -- The adapters that were dynamically registered with the registry (not through the deployment mechanism).
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def adapterInitAsync(self, adpts, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterInit.invokeAsync(self, ((adpts, ), context))

        """
        adapterInit is called after registration of
        an observer to indicate the state of the registry.
        Arguments:
        adpts -- The adapters that were dynamically registered with the registry (not through the deployment mechanism).
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_adapterInit(self, adpts, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterInit.begin(self, ((adpts, ), _response, _ex, _sent, context))

        """
        adapterInit is called after registration of
        an observer to indicate the state of the registry.
        Arguments:
        adpts -- The adapters that were dynamically registered with the registry (not through the deployment mechanism).
        """
        def end_adapterInit(self, _r):
            return _M_IceGrid.AdapterObserver._op_adapterInit.end(self, _r)

        """
        The adapterAdded operation is called to notify an observer when
        a dynamically-registered adapter was added.
        Arguments:
        info -- The details of the new adapter.
        context -- The request context for the invocation.
        """
        def adapterAdded(self, info, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterAdded.invoke(self, ((info, ), context))

        """
        The adapterAdded operation is called to notify an observer when
        a dynamically-registered adapter was added.
        Arguments:
        info -- The details of the new adapter.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def adapterAddedAsync(self, info, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterAdded.invokeAsync(self, ((info, ), context))

        """
        The adapterAdded operation is called to notify an observer when
        a dynamically-registered adapter was added.
        Arguments:
        info -- The details of the new adapter.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_adapterAdded(self, info, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterAdded.begin(self, ((info, ), _response, _ex, _sent, context))

        """
        The adapterAdded operation is called to notify an observer when
        a dynamically-registered adapter was added.
        Arguments:
        info -- The details of the new adapter.
        """
        def end_adapterAdded(self, _r):
            return _M_IceGrid.AdapterObserver._op_adapterAdded.end(self, _r)

        """
        The adapterUpdated operation is called to notify an observer when
        a dynamically-registered adapter was updated.
        Arguments:
        info -- The details of the updated adapter.
        context -- The request context for the invocation.
        """
        def adapterUpdated(self, info, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterUpdated.invoke(self, ((info, ), context))

        """
        The adapterUpdated operation is called to notify an observer when
        a dynamically-registered adapter was updated.
        Arguments:
        info -- The details of the updated adapter.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def adapterUpdatedAsync(self, info, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterUpdated.invokeAsync(self, ((info, ), context))

        """
        The adapterUpdated operation is called to notify an observer when
        a dynamically-registered adapter was updated.
        Arguments:
        info -- The details of the updated adapter.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_adapterUpdated(self, info, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterUpdated.begin(self, ((info, ), _response, _ex, _sent, context))

        """
        The adapterUpdated operation is called to notify an observer when
        a dynamically-registered adapter was updated.
        Arguments:
        info -- The details of the updated adapter.
        """
        def end_adapterUpdated(self, _r):
            return _M_IceGrid.AdapterObserver._op_adapterUpdated.end(self, _r)

        """
        The adapterRemoved operation is called to notify an observer when
        a dynamically-registered adapter was removed.
        Arguments:
        id -- The ID of the removed adapter.
        context -- The request context for the invocation.
        """
        def adapterRemoved(self, id, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterRemoved.invoke(self, ((id, ), context))

        """
        The adapterRemoved operation is called to notify an observer when
        a dynamically-registered adapter was removed.
        Arguments:
        id -- The ID of the removed adapter.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def adapterRemovedAsync(self, id, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterRemoved.invokeAsync(self, ((id, ), context))

        """
        The adapterRemoved operation is called to notify an observer when
        a dynamically-registered adapter was removed.
        Arguments:
        id -- The ID of the removed adapter.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_adapterRemoved(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdapterObserver._op_adapterRemoved.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        The adapterRemoved operation is called to notify an observer when
        a dynamically-registered adapter was removed.
        Arguments:
        id -- The ID of the removed adapter.
        """
        def end_adapterRemoved(self, _r):
            return _M_IceGrid.AdapterObserver._op_adapterRemoved.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.AdapterObserverPrx.ice_checkedCast(proxy, '::IceGrid::AdapterObserver', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.AdapterObserverPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::AdapterObserver'
    _M_IceGrid._t_AdapterObserverPrx = IcePy.defineProxy('::IceGrid::AdapterObserver', AdapterObserverPrx)

    _M_IceGrid.AdapterObserverPrx = AdapterObserverPrx
    del AdapterObserverPrx

    _M_IceGrid.AdapterObserver = Ice.createTempClass()
    class AdapterObserver(Ice.Object):

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::IceGrid::AdapterObserver')

        def ice_id(self, current=None):
            return '::IceGrid::AdapterObserver'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::AdapterObserver'

        def adapterInit(self, adpts, current=None):
            """
            adapterInit is called after registration of
            an observer to indicate the state of the registry.
            Arguments:
            adpts -- The adapters that were dynamically registered with the registry (not through the deployment mechanism).
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'adapterInit' not implemented")

        def adapterAdded(self, info, current=None):
            """
            The adapterAdded operation is called to notify an observer when
            a dynamically-registered adapter was added.
            Arguments:
            info -- The details of the new adapter.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'adapterAdded' not implemented")

        def adapterUpdated(self, info, current=None):
            """
            The adapterUpdated operation is called to notify an observer when
            a dynamically-registered adapter was updated.
            Arguments:
            info -- The details of the updated adapter.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'adapterUpdated' not implemented")

        def adapterRemoved(self, id, current=None):
            """
            The adapterRemoved operation is called to notify an observer when
            a dynamically-registered adapter was removed.
            Arguments:
            id -- The ID of the removed adapter.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'adapterRemoved' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_AdapterObserverDisp)

        __repr__ = __str__

    _M_IceGrid._t_AdapterObserverDisp = IcePy.defineClass('::IceGrid::AdapterObserver', AdapterObserver, (), None, ())
    AdapterObserver._ice_type = _M_IceGrid._t_AdapterObserverDisp

    AdapterObserver._op_adapterInit = IcePy.Operation('adapterInit', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_AdapterInfoSeq, False, 0),), (), None, ())
    AdapterObserver._op_adapterAdded = IcePy.Operation('adapterAdded', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_AdapterInfo, False, 0),), (), None, ())
    AdapterObserver._op_adapterUpdated = IcePy.Operation('adapterUpdated', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_AdapterInfo, False, 0),), (), None, ())
    AdapterObserver._op_adapterRemoved = IcePy.Operation('adapterRemoved', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0),), (), None, ())

    _M_IceGrid.AdapterObserver = AdapterObserver
    del AdapterObserver

_M_IceGrid._t_ObjectObserver = IcePy.defineValue('::IceGrid::ObjectObserver', Ice.Value, -1, (), False, True, None, ())

if 'ObjectObserverPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.ObjectObserverPrx = Ice.createTempClass()
    class ObjectObserverPrx(Ice.ObjectPrx):

        """
        objectInit is called after the registration of
        an observer to indicate the state of the registry.
        Arguments:
        objects -- The objects registered with the Admin interface (not through the deployment mechanism).
        context -- The request context for the invocation.
        """
        def objectInit(self, objects, context=None):
            return _M_IceGrid.ObjectObserver._op_objectInit.invoke(self, ((objects, ), context))

        """
        objectInit is called after the registration of
        an observer to indicate the state of the registry.
        Arguments:
        objects -- The objects registered with the Admin interface (not through the deployment mechanism).
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def objectInitAsync(self, objects, context=None):
            return _M_IceGrid.ObjectObserver._op_objectInit.invokeAsync(self, ((objects, ), context))

        """
        objectInit is called after the registration of
        an observer to indicate the state of the registry.
        Arguments:
        objects -- The objects registered with the Admin interface (not through the deployment mechanism).
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_objectInit(self, objects, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ObjectObserver._op_objectInit.begin(self, ((objects, ), _response, _ex, _sent, context))

        """
        objectInit is called after the registration of
        an observer to indicate the state of the registry.
        Arguments:
        objects -- The objects registered with the Admin interface (not through the deployment mechanism).
        """
        def end_objectInit(self, _r):
            return _M_IceGrid.ObjectObserver._op_objectInit.end(self, _r)

        """
        The objectAdded operation is called to notify an observer when an
        object was added to the Admin interface.
        Arguments:
        info -- The details of the added object.
        context -- The request context for the invocation.
        """
        def objectAdded(self, info, context=None):
            return _M_IceGrid.ObjectObserver._op_objectAdded.invoke(self, ((info, ), context))

        """
        The objectAdded operation is called to notify an observer when an
        object was added to the Admin interface.
        Arguments:
        info -- The details of the added object.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def objectAddedAsync(self, info, context=None):
            return _M_IceGrid.ObjectObserver._op_objectAdded.invokeAsync(self, ((info, ), context))

        """
        The objectAdded operation is called to notify an observer when an
        object was added to the Admin interface.
        Arguments:
        info -- The details of the added object.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_objectAdded(self, info, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ObjectObserver._op_objectAdded.begin(self, ((info, ), _response, _ex, _sent, context))

        """
        The objectAdded operation is called to notify an observer when an
        object was added to the Admin interface.
        Arguments:
        info -- The details of the added object.
        """
        def end_objectAdded(self, _r):
            return _M_IceGrid.ObjectObserver._op_objectAdded.end(self, _r)

        """
        objectUpdated is called to notify an observer when
        an object registered with the Admin interface was updated.
        Arguments:
        info -- The details of the updated object.
        context -- The request context for the invocation.
        """
        def objectUpdated(self, info, context=None):
            return _M_IceGrid.ObjectObserver._op_objectUpdated.invoke(self, ((info, ), context))

        """
        objectUpdated is called to notify an observer when
        an object registered with the Admin interface was updated.
        Arguments:
        info -- The details of the updated object.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def objectUpdatedAsync(self, info, context=None):
            return _M_IceGrid.ObjectObserver._op_objectUpdated.invokeAsync(self, ((info, ), context))

        """
        objectUpdated is called to notify an observer when
        an object registered with the Admin interface was updated.
        Arguments:
        info -- The details of the updated object.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_objectUpdated(self, info, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ObjectObserver._op_objectUpdated.begin(self, ((info, ), _response, _ex, _sent, context))

        """
        objectUpdated is called to notify an observer when
        an object registered with the Admin interface was updated.
        Arguments:
        info -- The details of the updated object.
        """
        def end_objectUpdated(self, _r):
            return _M_IceGrid.ObjectObserver._op_objectUpdated.end(self, _r)

        """
        objectRemoved is called to notify an observer when
        an object registered with the Admin interface was removed.
        Arguments:
        id -- The identity of the removed object.
        context -- The request context for the invocation.
        """
        def objectRemoved(self, id, context=None):
            return _M_IceGrid.ObjectObserver._op_objectRemoved.invoke(self, ((id, ), context))

        """
        objectRemoved is called to notify an observer when
        an object registered with the Admin interface was removed.
        Arguments:
        id -- The identity of the removed object.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def objectRemovedAsync(self, id, context=None):
            return _M_IceGrid.ObjectObserver._op_objectRemoved.invokeAsync(self, ((id, ), context))

        """
        objectRemoved is called to notify an observer when
        an object registered with the Admin interface was removed.
        Arguments:
        id -- The identity of the removed object.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_objectRemoved(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.ObjectObserver._op_objectRemoved.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        objectRemoved is called to notify an observer when
        an object registered with the Admin interface was removed.
        Arguments:
        id -- The identity of the removed object.
        """
        def end_objectRemoved(self, _r):
            return _M_IceGrid.ObjectObserver._op_objectRemoved.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.ObjectObserverPrx.ice_checkedCast(proxy, '::IceGrid::ObjectObserver', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.ObjectObserverPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::ObjectObserver'
    _M_IceGrid._t_ObjectObserverPrx = IcePy.defineProxy('::IceGrid::ObjectObserver', ObjectObserverPrx)

    _M_IceGrid.ObjectObserverPrx = ObjectObserverPrx
    del ObjectObserverPrx

    _M_IceGrid.ObjectObserver = Ice.createTempClass()
    class ObjectObserver(Ice.Object):

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::IceGrid::ObjectObserver')

        def ice_id(self, current=None):
            return '::IceGrid::ObjectObserver'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::ObjectObserver'

        def objectInit(self, objects, current=None):
            """
            objectInit is called after the registration of
            an observer to indicate the state of the registry.
            Arguments:
            objects -- The objects registered with the Admin interface (not through the deployment mechanism).
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'objectInit' not implemented")

        def objectAdded(self, info, current=None):
            """
            The objectAdded operation is called to notify an observer when an
            object was added to the Admin interface.
            Arguments:
            info -- The details of the added object.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'objectAdded' not implemented")

        def objectUpdated(self, info, current=None):
            """
            objectUpdated is called to notify an observer when
            an object registered with the Admin interface was updated.
            Arguments:
            info -- The details of the updated object.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'objectUpdated' not implemented")

        def objectRemoved(self, id, current=None):
            """
            objectRemoved is called to notify an observer when
            an object registered with the Admin interface was removed.
            Arguments:
            id -- The identity of the removed object.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'objectRemoved' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_ObjectObserverDisp)

        __repr__ = __str__

    _M_IceGrid._t_ObjectObserverDisp = IcePy.defineClass('::IceGrid::ObjectObserver', ObjectObserver, (), None, ())
    ObjectObserver._ice_type = _M_IceGrid._t_ObjectObserverDisp

    ObjectObserver._op_objectInit = IcePy.Operation('objectInit', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ObjectInfoSeq, False, 0),), (), None, ())
    ObjectObserver._op_objectAdded = IcePy.Operation('objectAdded', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ObjectInfo, False, 0),), (), None, ())
    ObjectObserver._op_objectUpdated = IcePy.Operation('objectUpdated', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_IceGrid._t_ObjectInfo, False, 0),), (), None, ())
    ObjectObserver._op_objectRemoved = IcePy.Operation('objectRemoved', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_Ice._t_Identity, False, 0),), (), None, ())

    _M_IceGrid.ObjectObserver = ObjectObserver
    del ObjectObserver

_M_IceGrid._t_AdminSession = IcePy.defineValue('::IceGrid::AdminSession', Ice.Value, -1, (), False, True, None, ())

if 'AdminSessionPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.AdminSessionPrx = Ice.createTempClass()
    class AdminSessionPrx(_M_Glacier2.SessionPrx):

        """
        Keep the session alive. Clients should call this operation
        regularly to prevent the server from reaping the session.
        Arguments:
        context -- The request context for the invocation.
        """
        def keepAlive(self, context=None):
            return _M_IceGrid.AdminSession._op_keepAlive.invoke(self, ((), context))

        """
        Keep the session alive. Clients should call this operation
        regularly to prevent the server from reaping the session.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def keepAliveAsync(self, context=None):
            return _M_IceGrid.AdminSession._op_keepAlive.invokeAsync(self, ((), context))

        """
        Keep the session alive. Clients should call this operation
        regularly to prevent the server from reaping the session.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_keepAlive(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_keepAlive.begin(self, ((), _response, _ex, _sent, context))

        """
        Keep the session alive. Clients should call this operation
        regularly to prevent the server from reaping the session.
        Arguments:
        """
        def end_keepAlive(self, _r):
            return _M_IceGrid.AdminSession._op_keepAlive.end(self, _r)

        """
        Get the admin interface. The admin object returned by this
        operation can only be accessed by the session.
        Arguments:
        context -- The request context for the invocation.
        Returns: The admin interface proxy.
        """
        def getAdmin(self, context=None):
            return _M_IceGrid.AdminSession._op_getAdmin.invoke(self, ((), context))

        """
        Get the admin interface. The admin object returned by this
        operation can only be accessed by the session.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAdminAsync(self, context=None):
            return _M_IceGrid.AdminSession._op_getAdmin.invokeAsync(self, ((), context))

        """
        Get the admin interface. The admin object returned by this
        operation can only be accessed by the session.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAdmin(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_getAdmin.begin(self, ((), _response, _ex, _sent, context))

        """
        Get the admin interface. The admin object returned by this
        operation can only be accessed by the session.
        Arguments:
        Returns: The admin interface proxy.
        """
        def end_getAdmin(self, _r):
            return _M_IceGrid.AdminSession._op_getAdmin.end(self, _r)

        """
        Get a "template" proxy for admin callback objects.
        An Admin client uses this proxy to set the category of its callback
        objects, and the published endpoints of the object adapter hosting
        the admin callback objects.
        Arguments:
        context -- The request context for the invocation.
        Returns: A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
        """
        def getAdminCallbackTemplate(self, context=None):
            return _M_IceGrid.AdminSession._op_getAdminCallbackTemplate.invoke(self, ((), context))

        """
        Get a "template" proxy for admin callback objects.
        An Admin client uses this proxy to set the category of its callback
        objects, and the published endpoints of the object adapter hosting
        the admin callback objects.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getAdminCallbackTemplateAsync(self, context=None):
            return _M_IceGrid.AdminSession._op_getAdminCallbackTemplate.invokeAsync(self, ((), context))

        """
        Get a "template" proxy for admin callback objects.
        An Admin client uses this proxy to set the category of its callback
        objects, and the published endpoints of the object adapter hosting
        the admin callback objects.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getAdminCallbackTemplate(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_getAdminCallbackTemplate.begin(self, ((), _response, _ex, _sent, context))

        """
        Get a "template" proxy for admin callback objects.
        An Admin client uses this proxy to set the category of its callback
        objects, and the published endpoints of the object adapter hosting
        the admin callback objects.
        Arguments:
        Returns: A template proxy. The returned proxy is null when the Admin session was established using Glacier2.
        """
        def end_getAdminCallbackTemplate(self, _r):
            return _M_IceGrid.AdminSession._op_getAdminCallbackTemplate.end(self, _r)

        """
        Set the observer proxies that receive
        notifications when the state of the registry
        or nodes changes.
        Arguments:
        registryObs -- The registry observer.
        nodeObs -- The node observer.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        context -- The request context for the invocation.
        Throws:
        ObserverAlreadyRegisteredException -- Raised if an observer is already registered with this registry.
        """
        def setObservers(self, registryObs, nodeObs, appObs, adptObs, objObs, context=None):
            return _M_IceGrid.AdminSession._op_setObservers.invoke(self, ((registryObs, nodeObs, appObs, adptObs, objObs), context))

        """
        Set the observer proxies that receive
        notifications when the state of the registry
        or nodes changes.
        Arguments:
        registryObs -- The registry observer.
        nodeObs -- The node observer.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def setObserversAsync(self, registryObs, nodeObs, appObs, adptObs, objObs, context=None):
            return _M_IceGrid.AdminSession._op_setObservers.invokeAsync(self, ((registryObs, nodeObs, appObs, adptObs, objObs), context))

        """
        Set the observer proxies that receive
        notifications when the state of the registry
        or nodes changes.
        Arguments:
        registryObs -- The registry observer.
        nodeObs -- The node observer.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_setObservers(self, registryObs, nodeObs, appObs, adptObs, objObs, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_setObservers.begin(self, ((registryObs, nodeObs, appObs, adptObs, objObs), _response, _ex, _sent, context))

        """
        Set the observer proxies that receive
        notifications when the state of the registry
        or nodes changes.
        Arguments:
        registryObs -- The registry observer.
        nodeObs -- The node observer.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        Throws:
        ObserverAlreadyRegisteredException -- Raised if an observer is already registered with this registry.
        """
        def end_setObservers(self, _r):
            return _M_IceGrid.AdminSession._op_setObservers.end(self, _r)

        """
        Set the observer identities that receive
        notifications the state of the registry
        or nodes changes. This operation should be used by clients that
        are using a bidirectional connection to communicate with the
        session.
        Arguments:
        registryObs -- The registry observer identity.
        nodeObs -- The node observer identity.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        context -- The request context for the invocation.
        Throws:
        ObserverAlreadyRegisteredException -- Raised if an observer is already registered with this registry.
        """
        def setObserversByIdentity(self, registryObs, nodeObs, appObs, adptObs, objObs, context=None):
            return _M_IceGrid.AdminSession._op_setObserversByIdentity.invoke(self, ((registryObs, nodeObs, appObs, adptObs, objObs), context))

        """
        Set the observer identities that receive
        notifications the state of the registry
        or nodes changes. This operation should be used by clients that
        are using a bidirectional connection to communicate with the
        session.
        Arguments:
        registryObs -- The registry observer identity.
        nodeObs -- The node observer identity.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def setObserversByIdentityAsync(self, registryObs, nodeObs, appObs, adptObs, objObs, context=None):
            return _M_IceGrid.AdminSession._op_setObserversByIdentity.invokeAsync(self, ((registryObs, nodeObs, appObs, adptObs, objObs), context))

        """
        Set the observer identities that receive
        notifications the state of the registry
        or nodes changes. This operation should be used by clients that
        are using a bidirectional connection to communicate with the
        session.
        Arguments:
        registryObs -- The registry observer identity.
        nodeObs -- The node observer identity.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_setObserversByIdentity(self, registryObs, nodeObs, appObs, adptObs, objObs, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_setObserversByIdentity.begin(self, ((registryObs, nodeObs, appObs, adptObs, objObs), _response, _ex, _sent, context))

        """
        Set the observer identities that receive
        notifications the state of the registry
        or nodes changes. This operation should be used by clients that
        are using a bidirectional connection to communicate with the
        session.
        Arguments:
        registryObs -- The registry observer identity.
        nodeObs -- The node observer identity.
        appObs -- The application observer.
        adptObs -- The adapter observer.
        objObs -- The object observer.
        Throws:
        ObserverAlreadyRegisteredException -- Raised if an observer is already registered with this registry.
        """
        def end_setObserversByIdentity(self, _r):
            return _M_IceGrid.AdminSession._op_setObserversByIdentity.end(self, _r)

        """
        Acquires an exclusive lock to start updating the registry applications.
        Arguments:
        context -- The request context for the invocation.
        Returns: The current serial.
        Throws:
        AccessDeniedException -- Raised if the exclusive lock can't be acquired. This might happen if the lock is currently acquired by another session.
        """
        def startUpdate(self, context=None):
            return _M_IceGrid.AdminSession._op_startUpdate.invoke(self, ((), context))

        """
        Acquires an exclusive lock to start updating the registry applications.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def startUpdateAsync(self, context=None):
            return _M_IceGrid.AdminSession._op_startUpdate.invokeAsync(self, ((), context))

        """
        Acquires an exclusive lock to start updating the registry applications.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_startUpdate(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_startUpdate.begin(self, ((), _response, _ex, _sent, context))

        """
        Acquires an exclusive lock to start updating the registry applications.
        Arguments:
        Returns: The current serial.
        Throws:
        AccessDeniedException -- Raised if the exclusive lock can't be acquired. This might happen if the lock is currently acquired by another session.
        """
        def end_startUpdate(self, _r):
            return _M_IceGrid.AdminSession._op_startUpdate.end(self, _r)

        """
        Finish updating the registry and release the exclusive lock.
        Arguments:
        context -- The request context for the invocation.
        Throws:
        AccessDeniedException -- Raised if the session doesn't hold the exclusive lock.
        """
        def finishUpdate(self, context=None):
            return _M_IceGrid.AdminSession._op_finishUpdate.invoke(self, ((), context))

        """
        Finish updating the registry and release the exclusive lock.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def finishUpdateAsync(self, context=None):
            return _M_IceGrid.AdminSession._op_finishUpdate.invokeAsync(self, ((), context))

        """
        Finish updating the registry and release the exclusive lock.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_finishUpdate(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_finishUpdate.begin(self, ((), _response, _ex, _sent, context))

        """
        Finish updating the registry and release the exclusive lock.
        Arguments:
        Throws:
        AccessDeniedException -- Raised if the session doesn't hold the exclusive lock.
        """
        def end_finishUpdate(self, _r):
            return _M_IceGrid.AdminSession._op_finishUpdate.end(self, _r)

        """
        Get the name of the registry replica hosting this session.
        Arguments:
        context -- The request context for the invocation.
        Returns: The replica name of the registry.
        """
        def getReplicaName(self, context=None):
            return _M_IceGrid.AdminSession._op_getReplicaName.invoke(self, ((), context))

        """
        Get the name of the registry replica hosting this session.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getReplicaNameAsync(self, context=None):
            return _M_IceGrid.AdminSession._op_getReplicaName.invokeAsync(self, ((), context))

        """
        Get the name of the registry replica hosting this session.
        Arguments:
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_getReplicaName(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_getReplicaName.begin(self, ((), _response, _ex, _sent, context))

        """
        Get the name of the registry replica hosting this session.
        Arguments:
        Returns: The replica name of the registry.
        """
        def end_getReplicaName(self, _r):
            return _M_IceGrid.AdminSession._op_getReplicaName.end(self, _r)

        """
        Open the given server log file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        path -- The path of the log file. A log file can be opened only if it's declared in the server or service deployment descriptor.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: An iterator to read the file.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        FileNotAvailableException -- Raised if the file can't be read.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def openServerLog(self, id, path, count, context=None):
            return _M_IceGrid.AdminSession._op_openServerLog.invoke(self, ((id, path, count), context))

        """
        Open the given server log file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        path -- The path of the log file. A log file can be opened only if it's declared in the server or service deployment descriptor.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def openServerLogAsync(self, id, path, count, context=None):
            return _M_IceGrid.AdminSession._op_openServerLog.invokeAsync(self, ((id, path, count), context))

        """
        Open the given server log file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        path -- The path of the log file. A log file can be opened only if it's declared in the server or service deployment descriptor.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_openServerLog(self, id, path, count, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_openServerLog.begin(self, ((id, path, count), _response, _ex, _sent, context))

        """
        Open the given server log file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        path -- The path of the log file. A log file can be opened only if it's declared in the server or service deployment descriptor.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        Returns: An iterator to read the file.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        FileNotAvailableException -- Raised if the file can't be read.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_openServerLog(self, _r):
            return _M_IceGrid.AdminSession._op_openServerLog.end(self, _r)

        """
        Open the given server stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: An iterator to read the file.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        FileNotAvailableException -- Raised if the file can't be read.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def openServerStdErr(self, id, count, context=None):
            return _M_IceGrid.AdminSession._op_openServerStdErr.invoke(self, ((id, count), context))

        """
        Open the given server stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def openServerStdErrAsync(self, id, count, context=None):
            return _M_IceGrid.AdminSession._op_openServerStdErr.invokeAsync(self, ((id, count), context))

        """
        Open the given server stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_openServerStdErr(self, id, count, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_openServerStdErr.begin(self, ((id, count), _response, _ex, _sent, context))

        """
        Open the given server stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        Returns: An iterator to read the file.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        FileNotAvailableException -- Raised if the file can't be read.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_openServerStdErr(self, _r):
            return _M_IceGrid.AdminSession._op_openServerStdErr.end(self, _r)

        """
        Open the given server stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: An iterator to read the file.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        FileNotAvailableException -- Raised if the file can't be read.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def openServerStdOut(self, id, count, context=None):
            return _M_IceGrid.AdminSession._op_openServerStdOut.invoke(self, ((id, count), context))

        """
        Open the given server stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def openServerStdOutAsync(self, id, count, context=None):
            return _M_IceGrid.AdminSession._op_openServerStdOut.invokeAsync(self, ((id, count), context))

        """
        Open the given server stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_openServerStdOut(self, id, count, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_openServerStdOut.begin(self, ((id, count), _response, _ex, _sent, context))

        """
        Open the given server stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        id -- The server id.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        Returns: An iterator to read the file.
        Throws:
        DeploymentException -- Raised if the server couldn't be deployed on the node.
        FileNotAvailableException -- Raised if the file can't be read.
        NodeUnreachableException -- Raised if the node could not be reached.
        ServerNotExistException -- Raised if the server doesn't exist.
        """
        def end_openServerStdOut(self, _r):
            return _M_IceGrid.AdminSession._op_openServerStdOut.end(self, _r)

        """
        Open the given node stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def openNodeStdErr(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openNodeStdErr.invoke(self, ((name, count), context))

        """
        Open the given node stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def openNodeStdErrAsync(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openNodeStdErr.invokeAsync(self, ((name, count), context))

        """
        Open the given node stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_openNodeStdErr(self, name, count, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_openNodeStdErr.begin(self, ((name, count), _response, _ex, _sent, context))

        """
        Open the given node stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_openNodeStdErr(self, _r):
            return _M_IceGrid.AdminSession._op_openNodeStdErr.end(self, _r)

        """
        Open the given node stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def openNodeStdOut(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openNodeStdOut.invoke(self, ((name, count), context))

        """
        Open the given node stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def openNodeStdOutAsync(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openNodeStdOut.invokeAsync(self, ((name, count), context))

        """
        Open the given node stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_openNodeStdOut(self, name, count, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_openNodeStdOut.begin(self, ((name, count), _response, _ex, _sent, context))

        """
        Open the given node stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The node name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        NodeNotExistException -- Raised if the node doesn't exist.
        NodeUnreachableException -- Raised if the node could not be reached.
        """
        def end_openNodeStdOut(self, _r):
            return _M_IceGrid.AdminSession._op_openNodeStdOut.end(self, _r)

        """
        Open the given registry stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def openRegistryStdErr(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openRegistryStdErr.invoke(self, ((name, count), context))

        """
        Open the given registry stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def openRegistryStdErrAsync(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openRegistryStdErr.invokeAsync(self, ((name, count), context))

        """
        Open the given registry stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_openRegistryStdErr(self, name, count, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_openRegistryStdErr.begin(self, ((name, count), _response, _ex, _sent, context))

        """
        Open the given registry stderr file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def end_openRegistryStdErr(self, _r):
            return _M_IceGrid.AdminSession._op_openRegistryStdErr.end(self, _r)

        """
        Open the given registry stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def openRegistryStdOut(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openRegistryStdOut.invoke(self, ((name, count), context))

        """
        Open the given registry stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def openRegistryStdOutAsync(self, name, count, context=None):
            return _M_IceGrid.AdminSession._op_openRegistryStdOut.invokeAsync(self, ((name, count), context))

        """
        Open the given registry stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        _response -- The asynchronous response callback.
        _ex -- The asynchronous exception callback.
        _sent -- The asynchronous sent callback.
        context -- The request context for the invocation.
        Returns: An asynchronous result object for the invocation.
        """
        def begin_openRegistryStdOut(self, name, count, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.AdminSession._op_openRegistryStdOut.begin(self, ((name, count), _response, _ex, _sent, context))

        """
        Open the given registry stdout file for reading. The file can be
        read with the returned file iterator.
        Arguments:
        name -- The registry name.
        count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
        Returns: An iterator to read the file.
        Throws:
        FileNotAvailableException -- Raised if the file can't be read.
        RegistryNotExistException -- Raised if the registry doesn't exist.
        RegistryUnreachableException -- Raised if the registry could not be reached.
        """
        def end_openRegistryStdOut(self, _r):
            return _M_IceGrid.AdminSession._op_openRegistryStdOut.end(self, _r)

        @staticmethod
        def checkedCast(proxy, facetOrContext=None, context=None):
            return _M_IceGrid.AdminSessionPrx.ice_checkedCast(proxy, '::IceGrid::AdminSession', facetOrContext, context)

        @staticmethod
        def uncheckedCast(proxy, facet=None):
            return _M_IceGrid.AdminSessionPrx.ice_uncheckedCast(proxy, facet)

        @staticmethod
        def ice_staticId():
            return '::IceGrid::AdminSession'
    _M_IceGrid._t_AdminSessionPrx = IcePy.defineProxy('::IceGrid::AdminSession', AdminSessionPrx)

    _M_IceGrid.AdminSessionPrx = AdminSessionPrx
    del AdminSessionPrx

    _M_IceGrid.AdminSession = Ice.createTempClass()
    class AdminSession(_M_Glacier2.Session):

        def ice_ids(self, current=None):
            return ('::Glacier2::Session', '::Ice::Object', '::IceGrid::AdminSession')

        def ice_id(self, current=None):
            return '::IceGrid::AdminSession'

        @staticmethod
        def ice_staticId():
            return '::IceGrid::AdminSession'

        def keepAlive(self, current=None):
            """
            Keep the session alive. Clients should call this operation
            regularly to prevent the server from reaping the session.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'keepAlive' not implemented")

        def getAdmin(self, current=None):
            """
            Get the admin interface. The admin object returned by this
            operation can only be accessed by the session.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAdmin' not implemented")

        def getAdminCallbackTemplate(self, current=None):
            """
            Get a "template" proxy for admin callback objects.
            An Admin client uses this proxy to set the category of its callback
            objects, and the published endpoints of the object adapter hosting
            the admin callback objects.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getAdminCallbackTemplate' not implemented")

        def setObservers(self, registryObs, nodeObs, appObs, adptObs, objObs, current=None):
            """
            Set the observer proxies that receive
            notifications when the state of the registry
            or nodes changes.
            Arguments:
            registryObs -- The registry observer.
            nodeObs -- The node observer.
            appObs -- The application observer.
            adptObs -- The adapter observer.
            objObs -- The object observer.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            ObserverAlreadyRegisteredException -- Raised if an observer is already registered with this registry.
            """
            raise NotImplementedError("servant method 'setObservers' not implemented")

        def setObserversByIdentity(self, registryObs, nodeObs, appObs, adptObs, objObs, current=None):
            """
            Set the observer identities that receive
            notifications the state of the registry
            or nodes changes. This operation should be used by clients that
            are using a bidirectional connection to communicate with the
            session.
            Arguments:
            registryObs -- The registry observer identity.
            nodeObs -- The node observer identity.
            appObs -- The application observer.
            adptObs -- The adapter observer.
            objObs -- The object observer.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            ObserverAlreadyRegisteredException -- Raised if an observer is already registered with this registry.
            """
            raise NotImplementedError("servant method 'setObserversByIdentity' not implemented")

        def startUpdate(self, current=None):
            """
            Acquires an exclusive lock to start updating the registry applications.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            AccessDeniedException -- Raised if the exclusive lock can't be acquired. This might happen if the lock is currently acquired by another session.
            """
            raise NotImplementedError("servant method 'startUpdate' not implemented")

        def finishUpdate(self, current=None):
            """
            Finish updating the registry and release the exclusive lock.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            AccessDeniedException -- Raised if the session doesn't hold the exclusive lock.
            """
            raise NotImplementedError("servant method 'finishUpdate' not implemented")

        def getReplicaName(self, current=None):
            """
            Get the name of the registry replica hosting this session.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getReplicaName' not implemented")

        def openServerLog(self, id, path, count, current=None):
            """
            Open the given server log file for reading. The file can be
            read with the returned file iterator.
            Arguments:
            id -- The server id.
            path -- The path of the log file. A log file can be opened only if it's declared in the server or service deployment descriptor.
            count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            FileNotAvailableException -- Raised if the file can't be read.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'openServerLog' not implemented")

        def openServerStdErr(self, id, count, current=None):
            """
            Open the given server stderr file for reading. The file can be
            read with the returned file iterator.
            Arguments:
            id -- The server id.
            count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            FileNotAvailableException -- Raised if the file can't be read.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'openServerStdErr' not implemented")

        def openServerStdOut(self, id, count, current=None):
            """
            Open the given server stdout file for reading. The file can be
            read with the returned file iterator.
            Arguments:
            id -- The server id.
            count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            DeploymentException -- Raised if the server couldn't be deployed on the node.
            FileNotAvailableException -- Raised if the file can't be read.
            NodeUnreachableException -- Raised if the node could not be reached.
            ServerNotExistException -- Raised if the server doesn't exist.
            """
            raise NotImplementedError("servant method 'openServerStdOut' not implemented")

        def openNodeStdErr(self, name, count, current=None):
            """
            Open the given node stderr file for reading. The file can be
            read with the returned file iterator.
            Arguments:
            name -- The node name.
            count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            FileNotAvailableException -- Raised if the file can't be read.
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'openNodeStdErr' not implemented")

        def openNodeStdOut(self, name, count, current=None):
            """
            Open the given node stdout file for reading. The file can be
            read with the returned file iterator.
            Arguments:
            name -- The node name.
            count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            FileNotAvailableException -- Raised if the file can't be read.
            NodeNotExistException -- Raised if the node doesn't exist.
            NodeUnreachableException -- Raised if the node could not be reached.
            """
            raise NotImplementedError("servant method 'openNodeStdOut' not implemented")

        def openRegistryStdErr(self, name, count, current=None):
            """
            Open the given registry stderr file for reading. The file can be
            read with the returned file iterator.
            Arguments:
            name -- The registry name.
            count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            FileNotAvailableException -- Raised if the file can't be read.
            RegistryNotExistException -- Raised if the registry doesn't exist.
            RegistryUnreachableException -- Raised if the registry could not be reached.
            """
            raise NotImplementedError("servant method 'openRegistryStdErr' not implemented")

        def openRegistryStdOut(self, name, count, current=None):
            """
            Open the given registry stdout file for reading. The file can be
            read with the returned file iterator.
            Arguments:
            name -- The registry name.
            count -- Specifies where to start reading the file. If negative, the file is read from the begining. If 0 or positive, the file is read from the last count lines.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            FileNotAvailableException -- Raised if the file can't be read.
            RegistryNotExistException -- Raised if the registry doesn't exist.
            RegistryUnreachableException -- Raised if the registry could not be reached.
            """
            raise NotImplementedError("servant method 'openRegistryStdOut' not implemented")

        def __str__(self):
            return IcePy.stringify(self, _M_IceGrid._t_AdminSessionDisp)

        __repr__ = __str__

    _M_IceGrid._t_AdminSessionDisp = IcePy.defineClass('::IceGrid::AdminSession', AdminSession, (), None, (_M_Glacier2._t_SessionDisp,))
    AdminSession._ice_type = _M_IceGrid._t_AdminSessionDisp

    AdminSession._op_keepAlive = IcePy.Operation('keepAlive', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (), (), None, ())
    AdminSession._op_getAdmin = IcePy.Operation('getAdmin', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), _M_IceGrid._t_AdminPrx, False, 0), ())
    AdminSession._op_getAdminCallbackTemplate = IcePy.Operation('getAdminCallbackTemplate', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (), (), ((), IcePy._t_ObjectPrx, False, 0), ())
    AdminSession._op_setObservers = IcePy.Operation('setObservers', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), _M_IceGrid._t_RegistryObserverPrx, False, 0), ((), _M_IceGrid._t_NodeObserverPrx, False, 0), ((), _M_IceGrid._t_ApplicationObserverPrx, False, 0), ((), _M_IceGrid._t_AdapterObserverPrx, False, 0), ((), _M_IceGrid._t_ObjectObserverPrx, False, 0)), (), None, (_M_IceGrid._t_ObserverAlreadyRegisteredException,))
    AdminSession._op_setObserversByIdentity = IcePy.Operation('setObserversByIdentity', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), _M_Ice._t_Identity, False, 0), ((), _M_Ice._t_Identity, False, 0), ((), _M_Ice._t_Identity, False, 0), ((), _M_Ice._t_Identity, False, 0), ((), _M_Ice._t_Identity, False, 0)), (), None, (_M_IceGrid._t_ObserverAlreadyRegisteredException,))
    AdminSession._op_startUpdate = IcePy.Operation('startUpdate', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), IcePy._t_int, False, 0), (_M_IceGrid._t_AccessDeniedException,))
    AdminSession._op_finishUpdate = IcePy.Operation('finishUpdate', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), None, (_M_IceGrid._t_AccessDeniedException,))
    AdminSession._op_getReplicaName = IcePy.Operation('getReplicaName', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (), (), ((), IcePy._t_string, False, 0), ())
    AdminSession._op_openServerLog = IcePy.Operation('openServerLog', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_string, False, 0), ((), IcePy._t_int, False, 0)), (), ((), _M_IceGrid._t_FileIteratorPrx, False, 0), (_M_IceGrid._t_FileNotAvailableException, _M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    AdminSession._op_openServerStdErr = IcePy.Operation('openServerStdErr', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_int, False, 0)), (), ((), _M_IceGrid._t_FileIteratorPrx, False, 0), (_M_IceGrid._t_FileNotAvailableException, _M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    AdminSession._op_openServerStdOut = IcePy.Operation('openServerStdOut', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_int, False, 0)), (), ((), _M_IceGrid._t_FileIteratorPrx, False, 0), (_M_IceGrid._t_FileNotAvailableException, _M_IceGrid._t_ServerNotExistException, _M_IceGrid._t_NodeUnreachableException, _M_IceGrid._t_DeploymentException))
    AdminSession._op_openNodeStdErr = IcePy.Operation('openNodeStdErr', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_int, False, 0)), (), ((), _M_IceGrid._t_FileIteratorPrx, False, 0), (_M_IceGrid._t_FileNotAvailableException, _M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    AdminSession._op_openNodeStdOut = IcePy.Operation('openNodeStdOut', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_int, False, 0)), (), ((), _M_IceGrid._t_FileIteratorPrx, False, 0), (_M_IceGrid._t_FileNotAvailableException, _M_IceGrid._t_NodeNotExistException, _M_IceGrid._t_NodeUnreachableException))
    AdminSession._op_openRegistryStdErr = IcePy.Operation('openRegistryStdErr', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_int, False, 0)), (), ((), _M_IceGrid._t_FileIteratorPrx, False, 0), (_M_IceGrid._t_FileNotAvailableException, _M_IceGrid._t_RegistryNotExistException, _M_IceGrid._t_RegistryUnreachableException))
    AdminSession._op_openRegistryStdOut = IcePy.Operation('openRegistryStdOut', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_int, False, 0)), (), ((), _M_IceGrid._t_FileIteratorPrx, False, 0), (_M_IceGrid._t_FileNotAvailableException, _M_IceGrid._t_RegistryNotExistException, _M_IceGrid._t_RegistryUnreachableException))

    _M_IceGrid.AdminSession = AdminSession
    del AdminSession

# End of module IceGrid

Ice.sliceChecksums["::IceGrid::AdapterDynamicInfo"] = "b371e9a58f115e6ebfbcda735fee57f7"
Ice.sliceChecksums["::IceGrid::AdapterDynamicInfoSeq"] = "54465843167a2f93fa96d13b7f41ea32"
Ice.sliceChecksums["::IceGrid::AdapterInfo"] = "a22de437e0d82d91cca7d476992b2a43"
Ice.sliceChecksums["::IceGrid::AdapterInfoSeq"] = "9fdbbb3c2d938b4e5f3bf5a21f234147"
Ice.sliceChecksums["::IceGrid::AdapterObserver"] = "7f4ed59e236da9d6c35ad7e6ad9cb0"
Ice.sliceChecksums["::IceGrid::Admin"] = "35cb721cd375fb13818304b7c87217a"
Ice.sliceChecksums["::IceGrid::AdminSession"] = "ca6f21e8ff4210158f382cdbc66c2566"
Ice.sliceChecksums["::IceGrid::ApplicationInfo"] = "44ab5928481a1441216f93965f9e6c5"
Ice.sliceChecksums["::IceGrid::ApplicationInfoSeq"] = "dc7429d6b923c3e66eea573eccc1598"
Ice.sliceChecksums["::IceGrid::ApplicationObserver"] = "2862cdcba54714282f68b13a8fb4ae"
Ice.sliceChecksums["::IceGrid::ApplicationUpdateInfo"] = "c21c8cfe85e332fd9ad194e611bc6b7f"
Ice.sliceChecksums["::IceGrid::FileIterator"] = "54341a38932f89d199f28ffc4712c7"
Ice.sliceChecksums["::IceGrid::LoadInfo"] = "c28c339f5af52a46ac64c33864ae6"
Ice.sliceChecksums["::IceGrid::NodeDynamicInfo"] = "3ad52341f32973212d26a9a6dda08b"
Ice.sliceChecksums["::IceGrid::NodeDynamicInfoSeq"] = "f61633c5e3992f718dba78b7f165c2"
Ice.sliceChecksums["::IceGrid::NodeInfo"] = "f348b389deb653ac28b2b991e23d63b9"
Ice.sliceChecksums["::IceGrid::NodeObserver"] = "e06c1ad6807d2876de9e818855a65738"
Ice.sliceChecksums["::IceGrid::ObjectInfo"] = "6c8a382c348df5cbda50e58d87189e33"
Ice.sliceChecksums["::IceGrid::ObjectInfoSeq"] = "1491c01cb93b575c602baed26ed0f989"
Ice.sliceChecksums["::IceGrid::ObjectObserver"] = "5364683a872f127e46cc5e215d98c3c"
Ice.sliceChecksums["::IceGrid::RegistryInfo"] = "60e64fc1e37ce59ecbeed4a0e276ba"
Ice.sliceChecksums["::IceGrid::RegistryInfoSeq"] = "fabb868b9f2164f68bc9eb68240c8a6"
Ice.sliceChecksums["::IceGrid::RegistryObserver"] = "fd83b1558e7c77f2d322b25449518"
Ice.sliceChecksums["::IceGrid::ServerDynamicInfo"] = "fd4b9177ca54ae4688b51fa51d6870"
Ice.sliceChecksums["::IceGrid::ServerDynamicInfoSeq"] = "e3fda58997d5cd946e78cae739174cb"
Ice.sliceChecksums["::IceGrid::ServerInfo"] = "7f99dc872345b2c3c741c8b4c23440da"
Ice.sliceChecksums["::IceGrid::ServerState"] = "21e8ecba86a4678f3b783de286583093"
Ice.sliceChecksums["::IceGrid::StringObjectProxyDict"] = "978c325e58cebefb212e5ebde28acdc"
