diff -r c02d355d3ffd -r b4b587dd45ca src/ztfy/utils/interfaces.py --- a/src/ztfy/utils/interfaces.py Thu Sep 13 10:56:25 2012 +0200 +++ b/src/ztfy/utils/interfaces.py Thu Sep 20 17:06:22 2012 +0200 @@ -24,9 +24,12 @@ # import Zope3 packages from zope.interface import Interface +from zope.schema import TextLine, Int, Password # import local packages +from ztfy.utils import _ + class INewSiteManagerEvent(IObjectEvent): """Event interface for new site manager event""" @@ -140,3 +143,41 @@ class IDict(IDictInfo, IDictWriter): """Marker interface for dict-like components""" + + +# +# ZEO connection settings interface +# + +class IZEOConnection(Interface): + """ZEO connection settings interface""" + + server_name = TextLine(title=_("ZEO server name"), + description=_("Hostname of ZEO server"), + required=True, + default=u'localhost') + + server_port = Int(title=_("ZEO server port"), + description=_("Port number of ZEO server"), + required=True, + default=8100) + + storage = TextLine(title=_("ZEO server storage"), + description=_("Storage name on ZEO server"), + required=True, + default=u'1') + + username = TextLine(title=_("ZEO user name"), + description=_("User name on ZEO server"), + required=False) + + password = Password(title=_("ZEO password"), + description=_("User password on ZEO server"), + required=False) + + server_realm = TextLine(title=_("ZEO server realm"), + description=_("Realm name on ZEO server"), + required=False) + + def getConnection(self, wait=False): + """Open ZEO connection with given settings"""