Ignore:
Timestamp:
03/02/12 13:48:25 (8 years ago)
Author:
mnagni
Message:

Fixed the multiple CI_Party INSERT in the DB
Refactored the ingestion thanks to the new eq method in the imported classes DB library

Location:
mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework
Files:
20 edited

Legend:

Unmodified
Added
Removed
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_aquisitionmetadata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:41 
     20Created on 03-Feb-2012 10:41:10 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_AquisitionMetadata, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_cellvaluepair.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:38 
     21Created on 03-Feb-2012 10:41:15 
    2122 
    2223@author: mnagni 
     
    3738        self._cv_surfacevaluepair = CV_SurfaceValuePair()        
    3839 
     40        self._collection_cv_discretesolidcoverage = [] 
    3941        self._collection_cv_discretepointcoverage = [] 
    40         self._collection_cv_discretesolidcoverage = [] 
     42        self._collection_cv_discretecurvecoverage = [] 
     43        self._collection_cv_discretesurfacecoverage = [] 
    4144        self._collection_cv_discretegridpointcoverage = [] 
    4245        self._collection_cvt_discretetimeinstantcoverage = [] 
    43         self._collection_cv_discretecurvecoverage = [] 
    44         self._collection_cv_discretesurfacecoverage = [] 
    4546        self.collection = [] 
    4647        self.value = None 
    4748        self.geometry = None 
    4849        self._extension_cv_valuetriangle = [] 
    49         self._extension_cv_valuecurve = [] 
    5050        self._extension_cv_thiessenvaluepolygon = [] 
    5151        self._extension_cv_valuehexagon = [] 
    5252        self._extension_cv_gridvaluecell = [] 
     53        self._extension_cv_valuecurve = [] 
    5354        super(IF_CellValuePair, self).__init__() 
    5455 
     
    5960    @collection.setter 
    6061    def collection(self, value): 
    61              self._cv_surfacevaluepair.collection = value 
     62            self._cv_surfacevaluepair.collection = value 
    6263 
    6364    @property 
     
    6768    @collection.setter 
    6869    def collection(self, value): 
    69              self._cv_surfacevaluepair.collection = value 
     70            self._cv_surfacevaluepair.collection = value 
    7071 
    7172 
     
    7980    @extension.setter 
    8081    def extension(self, value): 
    81              self._cv_surfacevaluepair.extension = value 
     82            self._cv_surfacevaluepair.extension = value 
     83 
     84    def __key(self): 
     85        return (self.collection, self.collection, self.value, self.geometry, self.extension) 
     86 
     87    def __eq__(x, y): 
     88        ''' 
     89        Cannot compare classes which do not define a "__key" attribute  
     90        ''' 
     91        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     92            return x.__key() == y.__key() 
     93        return id(x) == id(y) 
     94 
     95    def __hash__(self): 
     96        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_classificationattributetype.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:32 
     21Created on 03-Feb-2012 10:41:10 
    2122 
    2223@author: mnagni 
     
    3940        self.propertyTypeMetadata = [] 
    4041        self.valueDomain = None 
    41         self._characterizeBy_gf_temporalattributetype = [] 
     42        self._characterizeBy_gf_spatialattributetype = [] 
     43        self._characterizeBy_gf_locationalattributetype = [] 
    4244        self._characterizeBy_gf_thematicattributetype = [] 
    4345        self._characterizeBy_gf_metadataattributetype = [] 
    44         self._characterizeBy_gf_locationalattributetype = [] 
     46        self._characterizeBy_gf_temporalattributetype = [] 
    4547        self._characterizeBy_if_classificationattributetype = [] 
    46         self._characterizeBy_gf_spatialattributetype = [] 
    4748        self.featureAttributeMetadata = [] 
     49        self.constrainedBy = [] 
    4850        self.memberName = None 
    49         self.constrainedBy = [] 
    5051        self.valueType = None 
    5152        self.definition = None 
    5253        self.theGF_FeatureType = None 
    53         self._characterize_gf_temporalattributetype = None 
     54        self.cardinality = None 
     55        self._characterize_gf_spatialattributetype = None 
     56        self._characterize_gf_locationalattributetype = None 
    5457        self._characterize_gf_thematicattributetype = None 
    5558        self._characterize_gf_metadataattributetype = None 
    56         self._characterize_gf_locationalattributetype = None 
     59        self._characterize_gf_temporalattributetype = None 
    5760        self._characterize_if_classificationattributetype = None 
    58         self._characterize_gf_spatialattributetype = None 
    59         self.cardinality = None 
    6061        super(IF_ClassificationAttributeType, self).__init__() 
    6162 
     
    6667    @propertyTypeMetadata.setter 
    6768    def propertyTypeMetadata(self, value): 
    68              self._gf_attributetype.propertyTypeMetadata = value 
     69            self._gf_attributetype.propertyTypeMetadata = value 
    6970 
    7071    @property 
     
    7475    @valueDomain.setter 
    7576    def valueDomain(self, value): 
    76              self._gf_attributetype.valueDomain = value 
     77            self._gf_attributetype.valueDomain = value 
    7778 
    7879    @property 
     
    8283    @characterizeBy.setter 
    8384    def characterizeBy(self, value): 
    84              self._gf_attributetype.characterizeBy = value 
     85            self._gf_attributetype.characterizeBy = value 
    8586 
    8687    @property 
     
    9091    @featureAttributeMetadata.setter 
    9192    def featureAttributeMetadata(self, value): 
    92              self._gf_attributetype.featureAttributeMetadata = value 
     93            self._gf_attributetype.featureAttributeMetadata = value 
     94 
     95    @property 
     96    def constrainedBy(self): 
     97        return self._gf_attributetype.constrainedBy 
     98 
     99    @constrainedBy.setter 
     100    def constrainedBy(self, value): 
     101            self._gf_attributetype.constrainedBy = value 
    93102 
    94103    @property 
     
    98107    @memberName.setter 
    99108    def memberName(self, value): 
    100              self._gf_attributetype.memberName = value 
    101  
    102     @property 
    103     def constrainedBy(self): 
    104         return self._gf_attributetype.constrainedBy 
    105  
    106     @constrainedBy.setter 
    107     def constrainedBy(self, value): 
    108              self._gf_attributetype.constrainedBy = value 
     109            self._gf_attributetype.memberName = value 
    109110 
    110111    @property 
     
    114115    @valueType.setter 
    115116    def valueType(self, value): 
    116              self._gf_attributetype.valueType = value 
     117            self._gf_attributetype.valueType = value 
    117118 
    118119    @property 
     
    122123    @definition.setter 
    123124    def definition(self, value): 
    124              self._gf_attributetype.definition = value 
     125            self._gf_attributetype.definition = value 
    125126 
    126127    @property 
     
    130131    @theGF_FeatureType.setter 
    131132    def theGF_FeatureType(self, value): 
    132              self._gf_attributetype.theGF_FeatureType = value 
     133            self._gf_attributetype.theGF_FeatureType = value 
     134 
     135    @property 
     136    def cardinality(self): 
     137        return self._gf_attributetype.cardinality 
     138 
     139    @cardinality.setter 
     140    def cardinality(self, value): 
     141            self._gf_attributetype.cardinality = value 
    133142 
    134143    @property 
     
    138147    @characterize.setter 
    139148    def characterize(self, value): 
    140              self._gf_attributetype.characterize = value 
     149            self._gf_attributetype.characterize = value 
    141150 
    142     @property 
    143     def cardinality(self): 
    144         return self._gf_attributetype.cardinality 
     151    def __key(self): 
     152        return (self.propertyTypeMetadata, self.valueDomain, self.characterizeBy, self.featureAttributeMetadata, self.constrainedBy, self.memberName, self.valueType, self.definition, self.theGF_FeatureType, self.cardinality, self.characterize) 
    145153 
    146     @cardinality.setter 
    147     def cardinality(self, value): 
    148              self._gf_attributetype.cardinality = value 
     154    def __eq__(x, y): 
     155        ''' 
     156        Cannot compare classes which do not define a "__key" attribute  
     157        ''' 
     158        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     159            return x.__key() == y.__key() 
     160        return id(x) == id(y) 
     161 
     162    def __hash__(self): 
     163        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_collection.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:34 
     20Created on 03-Feb-2012 10:41:17 
    2021 
    2122@author: mnagni 
     
    3940 
    4041 
     42 
     43    def __key(self): 
     44        return (self.describes) 
     45 
     46    def __eq__(x, y): 
     47        ''' 
     48        Cannot compare classes which do not define a "__key" attribute  
     49        ''' 
     50        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     51            return x.__key() == y.__key() 
     52        return id(x) == id(y) 
     53 
     54    def __hash__(self): 
     55        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_collectionmetadata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:36 
     20Created on 03-Feb-2012 10:41:12 
    2021 
    2122@author: mnagni 
     
    3940 
    4041 
     42 
     43    def __key(self): 
     44        return (self.has) 
     45 
     46    def __eq__(x, y): 
     47        ''' 
     48        Cannot compare classes which do not define a "__key" attribute  
     49        ''' 
     50        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     51            return x.__key() == y.__key() 
     52        return id(x) == id(y) 
     53 
     54    def __hash__(self): 
     55        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_coveragedata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:35 
     20Created on 03-Feb-2012 10:41:15 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_CoverageData, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_dataset.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:38 
     20Created on 03-Feb-2012 10:41:15 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_DataSet, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_discoverymetadata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:33 
     20Created on 03-Feb-2012 10:41:14 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_DiscoveryMetadata, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_discretepointcoverage.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:30 
     21Created on 03-Feb-2012 10:41:17 
    2122 
    2223@author: mnagni 
     
    4445 
    4546 
     47 
     48    def __key(self): 
     49        return (self.domainExtent, self.rangeType) 
     50 
     51    def __eq__(x, y): 
     52        ''' 
     53        Cannot compare classes which do not define a "__key" attribute  
     54        ''' 
     55        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     56            return x.__key() == y.__key() 
     57        return id(x) == id(y) 
     58 
     59    def __hash__(self): 
     60        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_discretesurfacegridcoverage.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:37 
     21Created on 03-Feb-2012 10:41:12 
    2122 
    2223@author: mnagni 
     
    4748 
    4849 
     50 
     51    def __key(self): 
     52        return (self.domainExtent, self.commonPointRule, self.rangeType) 
     53 
     54    def __eq__(x, y): 
     55        ''' 
     56        Cannot compare classes which do not define a "__key" attribute  
     57        ''' 
     58        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     59            return x.__key() == y.__key() 
     60        return id(x) == id(y) 
     61 
     62    def __hash__(self): 
     63        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_feature.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:37 
     20Created on 03-Feb-2012 10:41:17 
    2021 
    2122@author: mnagni 
     
    4243 
    4344 
     45 
     46    def __key(self): 
     47        return (self.theCV_DiscretePointCoverage, self.theCV_DiscreteGridPointCoverage) 
     48 
     49    def __eq__(x, y): 
     50        ''' 
     51        Cannot compare classes which do not define a "__key" attribute  
     52        ''' 
     53        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     54            return x.__key() == y.__key() 
     55        return id(x) == id(y) 
     56 
     57    def __hash__(self): 
     58        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_gridcoverage.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:33 
     21Created on 03-Feb-2012 10:41:11 
    2122 
    2223@author: mnagni 
     
    3839 
    3940        super(IF_GridCoverage, self).__init__() 
     41 
     42    def __key(self): 
     43        return () 
     44 
     45    def __eq__(x, y): 
     46        ''' 
     47        Cannot compare classes which do not define a "__key" attribute  
     48        ''' 
     49        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     50            return x.__key() == y.__key() 
     51        return id(x) == id(y) 
     52 
     53    def __hash__(self): 
     54        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_quadgriddeddata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:40 
     21Created on 03-Feb-2012 10:41:13 
    2122 
    2223@author: mnagni 
     
    5354 
    5455 
     56 
     57    def __key(self): 
     58        return (self.domainExtent, self.interpolationType, self.commonPointRule, self.rangeType, self.interpolationParametersType) 
     59 
     60    def __eq__(x, y): 
     61        ''' 
     62        Cannot compare classes which do not define a "__key" attribute  
     63        ''' 
     64        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     65            return x.__key() == y.__key() 
     66        return id(x) == id(y) 
     67 
     68    def __hash__(self): 
     69        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_qualitymetadata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:36 
     20Created on 03-Feb-2012 10:41:18 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_QualityMetadata, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_riemanngriddeddata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:34 
     21Created on 03-Feb-2012 10:41:18 
    2122 
    2223@author: mnagni 
     
    5354 
    5455 
     56 
     57    def __key(self): 
     58        return (self.domainExtent, self.interpolationType, self.commonPointRule, self.rangeType, self.interpolationParametersType) 
     59 
     60    def __eq__(x, y): 
     61        ''' 
     62        Cannot compare classes which do not define a "__key" attribute  
     63        ''' 
     64        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     65            return x.__key() == y.__key() 
     66        return id(x) == id(y) 
     67 
     68    def __hash__(self): 
     69        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_structuralmetadata.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:29 
     20Created on 03-Feb-2012 10:41:15 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_StructuralMetadata, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_surface.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:28 
     20Created on 03-Feb-2012 10:41:11 
    2021 
    2122@author: mnagni 
     
    4849 
    4950 
     51 
     52    def __key(self): 
     53        return (self.interpolation, self.numDerivativesOnBoundary, self.spanningSurface, self.boundary) 
     54 
     55    def __eq__(x, y): 
     56        ''' 
     57        Cannot compare classes which do not define a "__key" attribute  
     58        ''' 
     59        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     60            return x.__key() == y.__key() 
     61        return id(x) == id(y) 
     62 
     63    def __hash__(self): 
     64        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_tiling.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:35 
     20Created on 03-Feb-2012 10:41:18 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_Tiling, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_tincoverage.py

    r8074 r8086  
     1 
    12 
    23 
     
    1819 
    1920''' 
    20 Created on 26-Jan-2012 16:07:35 
     21Created on 03-Feb-2012 10:41:12 
    2122 
    2223@author: mnagni 
     
    3940        self.domainExtent = [] 
    4041        self.interpolationType = None 
     42        self.geometry = None 
    4143        self.commonPointRule = None 
    42         self.geometry = None 
    4344        self.rangeType = None 
    4445        self.interpolationParametersType = None 
     
    5657 
    5758 
     59 
     60    def __key(self): 
     61        return (self.domainExtent, self.interpolationType, self.geometry, self.commonPointRule, self.rangeType, self.interpolationParametersType) 
     62 
     63    def __eq__(x, y): 
     64        ''' 
     65        Cannot compare classes which do not define a "__key" attribute  
     66        ''' 
     67        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     68            return x.__key() == y.__key() 
     69        return id(x) == id(y) 
     70 
     71    def __hash__(self): 
     72        return hash(self.__key()) 
  • mauRepo/MolesManager/trunk/src/ea_model/iso_19129_2009_igcd/igcd_framework/if_transmittal.py

    r8074 r8086  
     1 
    12 
    23 
     
    1718 
    1819''' 
    19 Created on 26-Jan-2012 16:07:33 
     20Created on 03-Feb-2012 10:41:16 
    2021 
    2122@author: mnagni 
     
    3637 
    3738        super(IF_Transmittal, self).__init__() 
     39 
     40    def __key(self): 
     41        return () 
     42 
     43    def __eq__(x, y): 
     44        ''' 
     45        Cannot compare classes which do not define a "__key" attribute  
     46        ''' 
     47        if hasattr(x, '_%s__key' % (type(x).__name__)) and hasattr(y, '_%s__key' % (type(y).__name__)): 
     48            return x.__key() == y.__key() 
     49        return id(x) == id(y) 
     50 
     51    def __hash__(self): 
     52        return hash(self.__key()) 
Note: See TracChangeset for help on using the changeset viewer.