# -*- 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.6.5
#
# <auto-generated>
#
# Generated from file `Details.ice'
#
# Warning: do not edit this file.
#
# </auto-generated>
#

from sys import version_info as _version_info_
import Ice, IcePy
import omero_ModelF_ice
import omero_System_ice
import Ice_Current_ice

# Included module omero
_M_omero = Ice.openModule('omero')

# Included module omero.model
_M_omero.model = Ice.openModule('omero.model')

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

# Included module omero.sys
_M_omero.sys = Ice.openModule('omero.sys')

# Included module omero.api
_M_omero.api = Ice.openModule('omero.api')

# Start of module omero
__name__ = 'omero'

# Start of module omero.model
__name__ = 'omero.model'

if 'Details' not in _M_omero.model.__dict__:
    _M_omero.model.Details = Ice.createTempClass()
    class Details(Ice.Object):
        """
        Embedded component of every OMERO.blitz type. Since this is
        not an IObject subclass, no attempt is made to hide the state
        of this object, since it cannot be ""unloaded"".
        Members:
        owner -- 
        group -- 
        creationEvent -- 
        updateEvent -- 
        permissions -- 
        externalInfo -- 
        call -- Context which was active during the call which
        returned this object. This context is set as
        the last (optional) argument of any remote
        Ice invocation. This is used to change the
        user, group, share, etc. of the current session.
        event -- Context which would have been returned by a
        simultaneous call to {@code omero.api.IAdmin.getEventContext}
        while this object was being loaded.
        """
        def __init__(self, _owner=None, _group=None, _creationEvent=None, _updateEvent=None, _permissions=None, _externalInfo=None, _call=None, _event=None):
            if Ice.getType(self) == _M_omero.model.Details:
                raise RuntimeError('omero.model.Details is an abstract class')
            self._owner = _owner
            self._group = _group
            self._creationEvent = _creationEvent
            self._updateEvent = _updateEvent
            self._permissions = _permissions
            self._externalInfo = _externalInfo
            self._call = _call
            self._event = _event

        def ice_ids(self, current=None):
            return ('::Ice::Object', '::omero::model::Details')

        def ice_id(self, current=None):
            return '::omero::model::Details'

        def ice_staticId():
            return '::omero::model::Details'
        ice_staticId = staticmethod(ice_staticId)

        def getOwner(self, current=None):
            pass

        def setOwner(self, theOwner, current=None):
            pass

        def getGroup(self, current=None):
            pass

        def setGroup(self, theGroup, current=None):
            pass

        def getCreationEvent(self, current=None):
            pass

        def setCreationEvent(self, theCreationEvent, current=None):
            pass

        def getUpdateEvent(self, current=None):
            pass

        def setUpdateEvent(self, theUpdateEvent, current=None):
            pass

        def getPermissions(self, current=None):
            pass

        def setPermissions(self, thePermissions, current=None):
            pass

        def getExternalInfo(self, current=None):
            pass

        def setExternalInfo(self, theExternalInfo, current=None):
            pass

        def __str__(self):
            return IcePy.stringify(self, _M_omero.model._t_Details)

        __repr__ = __str__

    _M_omero.model.DetailsPrx = Ice.createTempClass()
    class DetailsPrx(Ice.ObjectPrx):

        def getOwner(self, _ctx=None):
            return _M_omero.model.Details._op_getOwner.invoke(self, ((), _ctx))

        def begin_getOwner(self, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_getOwner.begin(self, ((), _response, _ex, _sent, _ctx))

        def end_getOwner(self, _r):
            return _M_omero.model.Details._op_getOwner.end(self, _r)

        def setOwner(self, theOwner, _ctx=None):
            return _M_omero.model.Details._op_setOwner.invoke(self, ((theOwner, ), _ctx))

        def begin_setOwner(self, theOwner, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_setOwner.begin(self, ((theOwner, ), _response, _ex, _sent, _ctx))

        def end_setOwner(self, _r):
            return _M_omero.model.Details._op_setOwner.end(self, _r)

        def getGroup(self, _ctx=None):
            return _M_omero.model.Details._op_getGroup.invoke(self, ((), _ctx))

        def begin_getGroup(self, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_getGroup.begin(self, ((), _response, _ex, _sent, _ctx))

        def end_getGroup(self, _r):
            return _M_omero.model.Details._op_getGroup.end(self, _r)

        def setGroup(self, theGroup, _ctx=None):
            return _M_omero.model.Details._op_setGroup.invoke(self, ((theGroup, ), _ctx))

        def begin_setGroup(self, theGroup, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_setGroup.begin(self, ((theGroup, ), _response, _ex, _sent, _ctx))

        def end_setGroup(self, _r):
            return _M_omero.model.Details._op_setGroup.end(self, _r)

        def getCreationEvent(self, _ctx=None):
            return _M_omero.model.Details._op_getCreationEvent.invoke(self, ((), _ctx))

        def begin_getCreationEvent(self, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_getCreationEvent.begin(self, ((), _response, _ex, _sent, _ctx))

        def end_getCreationEvent(self, _r):
            return _M_omero.model.Details._op_getCreationEvent.end(self, _r)

        def setCreationEvent(self, theCreationEvent, _ctx=None):
            return _M_omero.model.Details._op_setCreationEvent.invoke(self, ((theCreationEvent, ), _ctx))

        def begin_setCreationEvent(self, theCreationEvent, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_setCreationEvent.begin(self, ((theCreationEvent, ), _response, _ex, _sent, _ctx))

        def end_setCreationEvent(self, _r):
            return _M_omero.model.Details._op_setCreationEvent.end(self, _r)

        def getUpdateEvent(self, _ctx=None):
            return _M_omero.model.Details._op_getUpdateEvent.invoke(self, ((), _ctx))

        def begin_getUpdateEvent(self, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_getUpdateEvent.begin(self, ((), _response, _ex, _sent, _ctx))

        def end_getUpdateEvent(self, _r):
            return _M_omero.model.Details._op_getUpdateEvent.end(self, _r)

        def setUpdateEvent(self, theUpdateEvent, _ctx=None):
            return _M_omero.model.Details._op_setUpdateEvent.invoke(self, ((theUpdateEvent, ), _ctx))

        def begin_setUpdateEvent(self, theUpdateEvent, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_setUpdateEvent.begin(self, ((theUpdateEvent, ), _response, _ex, _sent, _ctx))

        def end_setUpdateEvent(self, _r):
            return _M_omero.model.Details._op_setUpdateEvent.end(self, _r)

        def getPermissions(self, _ctx=None):
            return _M_omero.model.Details._op_getPermissions.invoke(self, ((), _ctx))

        def begin_getPermissions(self, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_getPermissions.begin(self, ((), _response, _ex, _sent, _ctx))

        def end_getPermissions(self, _r):
            return _M_omero.model.Details._op_getPermissions.end(self, _r)

        def setPermissions(self, thePermissions, _ctx=None):
            return _M_omero.model.Details._op_setPermissions.invoke(self, ((thePermissions, ), _ctx))

        def begin_setPermissions(self, thePermissions, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_setPermissions.begin(self, ((thePermissions, ), _response, _ex, _sent, _ctx))

        def end_setPermissions(self, _r):
            return _M_omero.model.Details._op_setPermissions.end(self, _r)

        def getExternalInfo(self, _ctx=None):
            return _M_omero.model.Details._op_getExternalInfo.invoke(self, ((), _ctx))

        def begin_getExternalInfo(self, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_getExternalInfo.begin(self, ((), _response, _ex, _sent, _ctx))

        def end_getExternalInfo(self, _r):
            return _M_omero.model.Details._op_getExternalInfo.end(self, _r)

        def setExternalInfo(self, theExternalInfo, _ctx=None):
            return _M_omero.model.Details._op_setExternalInfo.invoke(self, ((theExternalInfo, ), _ctx))

        def begin_setExternalInfo(self, theExternalInfo, _response=None, _ex=None, _sent=None, _ctx=None):
            return _M_omero.model.Details._op_setExternalInfo.begin(self, ((theExternalInfo, ), _response, _ex, _sent, _ctx))

        def end_setExternalInfo(self, _r):
            return _M_omero.model.Details._op_setExternalInfo.end(self, _r)

        def checkedCast(proxy, facetOrCtx=None, _ctx=None):
            return _M_omero.model.DetailsPrx.ice_checkedCast(proxy, '::omero::model::Details', facetOrCtx, _ctx)
        checkedCast = staticmethod(checkedCast)

        def uncheckedCast(proxy, facet=None):
            return _M_omero.model.DetailsPrx.ice_uncheckedCast(proxy, facet)
        uncheckedCast = staticmethod(uncheckedCast)

        def ice_staticId():
            return '::omero::model::Details'
        ice_staticId = staticmethod(ice_staticId)

    _M_omero.model._t_DetailsPrx = IcePy.defineProxy('::omero::model::Details', DetailsPrx)

    _M_omero.model._t_Details = IcePy.declareClass('::omero::model::Details')

    _M_omero.model._t_Details = IcePy.defineClass('::omero::model::Details', Details, -1, (), True, False, None, (), (
        ('_owner', (), _M_omero.model._t_Experimenter, False, 0),
        ('_group', (), _M_omero.model._t_ExperimenterGroup, False, 0),
        ('_creationEvent', (), _M_omero.model._t_Event, False, 0),
        ('_updateEvent', (), _M_omero.model._t_Event, False, 0),
        ('_permissions', (), _M_omero.model._t_Permissions, False, 0),
        ('_externalInfo', (), _M_omero.model._t_ExternalInfo, False, 0),
        ('_call', (), _M_Ice._t_Context, False, 0),
        ('_event', (), _M_omero.sys._t_EventContext, False, 0)
    ))
    Details._ice_type = _M_omero.model._t_Details

    Details._op_getOwner = IcePy.Operation('getOwner', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_omero.model._t_Experimenter, False, 0), ())
    Details._op_setOwner = IcePy.Operation('setOwner', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_omero.model._t_Experimenter, False, 0),), (), None, ())
    Details._op_getGroup = IcePy.Operation('getGroup', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_omero.model._t_ExperimenterGroup, False, 0), ())
    Details._op_setGroup = IcePy.Operation('setGroup', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_omero.model._t_ExperimenterGroup, False, 0),), (), None, ())
    Details._op_getCreationEvent = IcePy.Operation('getCreationEvent', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_omero.model._t_Event, False, 0), ())
    Details._op_setCreationEvent = IcePy.Operation('setCreationEvent', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_omero.model._t_Event, False, 0),), (), None, ())
    Details._op_getUpdateEvent = IcePy.Operation('getUpdateEvent', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_omero.model._t_Event, False, 0), ())
    Details._op_setUpdateEvent = IcePy.Operation('setUpdateEvent', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_omero.model._t_Event, False, 0),), (), None, ())
    Details._op_getPermissions = IcePy.Operation('getPermissions', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_omero.model._t_Permissions, False, 0), ())
    Details._op_setPermissions = IcePy.Operation('setPermissions', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_omero.model._t_Permissions, False, 0),), (), None, ())
    Details._op_getExternalInfo = IcePy.Operation('getExternalInfo', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (), (), ((), _M_omero.model._t_ExternalInfo, False, 0), ())
    Details._op_setExternalInfo = IcePy.Operation('setExternalInfo', Ice.OperationMode.Normal, Ice.OperationMode.Normal, False, None, (), (((), _M_omero.model._t_ExternalInfo, False, 0),), (), None, ())

    _M_omero.model.Details = Details
    del Details

    _M_omero.model.DetailsPrx = DetailsPrx
    del DetailsPrx

# End of module omero.model

__name__ = 'omero'

# End of module omero
