Reintegration of the red list branch into trunk
[cdmlib.git] / cdmlib-model / src / main / java / eu / etaxonomy / cdm / model / location / ReferenceSystem.java
index bc51d61522b2bf0ba13be4f929179522bbb38d78..7103be9878dcf53463d47673eb073a0ccf420d98 100644 (file)
@@ -22,6 +22,7 @@ import javax.xml.bind.annotation.XmlType;
 
 import org.apache.log4j.Logger;
 import org.hibernate.envers.Audited;
+import org.hibernate.search.annotations.Indexed;
 
 import eu.etaxonomy.cdm.model.common.DefaultTermInitializer;
 import eu.etaxonomy.cdm.model.common.DefinedTermBase;
@@ -39,15 +40,20 @@ import eu.etaxonomy.cdm.model.common.TermVocabulary;
 @XmlType(name = "ReferenceSystem")
 @XmlRootElement(name = "ReferenceSystem")
 @Entity
+@Indexed(index = "eu.etaxonomy.cdm.model.common.DefinedTermBase")
 @Audited
 public class ReferenceSystem extends DefinedTermBase<ReferenceSystem> {
-       private static final long serialVersionUID = 2704455299046749175L;
+       private static final long serialVersionUID = -9060720949197749047L;
+
        @SuppressWarnings("unused")
        private static final Logger logger = Logger.getLogger(ReferenceSystem.class);
 
        protected static Map<UUID, ReferenceSystem> termMap = null;             
 
        private static final UUID uuidWGS84 = UUID.fromString("63f4dd55-00fa-49e7-96fd-2b7059a1c1ee");
+       private static final UUID uuidGoogleEarth = UUID.fromString("1bb67042-2814-4b09-9e76-c8c1e68aa281");
+       private static final UUID uuidGazetteer = UUID.fromString("e35f1d1c-9347-4190-bd47-a3b00632fcf3");
+       
        
        /**
         * Factory method
@@ -78,6 +84,17 @@ public class ReferenceSystem extends DefinedTermBase<ReferenceSystem> {
                super(term, label, labelAbbrev);
        }
 
+// ************************************* MTEHODS ***************************************************/  
+       
+       /* (non-Javadoc)
+        * @see eu.etaxonomy.cdm.model.common.DefinedTermBase#resetTerms()
+        */
+       @Override
+       public void resetTerms(){
+               termMap = null;
+       }
+
+       
 
        protected static ReferenceSystem getTermByUuid(UUID uuid){
                if (termMap == null){
@@ -90,7 +107,15 @@ public class ReferenceSystem extends DefinedTermBase<ReferenceSystem> {
        public static final ReferenceSystem WGS84(){
                return getTermByUuid(uuidWGS84);
        }
+       
+       public static final ReferenceSystem GOOGLE_EARTH(){
+               return getTermByUuid(uuidGoogleEarth);
+       }
 
+       public static final ReferenceSystem GAZETTEER(){
+               return getTermByUuid(uuidGazetteer);
+       }
+       
        @Override
        protected void setDefaultTerms(TermVocabulary<ReferenceSystem> termVocabulary){
                termMap = new HashMap<UUID, ReferenceSystem>();