# **********************************************************************
#
# Copyright (c) 2003-2011 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.4.2
#
# <auto-generated>
#
# Generated from file `Properties.ice'
#
# Warning: do not edit this file.
#
# </auto-generated>
#

import Ice, IcePy, __builtin__
import Ice_BuiltinSequences_ice

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

# Start of module Ice
__name__ = 'Ice'

if not _M_Ice.__dict__.has_key('_t_PropertyDict'):
    _M_Ice._t_PropertyDict = IcePy.defineDictionary('::Ice::PropertyDict', (), IcePy._t_string, IcePy._t_string)

if not _M_Ice.__dict__.has_key('Properties'):
    _M_Ice.Properties = Ice.createTempClass()
    class Properties(object):
        '''A property set used to configure Ice and Ice applications.
Properties are key/value pairs, with both keys and values
being strings. By convention, property keys should have the form
application-name\[.category\[.sub-category]].name.'''
        def __init__(self):
            if __builtin__.type(self) == _M_Ice.Properties:
                raise RuntimeError('Ice.Properties is an abstract class')

        def getProperty(self, key):
            '''Get a property by key. If the property is not set, an empty
string is returned.

Arguments:
    key The property key.

Returns:
    The property value.'''
            pass

        def getPropertyWithDefault(self, key, value):
            '''Get a property by key. If the property is not set, the
given default value is returned.

Arguments:
    key The property key.

    value The default value to use if the property does not
exist.

Returns:
    The property value or the default value.'''
            pass

        def getPropertyAsInt(self, key):
            '''Get a property as an integer. If the property is not set, 0
is returned.

Arguments:
    key The property key.

Returns:
    The property value interpreted as an integer.'''
            pass

        def getPropertyAsIntWithDefault(self, key, value):
            '''Get a property as an integer. If the property is not set, the
given default value is returned.

Arguments:
    key The property key.

    value The default value to use if the property does not
exist.

Returns:
    The property value interpreted as an integer, or the
default value.'''
            pass

        def getPropertyAsList(self, key):
            '''Get a property as a list of strings. If the property is not set,
an empty list is returned. The strings in the list can contain
whitespace if they are enclosed in single or double quotes.
If quotes are mismatched, an empty list is returned.
Within single quotes or double-quotes, you can escape the
quote in question with \, e.g. O'Reilly can be written as
O'Reilly, "O'Reilly" or 'O\'Reilly'.

Arguments:
    key The property key.

Returns:
    The property value interpreted as a list of strings.'''
            pass

        def getPropertyAsListWithDefault(self, key, value):
            '''Get a property as a list of strings. If the property is not set,
the default list is returned. The strings in the list can contain
whitespace if they are enclosed in single or double quotes.
If quotes are mismatched, the default list is returned.
Within single quotes or double-quotes, you can escape the
quote in question with \, e.g. O'Reilly can be written as
O'Reilly, "O'Reilly" or 'O\'Reilly'.

Arguments:
    key The property key.

    value The default value to use if the property is not set.

Returns:
    The property value interpreted as list of strings, or the
default value.'''
            pass

        def getPropertiesForPrefix(self, prefix):
            '''Get all properties whose keys begins with
prefix. If
prefix is an empty string,
then all properties are returned.

Arguments:
    prefix The prefix to search for (empty string if none).
Returns:
    The matching property set.'''
            pass

        def setProperty(self, key, value):
            '''Set a property. To unset a property, set it to
the empty string.

Arguments:
    key The property key.
    value The property value.'''
            pass

        def getCommandLineOptions(self):
            '''Get a sequence of command-line options that is equivalent to
this property set. Each element of the returned sequence is
a command-line option of the form
--key=value.

Returns:
    The command line options for this property set.'''
            pass

        def parseCommandLineOptions(self, prefix, options):
            '''Convert a sequence of command-line options into properties.
All options that begin with
--prefix. are
converted into properties. If the prefix is empty, all options
that begin with -- are converted to properties.

Arguments:
    prefix The property prefix, or an empty string to
convert all options starting with --.

    options The command-line options.

Returns:
    The command-line options that do not start with the specified
prefix, in their original order.'''
            pass

        def parseIceCommandLineOptions(self, options):
            '''Convert a sequence of command-line options into properties.
All options that begin with one of the following prefixes
are converted into properties: --Ice, --IceBox, --IceGrid,
--IcePatch2, --IceSSL, --IceStorm, --Freeze, and --Glacier2.

Arguments:
    options The command-line options.

Returns:
    The command-line options that do not start with one of
the listed prefixes, in their original order.'''
            pass

        def load(self, file):
            '''Load properties from a file.

Arguments:
    file The property file.'''
            pass

        def clone(self):
            '''Create a copy of this property set.

Returns:
    A copy of this property set.'''
            pass

        def __str__(self):
            return IcePy.stringify(self, _M_Ice._t_Properties)

        __repr__ = __str__

    _M_Ice._t_Properties = IcePy.defineClass('::Ice::Properties', Properties, (), True, None, (), ())
    Properties._ice_type = _M_Ice._t_Properties

    _M_Ice.Properties = Properties
    del Properties

if not _M_Ice.__dict__.has_key('PropertiesAdmin'):
    _M_Ice.PropertiesAdmin = Ice.createTempClass()
    class PropertiesAdmin(Ice.Object):
        '''The PropertiesAdmin interface provides remote access to the properties
of a communicator.'''
        def __init__(self):
            if __builtin__.type(self) == _M_Ice.PropertiesAdmin:
                raise RuntimeError('Ice.PropertiesAdmin is an abstract class')

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

        def ice_id(self, current=None):
            return '::Ice::PropertiesAdmin'

        def ice_staticId():
            return '::Ice::PropertiesAdmin'
        ice_staticId = staticmethod(ice_staticId)

        def getProperty(self, key, current=None):
            '''Get a property by key. If the property is not set, an empty
string is returned.

Arguments:
    key The property key.

Returns:
    The property value.'''
            pass

        def getPropertiesForPrefix(self, prefix, current=None):
            '''Get all properties whose keys begins with
prefix. If
prefix is an empty string,
then all properties are returned.

Arguments:
    prefix The prefix to search for (empty string if none).
Returns:
    The matching property set.'''
            pass

        def __str__(self):
            return IcePy.stringify(self, _M_Ice._t_PropertiesAdmin)

        __repr__ = __str__

    _M_Ice.PropertiesAdminPrx = Ice.createTempClass()
    class PropertiesAdminPrx(Ice.ObjectPrx):

        '''Get a property by key. If the property is not set, an empty
string is returned.

Arguments:
    key The property key.

Returns:
    The property value.'''
        def getProperty(self, key, _ctx=None):
            return _M_Ice.PropertiesAdmin._op_getProperty.invoke(self, ((key, ), _ctx))

        '''Get a property by key. If the property is not set, an empty
string is returned.

Arguments:
    key The property key.

Returns:
    The property value.'''
        def begin_getProperty(self, key, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_Ice.PropertiesAdmin._op_getProperty.begin(self, ((key, ), _response, _ex, _sent, _ctx))

        '''Get a property by key. If the property is not set, an empty
string is returned.

Arguments:
    key The property key.

Returns:
    The property value.'''
        def end_getProperty(self, _r):
            return _M_Ice.PropertiesAdmin._op_getProperty.end(self, _r)

        '''Get a property by key. If the property is not set, an empty
string is returned.

Arguments:
    key The property key.

Returns:
    The property value.'''
        def getProperty_async(self, _cb, key, _ctx=None):
            return _M_Ice.PropertiesAdmin._op_getProperty.invokeAsync(self, (_cb, (key, ), _ctx))

        '''Get all properties whose keys begins with
prefix. If
prefix is an empty string,
then all properties are returned.

Arguments:
    prefix The prefix to search for (empty string if none).
Returns:
    The matching property set.'''
        def getPropertiesForPrefix(self, prefix, _ctx=None):
            return _M_Ice.PropertiesAdmin._op_getPropertiesForPrefix.invoke(self, ((prefix, ), _ctx))

        '''Get all properties whose keys begins with
prefix. If
prefix is an empty string,
then all properties are returned.

Arguments:
    prefix The prefix to search for (empty string if none).
Returns:
    The matching property set.'''
        def begin_getPropertiesForPrefix(self, prefix, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_Ice.PropertiesAdmin._op_getPropertiesForPrefix.begin(self, ((prefix, ), _response, _ex, _sent, _ctx))

        '''Get all properties whose keys begins with
prefix. If
prefix is an empty string,
then all properties are returned.

Arguments:
    prefix The prefix to search for (empty string if none).
Returns:
    The matching property set.'''
        def end_getPropertiesForPrefix(self, _r):
            return _M_Ice.PropertiesAdmin._op_getPropertiesForPrefix.end(self, _r)

        '''Get all properties whose keys begins with
prefix. If
prefix is an empty string,
then all properties are returned.

Arguments:
    prefix The prefix to search for (empty string if none).
Returns:
    The matching property set.'''
        def getPropertiesForPrefix_async(self, _cb, prefix, _ctx=None):
            return _M_Ice.PropertiesAdmin._op_getPropertiesForPrefix.invokeAsync(self, (_cb, (prefix, ), _ctx))

        def checkedCast(proxy, facetOrCtx=None, _ctx=None):
            return _M_Ice.PropertiesAdminPrx.ice_checkedCast(proxy, '::Ice::PropertiesAdmin', facetOrCtx, _ctx)
        checkedCast = staticmethod(checkedCast)

        def uncheckedCast(proxy, facet=None):
            return _M_Ice.PropertiesAdminPrx.ice_uncheckedCast(proxy, facet)
        uncheckedCast = staticmethod(uncheckedCast)

    _M_Ice._t_PropertiesAdminPrx = IcePy.defineProxy('::Ice::PropertiesAdmin', PropertiesAdminPrx)

    _M_Ice._t_PropertiesAdmin = IcePy.defineClass('::Ice::PropertiesAdmin', PropertiesAdmin, (), True, None, (), ())
    PropertiesAdmin._ice_type = _M_Ice._t_PropertiesAdmin

    PropertiesAdmin._op_getProperty = IcePy.Operation('getProperty', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, (), (((), IcePy._t_string),), (), IcePy._t_string, ())
    PropertiesAdmin._op_getPropertiesForPrefix = IcePy.Operation('getPropertiesForPrefix', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, (), (((), IcePy._t_string),), (), _M_Ice._t_PropertyDict, ())

    _M_Ice.PropertiesAdmin = PropertiesAdmin
    del PropertiesAdmin

    _M_Ice.PropertiesAdminPrx = PropertiesAdminPrx
    del PropertiesAdminPrx

# End of module Ice
