upper case for JoinTable WorkingSet_DescriptionBase
[cdmlib.git] / cdmlib-model / src / main / java / eu / etaxonomy / cdm / model / description / State.java
index fe0f2f8eea93d1bd935eccbb404ad837186ac9c8..9200214b1c48d15aee0c597a872017914091f6e4 100644 (file)
 package eu.etaxonomy.cdm.model.description;
 
 
+import java.util.HashMap;
+import java.util.Map;
+import java.util.UUID;
+
 import javax.persistence.Entity;
 import javax.xml.bind.annotation.XmlAccessType;
 import javax.xml.bind.annotation.XmlAccessorType;
@@ -17,6 +21,8 @@ import javax.xml.bind.annotation.XmlRootElement;
 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.Language;
 import eu.etaxonomy.cdm.model.common.OrderedTermBase;
@@ -35,12 +41,15 @@ import eu.etaxonomy.cdm.model.common.TermVocabulary;
 @XmlType(name = "State")
 @XmlRootElement(name = "State")
 @Entity
-//@Audited
+@Indexed(index = "eu.etaxonomy.cdm.model.common.DefinedTermBase")
+@Audited
 public class State extends OrderedTermBase<State> {
        private static final long serialVersionUID = -4816292463790262516L;
        @SuppressWarnings("unused")
        private static final Logger logger = Logger.getLogger(State.class);
 
+       protected static Map<UUID, State> termMap = null;       
+       
        // ************* CONSTRUCTORS *************/    
        /** 
         * Class constructor: creates a new empty state.
@@ -48,7 +57,6 @@ public class State extends OrderedTermBase<State> {
         * @see #State(String, String, String)
         */
        public State() {
-               super();
        }
 
        /** 
@@ -91,11 +99,23 @@ public class State extends OrderedTermBase<State> {
                return new State(term, label, labelAbbrev);
        }
 
+//************************** METHODS ********************************
+       
+       /* (non-Javadoc)
+        * @see eu.etaxonomy.cdm.model.common.DefinedTermBase#resetTerms()
+        */
        @Override
-       protected void setDefaultTerms(TermVocabulary<State> termVocabulary) {
-               // TODO Auto-generated method stub
-               
+       public void resetTerms(){
+               termMap = null;
        }
+
        
+       @Override
+       protected void setDefaultTerms(TermVocabulary<State> termVocabulary){
+               termMap = new HashMap<UUID, State>();
+               for (State term : termVocabulary.getTerms()){
+                       termMap.put(term.getUuid(), term); 
+               }
+       }
 
 }
\ No newline at end of file