src/pyams_gis/configuration.py
changeset 65 cc7c2b11ab27
parent 41 5d273277716b
child 72 032947e7ef0c
equal deleted inserted replaced
64:cb064f40c79d 65:cc7c2b11ab27
    10 # FOR A PARTICULAR PURPOSE.
    10 # FOR A PARTICULAR PURPOSE.
    11 #
    11 #
    12 
    12 
    13 __docformat__ = 'restructuredtext'
    13 __docformat__ = 'restructuredtext'
    14 
    14 
    15 
       
    16 # import standard library
       
    17 
       
    18 # import interfaces
       
    19 from pyams_gis.interfaces.configuration import IMapConfiguration, IMapConfigurationTarget
       
    20 
       
    21 # import packages
       
    22 from persistent import Persistent
    15 from persistent import Persistent
    23 from pyams_utils.adapter import adapter_config, get_annotation_adapter
       
    24 from zope.container.contained import Contained
    16 from zope.container.contained import Contained
    25 from zope.interface import implementer
       
    26 from zope.schema.fieldproperty import FieldProperty
    17 from zope.schema.fieldproperty import FieldProperty
    27 
    18 
       
    19 from pyams_gis.interfaces.configuration import IMapConfiguration, IMapConfigurationTarget
       
    20 from pyams_utils.adapter import adapter_config, get_annotation_adapter
       
    21 from pyams_utils.factory import factory_config
    28 
    22 
    29 @implementer(IMapConfiguration)
    23 
       
    24 @factory_config(IMapConfiguration)
    30 class MapConfiguration(Persistent, Contained):
    25 class MapConfiguration(Persistent, Contained):
    31     """Map configuration persistent class"""
    26     """Map configuration persistent class"""
    32 
    27 
    33     crs = FieldProperty(IMapConfiguration['crs'])
    28     crs = FieldProperty(IMapConfiguration['crs'])
    34     layers = FieldProperty(IMapConfiguration['layers'])
    29     layers = FieldProperty(IMapConfiguration['layers'])
    80 
    75 
    81 
    76 
    82 @adapter_config(context=IMapConfigurationTarget, provides=IMapConfiguration)
    77 @adapter_config(context=IMapConfigurationTarget, provides=IMapConfiguration)
    83 def map_configuration_factory(context):
    78 def map_configuration_factory(context):
    84     """Map configuration factory"""
    79     """Map configuration factory"""
    85     return get_annotation_adapter(context, MAP_CONFIGURATION_KEY, MapConfiguration)
    80     return get_annotation_adapter(context, MAP_CONFIGURATION_KEY, IMapConfiguration)