source: mauRepo/CedaMolesModel/trunk/ceda_moles_model/ea_model/iso_19111_referencing_by_coordinates/coordinate_operations/cc_concatenatedoperation.py @ 8457

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/mauRepo/CedaMolesModel/trunk/ceda_moles_model/ea_model/iso_19111_referencing_by_coordinates/coordinate_operations/cc_concatenatedoperation.py@8457
Revision 8457, 5.5 KB checked in by mnagni, 7 years ago (diff)

Corrected an error in the generation of the classes "synchronize" method.

  • Property svn:mime-type set to text/plain
RevLine 
[8398]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'''
[8457]25Created on 10-Jul-2012 14:14:57
[8398]26
27@author: mnagni
28'''
29
30class CC_ConcatenatedOperation(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.targetCRS = None
47                self.name = None
48                self._coordOperation_cc_concatenatedoperation = []
49                self._coordOperation_cc_passthroughoperation = []
[8457]50                self._coordOperation_cc_singleoperation = []
[8398]51                self._coordOperation = []
52                self.operationVersion = None
53                self.sourceCRS = None
54                super(CC_ConcatenatedOperation, 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
[8457]84        def targetCRS(self):   
85                return self._cc_coordinateoperation.targetCRS
86
87        @targetCRS.setter
88        def targetCRS(self, value):     
89                        self._cc_coordinateoperation.targetCRS = value
90        @property
[8398]91        def passThruOperation(self):   
92                return self._cc_coordinateoperation.passThruOperation
93
94        @passThruOperation.setter
95        def passThruOperation(self, value):     
96                        self._cc_coordinateoperation.passThruOperation = 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 coordOperation(self):       
127                try:
128                        ret = []
129                        ret.extend(self._coordOperation_cc_concatenatedoperation)
130                        ret.extend(self._coordOperation_cc_passthroughoperation)
[8457]131                        ret.extend(self._coordOperation_cc_singleoperation)
[8398]132                        if not hasattr(self, '_coordOperation'):
133                                self._coordOperation = []
[8437]134                        if self._coordOperation is not None:
[8398]135                                ret.extend(self._coordOperation)
136                        del self._coordOperation[:]
137                        self._coordOperation.extend(set(ret))
138                except Exception as e:
139                        pass
140                return self._coordOperation
141
142        @property
143        def operationVersion(self):     
144                return self._cc_coordinateoperation.operationVersion
145
146        @operationVersion.setter
147        def operationVersion(self, value):     
148                        self._cc_coordinateoperation.operationVersion = value
149        @property
150        def sourceCRS(self):   
151                return self._cc_coordinateoperation.sourceCRS
152
153        @sourceCRS.setter
154        def sourceCRS(self, value):     
155                        self._cc_coordinateoperation.sourceCRS = value
156
157        def synchronize(self):
[8457]158                int_coordOperation = self.coordOperation       
[8398]159                del self._coordOperation_cc_concatenatedoperation[:]
160                del self._coordOperation_cc_passthroughoperation[:]
[8457]161                del self._coordOperation_cc_singleoperation[:]
162                for item in int_coordOperation:
[8398]163                        valueClass = "%s.%s" % (type(item).__module__,type(item).__name__)
164                        if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_operations.cc_concatenatedoperation.CC_ConcatenatedOperation":
165                                self._coordOperation_cc_concatenatedoperation.append(item)
166                                continue
167                        if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_operations.cc_passthroughoperation.CC_PassThroughOperation":
168                                self._coordOperation_cc_passthroughoperation.append(item)
169                                continue
[8457]170                        if valueClass == "ea_model.iso_19111_referencing_by_coordinates.coordinate_operations.cc_singleoperation.CC_SingleOperation":
171                                self._coordOperation_cc_singleoperation.append(item)
172                                continue
[8398]173                pass
174
175        def __key(self):
[8457]176                return (self.domainOfValidity, self.remarks, self.alias, self.scope, self.targetCRS, self.passThruOperation, self.identifier, self.name, self.concatOperation, self.coordinateOperationAccuracy, self.coordOperation, self.operationVersion, self.sourceCRS)
[8398]177
178        def __eq__(self, y):
179                if type(self) != type(y):
180                        return False
181                '''
182                Cannot compare classes which do not define a "__key" attribute
183                '''
184                if hasattr(self, '_%s__key' % (type(self).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)):
185                        return self.__key() == y.__key()
186                return id(self) == id(y)
187
188        def __hash__(self):
189                return collectionProofHash(self.__key())
Note: See TracBrowser for help on using the repository browser.