# -*- coding: utf-8 -*-
# **********************************************************************
#
# Copyright (c) 2003-2018 ZeroC, Inc. All rights reserved.
#
# This copy of Ice is licensed to you under the terms described in the
# ICE_LICENSE file included in this distribution.
#
# **********************************************************************
#
# Ice version 3.7.1
#
# <auto-generated>
#
# Generated from file `Registry.ice'
#
# Warning: do not edit this file.
#
# </auto-generated>
#

from sys import version_info as _version_info_
import Ice, IcePy
import IceGrid.Exception_ice
import IceGrid.Session_ice
import IceGrid.Admin_ice
import Ice.Locator_ice

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

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

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

# Start of module IceGrid
__name__ = 'IceGrid'

if 'LoadSample' not in _M_IceGrid.__dict__:
    _M_IceGrid.LoadSample = Ice.createTempClass()
    class LoadSample(Ice.EnumBase):
        """
        Determines which load sampling interval to use.
        Enumerators:
        LoadSample1 -- Sample every minute.
        LoadSample5 -- Sample every five minutes.
        LoadSample15 -- Sample every fifteen minutes.
        """

        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)

    LoadSample.LoadSample1 = LoadSample("LoadSample1", 0)
    LoadSample.LoadSample5 = LoadSample("LoadSample5", 1)
    LoadSample.LoadSample15 = LoadSample("LoadSample15", 2)
    LoadSample._enumerators = { 0:LoadSample.LoadSample1, 1:LoadSample.LoadSample5, 2:LoadSample.LoadSample15 }

    _M_IceGrid._t_LoadSample = IcePy.defineEnum('::IceGrid::LoadSample', LoadSample, (), LoadSample._enumerators)

    _M_IceGrid.LoadSample = LoadSample
    del LoadSample

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

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

        """
        Find a well-known object by identity.
        Arguments:
        id -- The identity.
        context -- The request context for the invocation.
        Returns: The proxy or null if no such object has been found.
        """
        def findObjectById(self, id, context=None):
            return _M_IceGrid.Query._op_findObjectById.invoke(self, ((id, ), context))

        """
        Find a well-known object by identity.
        Arguments:
        id -- The identity.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def findObjectByIdAsync(self, id, context=None):
            return _M_IceGrid.Query._op_findObjectById.invokeAsync(self, ((id, ), context))

        """
        Find a well-known object by identity.
        Arguments:
        id -- The identity.
        _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_findObjectById(self, id, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Query._op_findObjectById.begin(self, ((id, ), _response, _ex, _sent, context))

        """
        Find a well-known object by identity.
        Arguments:
        id -- The identity.
        Returns: The proxy or null if no such object has been found.
        """
        def end_findObjectById(self, _r):
            return _M_IceGrid.Query._op_findObjectById.end(self, _r)

        """
        Find a well-known object by type. If there are several objects
        registered for the given type, the object is randomly
        selected.
        Arguments:
        type -- The object type.
        context -- The request context for the invocation.
        Returns: The proxy or null, if no such object has been found.
        """
        def findObjectByType(self, type, context=None):
            return _M_IceGrid.Query._op_findObjectByType.invoke(self, ((type, ), context))

        """
        Find a well-known object by type. If there are several objects
        registered for the given type, the object is randomly
        selected.
        Arguments:
        type -- The object type.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def findObjectByTypeAsync(self, type, context=None):
            return _M_IceGrid.Query._op_findObjectByType.invokeAsync(self, ((type, ), context))

        """
        Find a well-known object by type. If there are several objects
        registered for the given type, the object is randomly
        selected.
        Arguments:
        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_findObjectByType(self, type, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Query._op_findObjectByType.begin(self, ((type, ), _response, _ex, _sent, context))

        """
        Find a well-known object by type. If there are several objects
        registered for the given type, the object is randomly
        selected.
        Arguments:
        type -- The object type.
        Returns: The proxy or null, if no such object has been found.
        """
        def end_findObjectByType(self, _r):
            return _M_IceGrid.Query._op_findObjectByType.end(self, _r)

        """
        Find a well-known object by type on the least-loaded node. If
        the registry does not know which node hosts the object
        (for example, because the object was registered with a direct proxy), the
        registry assumes the object is hosted on a node that has a load
        average of 1.0.
        Arguments:
        type -- The object type.
        sample -- The sampling interval.
        context -- The request context for the invocation.
        Returns: The proxy or null, if no such object has been found.
        """
        def findObjectByTypeOnLeastLoadedNode(self, type, sample, context=None):
            return _M_IceGrid.Query._op_findObjectByTypeOnLeastLoadedNode.invoke(self, ((type, sample), context))

        """
        Find a well-known object by type on the least-loaded node. If
        the registry does not know which node hosts the object
        (for example, because the object was registered with a direct proxy), the
        registry assumes the object is hosted on a node that has a load
        average of 1.0.
        Arguments:
        type -- The object type.
        sample -- The sampling interval.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def findObjectByTypeOnLeastLoadedNodeAsync(self, type, sample, context=None):
            return _M_IceGrid.Query._op_findObjectByTypeOnLeastLoadedNode.invokeAsync(self, ((type, sample), context))

        """
        Find a well-known object by type on the least-loaded node. If
        the registry does not know which node hosts the object
        (for example, because the object was registered with a direct proxy), the
        registry assumes the object is hosted on a node that has a load
        average of 1.0.
        Arguments:
        type -- The object type.
        sample -- The sampling interval.
        _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_findObjectByTypeOnLeastLoadedNode(self, type, sample, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Query._op_findObjectByTypeOnLeastLoadedNode.begin(self, ((type, sample), _response, _ex, _sent, context))

        """
        Find a well-known object by type on the least-loaded node. If
        the registry does not know which node hosts the object
        (for example, because the object was registered with a direct proxy), the
        registry assumes the object is hosted on a node that has a load
        average of 1.0.
        Arguments:
        type -- The object type.
        sample -- The sampling interval.
        Returns: The proxy or null, if no such object has been found.
        """
        def end_findObjectByTypeOnLeastLoadedNode(self, _r):
            return _M_IceGrid.Query._op_findObjectByTypeOnLeastLoadedNode.end(self, _r)

        """
        Find all the well-known objects with the given type.
        Arguments:
        type -- The object type.
        context -- The request context for the invocation.
        Returns: The proxies or an empty sequence, if no such objects have been found.
        """
        def findAllObjectsByType(self, type, context=None):
            return _M_IceGrid.Query._op_findAllObjectsByType.invoke(self, ((type, ), context))

        """
        Find all the well-known objects with the given type.
        Arguments:
        type -- The object type.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def findAllObjectsByTypeAsync(self, type, context=None):
            return _M_IceGrid.Query._op_findAllObjectsByType.invokeAsync(self, ((type, ), context))

        """
        Find all the well-known objects with the given type.
        Arguments:
        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_findAllObjectsByType(self, type, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Query._op_findAllObjectsByType.begin(self, ((type, ), _response, _ex, _sent, context))

        """
        Find all the well-known objects with the given type.
        Arguments:
        type -- The object type.
        Returns: The proxies or an empty sequence, if no such objects have been found.
        """
        def end_findAllObjectsByType(self, _r):
            return _M_IceGrid.Query._op_findAllObjectsByType.end(self, _r)

        """
        Find all the object replicas associated with the given
        proxy. If the given proxy is not an indirect proxy from a
        replica group, an empty sequence is returned.
        Arguments:
        proxy -- The object proxy.
        context -- The request context for the invocation.
        Returns: The proxies of each object replica or an empty sequence, if the given proxy is not from a replica group.
        """
        def findAllReplicas(self, proxy, context=None):
            return _M_IceGrid.Query._op_findAllReplicas.invoke(self, ((proxy, ), context))

        """
        Find all the object replicas associated with the given
        proxy. If the given proxy is not an indirect proxy from a
        replica group, an empty sequence is returned.
        Arguments:
        proxy -- The object proxy.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def findAllReplicasAsync(self, proxy, context=None):
            return _M_IceGrid.Query._op_findAllReplicas.invokeAsync(self, ((proxy, ), context))

        """
        Find all the object replicas associated with the given
        proxy. If the given proxy is not an indirect proxy from a
        replica group, an empty sequence is returned.
        Arguments:
        proxy -- The object proxy.
        _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_findAllReplicas(self, proxy, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Query._op_findAllReplicas.begin(self, ((proxy, ), _response, _ex, _sent, context))

        """
        Find all the object replicas associated with the given
        proxy. If the given proxy is not an indirect proxy from a
        replica group, an empty sequence is returned.
        Arguments:
        proxy -- The object proxy.
        Returns: The proxies of each object replica or an empty sequence, if the given proxy is not from a replica group.
        """
        def end_findAllReplicas(self, _r):
            return _M_IceGrid.Query._op_findAllReplicas.end(self, _r)

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

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

        @staticmethod
        def ice_staticId():
            return '::IceGrid::Query'
    _M_IceGrid._t_QueryPrx = IcePy.defineProxy('::IceGrid::Query', QueryPrx)

    _M_IceGrid.QueryPrx = QueryPrx
    del QueryPrx

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

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

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

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

        def findObjectById(self, id, current=None):
            """
            Find a well-known object by identity.
            Arguments:
            id -- The identity.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'findObjectById' not implemented")

        def findObjectByType(self, type, current=None):
            """
            Find a well-known object by type. If there are several objects
            registered for the given type, the object is randomly
            selected.
            Arguments:
            type -- The object type.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'findObjectByType' not implemented")

        def findObjectByTypeOnLeastLoadedNode(self, type, sample, current=None):
            """
            Find a well-known object by type on the least-loaded node. If
            the registry does not know which node hosts the object
            (for example, because the object was registered with a direct proxy), the
            registry assumes the object is hosted on a node that has a load
            average of 1.0.
            Arguments:
            type -- The object type.
            sample -- The sampling interval.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'findObjectByTypeOnLeastLoadedNode' not implemented")

        def findAllObjectsByType(self, type, current=None):
            """
            Find all the well-known objects with the given type.
            Arguments:
            type -- The object type.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'findAllObjectsByType' not implemented")

        def findAllReplicas(self, proxy, current=None):
            """
            Find all the object replicas associated with the given
            proxy. If the given proxy is not an indirect proxy from a
            replica group, an empty sequence is returned.
            Arguments:
            proxy -- The object proxy.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'findAllReplicas' not implemented")

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

        __repr__ = __str__

    _M_IceGrid._t_QueryDisp = IcePy.defineClass('::IceGrid::Query', Query, (), None, ())
    Query._ice_type = _M_IceGrid._t_QueryDisp

    Query._op_findObjectById = IcePy.Operation('findObjectById', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), _M_Ice._t_Identity, False, 0),), (), ((), IcePy._t_ObjectPrx, False, 0), ())
    Query._op_findObjectByType = IcePy.Operation('findObjectByType', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), IcePy._t_ObjectPrx, False, 0), ())
    Query._op_findObjectByTypeOnLeastLoadedNode = IcePy.Operation('findObjectByTypeOnLeastLoadedNode', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0), ((), _M_IceGrid._t_LoadSample, False, 0)), (), ((), IcePy._t_ObjectPrx, False, 0), ())
    Query._op_findAllObjectsByType = IcePy.Operation('findAllObjectsByType', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (((), IcePy._t_string, False, 0),), (), ((), _M_Ice._t_ObjectProxySeq, False, 0), ())
    Query._op_findAllReplicas = IcePy.Operation('findAllReplicas', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (((), IcePy._t_ObjectPrx, False, 0),), (), ((), _M_Ice._t_ObjectProxySeq, False, 0), ())

    _M_IceGrid.Query = Query
    del Query

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

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

        """
        Create a client session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user id.
        context -- The request context for the invocation.
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def createSession(self, userId, password, context=None):
            return _M_IceGrid.Registry._op_createSession.invoke(self, ((userId, password), context))

        """
        Create a client session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def createSessionAsync(self, userId, password, context=None):
            return _M_IceGrid.Registry._op_createSession.invokeAsync(self, ((userId, password), context))

        """
        Create a client session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user 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_createSession(self, userId, password, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Registry._op_createSession.begin(self, ((userId, password), _response, _ex, _sent, context))

        """
        Create a client session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user id.
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def end_createSession(self, _r):
            return _M_IceGrid.Registry._op_createSession.end(self, _r)

        """
        Create an administrative session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user id.
        context -- The request context for the invocation.
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def createAdminSession(self, userId, password, context=None):
            return _M_IceGrid.Registry._op_createAdminSession.invoke(self, ((userId, password), context))

        """
        Create an administrative session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user id.
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def createAdminSessionAsync(self, userId, password, context=None):
            return _M_IceGrid.Registry._op_createAdminSession.invokeAsync(self, ((userId, password), context))

        """
        Create an administrative session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user 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_createAdminSession(self, userId, password, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Registry._op_createAdminSession.begin(self, ((userId, password), _response, _ex, _sent, context))

        """
        Create an administrative session.
        Arguments:
        userId -- The user id.
        password -- The password for the given user id.
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def end_createAdminSession(self, _r):
            return _M_IceGrid.Registry._op_createAdminSession.end(self, _r)

        """
        Create a client session from a secure connection.
        Arguments:
        context -- The request context for the invocation.
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def createSessionFromSecureConnection(self, context=None):
            return _M_IceGrid.Registry._op_createSessionFromSecureConnection.invoke(self, ((), context))

        """
        Create a client session from a secure connection.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def createSessionFromSecureConnectionAsync(self, context=None):
            return _M_IceGrid.Registry._op_createSessionFromSecureConnection.invokeAsync(self, ((), context))

        """
        Create a client session from a secure connection.
        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_createSessionFromSecureConnection(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Registry._op_createSessionFromSecureConnection.begin(self, ((), _response, _ex, _sent, context))

        """
        Create a client session from a secure connection.
        Arguments:
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def end_createSessionFromSecureConnection(self, _r):
            return _M_IceGrid.Registry._op_createSessionFromSecureConnection.end(self, _r)

        """
        Create an administrative session from a secure connection.
        Arguments:
        context -- The request context for the invocation.
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def createAdminSessionFromSecureConnection(self, context=None):
            return _M_IceGrid.Registry._op_createAdminSessionFromSecureConnection.invoke(self, ((), context))

        """
        Create an administrative session from a secure connection.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def createAdminSessionFromSecureConnectionAsync(self, context=None):
            return _M_IceGrid.Registry._op_createAdminSessionFromSecureConnection.invokeAsync(self, ((), context))

        """
        Create an administrative session from a secure connection.
        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_createAdminSessionFromSecureConnection(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Registry._op_createAdminSessionFromSecureConnection.begin(self, ((), _response, _ex, _sent, context))

        """
        Create an administrative session from a secure connection.
        Arguments:
        Returns: A proxy for the newly created session.
        Throws:
        PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
        """
        def end_createAdminSessionFromSecureConnection(self, _r):
            return _M_IceGrid.Registry._op_createAdminSessionFromSecureConnection.end(self, _r)

        """
        Get the session timeout. If a client or administrative client
        doesn't call the session keepAlive method in the time interval
        defined by this timeout, IceGrid might reap the session.
        Arguments:
        context -- The request context for the invocation.
        Returns: The timeout (in seconds).
        """
        def getSessionTimeout(self, context=None):
            return _M_IceGrid.Registry._op_getSessionTimeout.invoke(self, ((), context))

        """
        Get the session timeout. If a client or administrative client
        doesn't call the session keepAlive method in the time interval
        defined by this timeout, IceGrid might reap the session.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getSessionTimeoutAsync(self, context=None):
            return _M_IceGrid.Registry._op_getSessionTimeout.invokeAsync(self, ((), context))

        """
        Get the session timeout. If a client or administrative client
        doesn't call the session keepAlive method in the time interval
        defined by this timeout, IceGrid might reap 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_getSessionTimeout(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Registry._op_getSessionTimeout.begin(self, ((), _response, _ex, _sent, context))

        """
        Get the session timeout. If a client or administrative client
        doesn't call the session keepAlive method in the time interval
        defined by this timeout, IceGrid might reap the session.
        Arguments:
        Returns: The timeout (in seconds).
        """
        def end_getSessionTimeout(self, _r):
            return _M_IceGrid.Registry._op_getSessionTimeout.end(self, _r)

        """
        Get the value of the ACM timeout. Clients supporting ACM
        connection heartbeats can enable them instead of explicitly
        sending keep alives requests.
        NOTE: This method is only available since Ice 3.6.
        Arguments:
        context -- The request context for the invocation.
        Returns: The timeout (in seconds).
        """
        def getACMTimeout(self, context=None):
            return _M_IceGrid.Registry._op_getACMTimeout.invoke(self, ((), context))

        """
        Get the value of the ACM timeout. Clients supporting ACM
        connection heartbeats can enable them instead of explicitly
        sending keep alives requests.
        NOTE: This method is only available since Ice 3.6.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getACMTimeoutAsync(self, context=None):
            return _M_IceGrid.Registry._op_getACMTimeout.invokeAsync(self, ((), context))

        """
        Get the value of the ACM timeout. Clients supporting ACM
        connection heartbeats can enable them instead of explicitly
        sending keep alives requests.
        NOTE: This method is only available since Ice 3.6.
        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_getACMTimeout(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Registry._op_getACMTimeout.begin(self, ((), _response, _ex, _sent, context))

        """
        Get the value of the ACM timeout. Clients supporting ACM
        connection heartbeats can enable them instead of explicitly
        sending keep alives requests.
        NOTE: This method is only available since Ice 3.6.
        Arguments:
        Returns: The timeout (in seconds).
        """
        def end_getACMTimeout(self, _r):
            return _M_IceGrid.Registry._op_getACMTimeout.end(self, _r)

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

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

        @staticmethod
        def ice_staticId():
            return '::IceGrid::Registry'
    _M_IceGrid._t_RegistryPrx = IcePy.defineProxy('::IceGrid::Registry', RegistryPrx)

    _M_IceGrid.RegistryPrx = RegistryPrx
    del RegistryPrx

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

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

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

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

        def createSession(self, userId, password, current=None):
            """
            Create a client session.
            Arguments:
            userId -- The user id.
            password -- The password for the given user id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
            """
            raise NotImplementedError("servant method 'createSession' not implemented")

        def createAdminSession(self, userId, password, current=None):
            """
            Create an administrative session.
            Arguments:
            userId -- The user id.
            password -- The password for the given user id.
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
            """
            raise NotImplementedError("servant method 'createAdminSession' not implemented")

        def createSessionFromSecureConnection(self, current=None):
            """
            Create a client session from a secure connection.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
            """
            raise NotImplementedError("servant method 'createSessionFromSecureConnection' not implemented")

        def createAdminSessionFromSecureConnection(self, current=None):
            """
            Create an administrative session from a secure connection.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            Throws:
            PermissionDeniedException -- Raised if the password for the given user id is not correct, or if the user is not allowed access.
            """
            raise NotImplementedError("servant method 'createAdminSessionFromSecureConnection' not implemented")

        def getSessionTimeout(self, current=None):
            """
            Get the session timeout. If a client or administrative client
            doesn't call the session keepAlive method in the time interval
            defined by this timeout, IceGrid might reap the session.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getSessionTimeout' not implemented")

        def getACMTimeout(self, current=None):
            """
            Get the value of the ACM timeout. Clients supporting ACM
            connection heartbeats can enable them instead of explicitly
            sending keep alives requests.
            NOTE: This method is only available since Ice 3.6.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getACMTimeout' not implemented")

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

        __repr__ = __str__

    _M_IceGrid._t_RegistryDisp = IcePy.defineClass('::IceGrid::Registry', Registry, (), None, ())
    Registry._ice_type = _M_IceGrid._t_RegistryDisp

    Registry._op_createSession = IcePy.Operation('createSession', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_string, False, 0)), (), ((), _M_IceGrid._t_SessionPrx, False, 0), (_M_IceGrid._t_PermissionDeniedException,))
    Registry._op_createAdminSession = IcePy.Operation('createAdminSession', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), IcePy._t_string, False, 0), ((), IcePy._t_string, False, 0)), (), ((), _M_IceGrid._t_AdminSessionPrx, False, 0), (_M_IceGrid._t_PermissionDeniedException,))
    Registry._op_createSessionFromSecureConnection = IcePy.Operation('createSessionFromSecureConnection', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_IceGrid._t_SessionPrx, False, 0), (_M_IceGrid._t_PermissionDeniedException,))
    Registry._op_createAdminSessionFromSecureConnection = IcePy.Operation('createAdminSessionFromSecureConnection', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_IceGrid._t_AdminSessionPrx, False, 0), (_M_IceGrid._t_PermissionDeniedException,))
    Registry._op_getSessionTimeout = IcePy.Operation('getSessionTimeout', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), IcePy._t_int, False, 0), ())
    Registry._op_getACMTimeout = IcePy.Operation('getACMTimeout', Ice.OperationMode.Idempotent, Ice.OperationMode.Nonmutating, False, None, (), (), (), ((), IcePy._t_int, False, 0), ())

    _M_IceGrid.Registry = Registry
    del Registry

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

if 'LocatorPrx' not in _M_IceGrid.__dict__:
    _M_IceGrid.LocatorPrx = Ice.createTempClass()
    class LocatorPrx(_M_Ice.LocatorPrx):

        """
        Get the proxy of the registry object hosted by this IceGrid
        registry.
        Arguments:
        context -- The request context for the invocation.
        Returns: The proxy of the registry object.
        """
        def getLocalRegistry(self, context=None):
            return _M_IceGrid.Locator._op_getLocalRegistry.invoke(self, ((), context))

        """
        Get the proxy of the registry object hosted by this IceGrid
        registry.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getLocalRegistryAsync(self, context=None):
            return _M_IceGrid.Locator._op_getLocalRegistry.invokeAsync(self, ((), context))

        """
        Get the proxy of the registry object hosted by this 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_getLocalRegistry(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Locator._op_getLocalRegistry.begin(self, ((), _response, _ex, _sent, context))

        """
        Get the proxy of the registry object hosted by this IceGrid
        registry.
        Arguments:
        Returns: The proxy of the registry object.
        """
        def end_getLocalRegistry(self, _r):
            return _M_IceGrid.Locator._op_getLocalRegistry.end(self, _r)

        """
        Get the proxy of the query object hosted by this IceGrid
        registry.
        Arguments:
        context -- The request context for the invocation.
        Returns: The proxy of the query object.
        """
        def getLocalQuery(self, context=None):
            return _M_IceGrid.Locator._op_getLocalQuery.invoke(self, ((), context))

        """
        Get the proxy of the query object hosted by this IceGrid
        registry.
        Arguments:
        context -- The request context for the invocation.
        Returns: A future object for the invocation.
        """
        def getLocalQueryAsync(self, context=None):
            return _M_IceGrid.Locator._op_getLocalQuery.invokeAsync(self, ((), context))

        """
        Get the proxy of the query object hosted by this 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_getLocalQuery(self, _response=None, _ex=None, _sent=None, context=None):
            return _M_IceGrid.Locator._op_getLocalQuery.begin(self, ((), _response, _ex, _sent, context))

        """
        Get the proxy of the query object hosted by this IceGrid
        registry.
        Arguments:
        Returns: The proxy of the query object.
        """
        def end_getLocalQuery(self, _r):
            return _M_IceGrid.Locator._op_getLocalQuery.end(self, _r)

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

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

        @staticmethod
        def ice_staticId():
            return '::IceGrid::Locator'
    _M_IceGrid._t_LocatorPrx = IcePy.defineProxy('::IceGrid::Locator', LocatorPrx)

    _M_IceGrid.LocatorPrx = LocatorPrx
    del LocatorPrx

    _M_IceGrid.Locator = Ice.createTempClass()
    class Locator(_M_Ice.Locator):

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

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

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

        def getLocalRegistry(self, current=None):
            """
            Get the proxy of the registry object hosted by this IceGrid
            registry.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getLocalRegistry' not implemented")

        def getLocalQuery(self, current=None):
            """
            Get the proxy of the query object hosted by this IceGrid
            registry.
            Arguments:
            current -- The Current object for the invocation.
            Returns: A future object for the invocation.
            """
            raise NotImplementedError("servant method 'getLocalQuery' not implemented")

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

        __repr__ = __str__

    _M_IceGrid._t_LocatorDisp = IcePy.defineClass('::IceGrid::Locator', Locator, (), None, (_M_Ice._t_LocatorDisp,))
    Locator._ice_type = _M_IceGrid._t_LocatorDisp

    Locator._op_getLocalRegistry = IcePy.Operation('getLocalRegistry', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (), (), ((), _M_IceGrid._t_RegistryPrx, False, 0), ())
    Locator._op_getLocalQuery = IcePy.Operation('getLocalQuery', Ice.OperationMode.Idempotent, Ice.OperationMode.Idempotent, False, None, (), (), (), ((), _M_IceGrid._t_QueryPrx, False, 0), ())

    _M_IceGrid.Locator = Locator
    del Locator

# End of module IceGrid

Ice.sliceChecksums["::IceGrid::LoadSample"] = "ec48c06fa099138a5fbbce121a9a290"
Ice.sliceChecksums["::IceGrid::Locator"] = "816e9d7a3cb39b8c80fe342e7f18ae"
Ice.sliceChecksums["::IceGrid::Query"] = "39dbe5f62c19aa42c2e0fbaf220b4f1"
Ice.sliceChecksums["::IceGrid::Registry"] = "8298cc0aba1a722d75eb79034fbb076"
