--- 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"""