15 |
15 |
16 __docformat__ = "restructuredtext" |
16 __docformat__ = "restructuredtext" |
17 |
17 |
18 # import standard packages |
18 # import standard packages |
19 from persistent import Persistent |
19 from persistent import Persistent |
|
20 from persistent.interfaces import IPersistent |
|
21 from transaction.interfaces import ITransactionManager |
20 |
22 |
21 # import Zope3 interfaces |
23 # import Zope3 interfaces |
22 from persistent.interfaces import IPersistent |
|
23 from transaction.interfaces import ITransactionManager |
|
24 from ZODB.interfaces import IConnection |
24 from ZODB.interfaces import IConnection |
|
25 from zope.schema.interfaces import IVocabularyFactory |
25 |
26 |
26 # import local interfaces |
27 # import local interfaces |
27 from ztfy.utils.interfaces import IZEOConnection |
28 from ztfy.utils.interfaces import IZEOConnection |
28 |
29 |
29 # import Zope3 packages |
30 # import Zope3 packages |
30 from ZEO import ClientStorage |
31 from ZEO import ClientStorage |
31 from ZODB import DB |
32 from ZODB import DB |
32 from zope.component import adapter |
33 from zope.component import adapter |
|
34 from zope.componentvocabulary.vocabulary import UtilityVocabulary |
33 from zope.container.contained import Contained |
35 from zope.container.contained import Contained |
34 from zope.interface import implementer, implements |
36 from zope.interface import implementer, implements, classProvides |
35 from zope.schema.fieldproperty import FieldProperty |
37 from zope.schema.fieldproperty import FieldProperty |
36 |
38 |
37 # import local packages |
39 # import local packages |
38 |
40 |
39 |
41 |
63 |
65 |
64 class ZEOConnectionUtility(ZEOConnectionInfo, Persistent, Contained): |
66 class ZEOConnectionUtility(ZEOConnectionInfo, Persistent, Contained): |
65 """Persistent ZEO connection settings utility""" |
67 """Persistent ZEO connection settings utility""" |
66 |
68 |
67 |
69 |
|
70 class ZEOConnectionVocabulary(UtilityVocabulary): |
|
71 """ZEO connections vocabulary""" |
|
72 |
|
73 classProvides(IVocabularyFactory) |
|
74 |
|
75 interface = IZEOConnection |
|
76 nameOnly = True |
|
77 |
68 |
78 |
69 # IPersistent adapters copied from zc.twist package |
79 # IPersistent adapters copied from zc.twist package |
70 # also register this for adapting from IConnection |
80 # also register this for adapting from IConnection |
71 @adapter(IPersistent) |
81 @adapter(IPersistent) |
72 @implementer(ITransactionManager) |
82 @implementer(ITransactionManager) |