source: mauRepo/CedaMolesModel/tags/0.1.0/ceda_moles_model/ea_model/iso_19111_referencing_by_coordinates/coordinate_operations/cc_singleoperation.py @ 8398

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/mauRepo/CedaMolesModel/tags/0.1.0/ceda_moles_model/ea_model/iso_19111_referencing_by_coordinates/coordinate_operations/cc_singleoperation.py@8405
Revision 8398, 5.2 KB checked in by mnagni, 8 years ago (diff)

Incomplete - # 22504: CedaMoles? as python package
 http://team.ceda.ac.uk/trac/ceda/ticket/22504

  • Property svn:mime-type set to text/plain
Line 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21from ea_model.iso_19111_referencing_by_coordinates.coordinate_operations.cc_coordinateoperation import  CC_CoordinateOperation
22from ascore.utils import has_value, collectionProofHash
23
24'''
25Created on 26-Jun-2012 10:16:39
26
27@author: mnagni
28'''
29
30class CC_SingleOperation(CC_CoordinateOperation):
31        '''
32                Represents a data entity defined in a UML diagram and supposed to
33                be persisted in a relational database.
34 
35                This class has been genererated automatically using the Apache Velocity project.
36        '''
37        '''
38                Please note that any access to the inner attributes should be done using
39                the given get/set methods and NOT accessing them directly.
40        '''
41        def __init__(self):
42                self._cc_coordinateoperation = CC_CoordinateOperation()         
43
44                self.domainOfValidity = None
45                self.remarks = None
46                self.method = None
47                self.targetCRS = None
48                self.name = None
49                self._parameterValue_cc_parametervaluegroup = []
50                self._parameterValue_cc_operationparametervalue = []
51                self._parameterValue = []
52                self.operationVersion = None
53                self.sourceCRS = None
54                super(CC_SingleOperation, self).__init__()
55        @property
56        def domainOfValidity(self):     
57                return self._cc_coordinateoperation.domainOfValidity
58
59        @domainOfValidity.setter
60        def domainOfValidity(self, value):     
61                        self._cc_coordinateoperation.domainOfValidity = value
62        @property
63        def remarks(self):     
64                return self._cc_coordinateoperation.remarks
65
66        @remarks.setter
67        def remarks(self, value):       
68                        self._cc_coordinateoperation.remarks = value
69        @property
70        def alias(self):       
71                return self._cc_coordinateoperation.alias
72
73        @alias.setter
74        def alias(self, value):
75                        self._cc_coordinateoperation.alias = value
76        @property
77        def scope(self):       
78                return self._cc_coordinateoperation.scope
79
80        @scope.setter
81        def scope(self, value):
82                        self._cc_coordinateoperation.scope = value
83        @property
84        def passThruOperation(self):   
85                return self._cc_coordinateoperation.passThruOperation
86
87        @passThruOperation.setter
88        def passThruOperation(self, value):     
89                        self._cc_coordinateoperation.passThruOperation = value
90        @property
91        def targetCRS(self):   
92                return self._cc_coordinateoperation.targetCRS
93
94        @targetCRS.setter
95        def targetCRS(self, value):     
96                        self._cc_coordinateoperation.targetCRS = value
97        @property
98        def identifier(self):   
99                return self._cc_coordinateoperation.identifier
100
101        @identifier.setter
102        def identifier(self, value):   
103                        self._cc_coordinateoperation.identifier = value
104        @property
105        def name(self):
106                return self._cc_coordinateoperation.name
107
108        @name.setter
109        def name(self, value): 
110                        self._cc_coordinateoperation.name = value
111        @property
112        def concatOperation(self):     
113                return self._cc_coordinateoperation.concatOperation
114
115        @concatOperation.setter
116        def concatOperation(self, value):       
117                        self._cc_coordinateoperation.concatOperation = value
118        @property
119        def coordinateOperationAccuracy(self): 
120                return self._cc_coordinateoperation.coordinateOperationAccuracy
121
122        @coordinateOperationAccuracy.setter
123        def coordinateOperationAccuracy(self, value):   
124                        self._cc_coordinateoperation.coordinateOperationAccuracy = value
125        @property
126        def parameterValue(self):       
127                try:
128                        ret = []
129                        ret.extend(self._parameterValue_cc_parametervaluegroup)
130                        ret.extend(self._parameterValue_cc_operationparametervalue)
131                        if not hasattr(self, '_parameterValue'):
132                                self._parameterValue = []
133                        if self._parameterValue:
134                                ret.extend(self._parameterValue)
135                        del self._parameterValue[:]
136                        self._parameterValue.extend(set(ret))
137                except Exception as e:
138                        pass
139                return self._parameterValue
140
141        @property
142        def operationVersion(self):     
143                return self._cc_coordinateoperation.operationVersion
144
145        @operationVersion.setter
146        def operationVersion(self, value):     
147                        self._cc_coordinateoperation.operationVersion = value
148        @property
149        def sourceCRS(self):   
150                return self._cc_coordinateoperation.sourceCRS
151
152        @sourceCRS.setter
153        def sourceCRS(self, value):     
154                        self._cc_coordinateoperation.sourceCRS = value
155
156        def synchronize(self):
157                del self._parameterValue_cc_parametervaluegroup[:]
158                del self._parameterValue_cc_operationparametervalue[:]
159                for item in self.parameterValue:       
160                        valueClass = "%s.%s" % (type(item).__module__,type(item).__name__)
161                        if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_operations.cc_parametervaluegroup.CC_ParameterValueGroup":
162                                self._parameterValue_cc_parametervaluegroup.append(item)
163                                continue
164                        valueClass = "%s.%s" % (type(item).__module__,type(item).__name__)
165                        if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_operations.cc_operationparametervalue.CC_OperationParameterValue":
166                                self._parameterValue_cc_operationparametervalue.append(item)
167                                continue
168                pass
169
170        def __key(self):
171                return (self.domainOfValidity, self.remarks, self.method, self.alias, self.scope, self.passThruOperation, self.targetCRS, self.identifier, self.name, self.concatOperation, self.coordinateOperationAccuracy, self.parameterValue, self.operationVersion, self.sourceCRS)
172
173        def __eq__(self, y):
174                if type(self) != type(y):
175                        return False
176                '''
177                Cannot compare classes which do not define a "__key" attribute
178                '''
179                if hasattr(self, '_%s__key' % (type(self).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)):
180                        return self.__key() == y.__key()
181                return id(self) == id(y)
182
183        def __hash__(self):
184                return collectionProofHash(self.__key())
Note: See TracBrowser for help on using the repository browser.