GeneratorType.java

  1. // license-header java merge-point
  2. //
  3. // Attention: Generated code! Do not modify by hand!
  4. // Generated by: TypeSafeEnumeration.vsl in andromda-java-cartridge.
  5. // Model Class:  JDBCMetadataModel::org.andromda.jdbcmetadata::GeneratorType
  6. // Metafacade:   org.andromda.metafacades.uml.Enumeration
  7. //
  8. package org.andromda.jdbcmetadata;

  9. import java.util.ArrayList;
  10. import java.util.Collections;
  11. import java.util.LinkedHashMap;
  12. import java.util.List;
  13. import java.util.Map;

  14. /**
  15.  * <p>Either the standard javax.persistence Generator type or a hibernate-specific type (strategy)
  16.  * or a customized type implemented through
  17.  * @org.hibernate.annotations.GenericGenerator(name="${attribute.generatorName}",
  18.  * strategy="${attribute.generatorGenericStrategy}")</p>
  19.  */
  20. public enum GeneratorType
  21. {
  22.     /** TODO: Model Documentation for Enumeration Literal AUTO value "auto" */
  23.     AUTO("auto"),
  24.     /** TODO: Model Documentation for Enumeration Literal IDENTITY value "identity" */
  25.     IDENTITY("identity"),
  26.     /** TODO: Model Documentation for Enumeration Literal SEQUENCE value "sequence" */
  27.     SEQUENCE("sequence"),
  28.     /** TODO: Model Documentation for Enumeration Literal TABLE value "table" */
  29.     TABLE("table"),
  30.     /** TODO: Model Documentation for Enumeration Literal INCREMENT value "increment" */
  31.     INCREMENT("increment"),
  32.     /** TODO: Model Documentation for Enumeration Literal HILO value "hilo" */
  33.     HILO("hilo"),
  34.     /** TODO: Model Documentation for Enumeration Literal SEQHILO value "seqhilo" */
  35.     SEQHILO("seqhilo"),
  36.     /** TODO: Model Documentation for Enumeration Literal UUID value "uuid" */
  37.     UUID("uuid"),
  38.     /** TODO: Model Documentation for Enumeration Literal UUID2 value "uuid2" */
  39.     UUID2("uuid2"),
  40.     /** TODO: Model Documentation for Enumeration Literal GUID value "guid" */
  41.     GUID("guid"),
  42.     /** TODO: Model Documentation for Enumeration Literal NATIVE value "native" */
  43.     NATIVE("native"),
  44.     /** TODO: Model Documentation for Enumeration Literal ASSIGNED value "assigned" */
  45.     ASSIGNED("assigned"),
  46.     /** TODO: Model Documentation for Enumeration Literal SELECT value "select" */
  47.     SELECT("select"),
  48.     /** TODO: Model Documentation for Enumeration Literal FOREIGN value "foreign" */
  49.     FOREIGN("foreign"),
  50.     /** TODO: Model Documentation for Enumeration Literal SEQUENCE_IDENTITY value "SEQUENCE_IDENTITY" */
  51.     SEQUENCE_IDENTITY("SEQUENCE_IDENTITY");

  52.     /**
  53.      * The serial version UID of this class. Needed for serialization.
  54.      */
  55.     private static final long serialVersionUID = -2976361512778720647L;

  56.     private final String enumValue;

  57.     /**
  58.      * The constructor with enumeration literal value allowing
  59.      * super classes to access it.
  60.      */
  61.     private GeneratorType(String value)
  62.     {
  63.         this.enumValue = value;
  64.     }

  65.     /*
  66.      * Do not override this method directly. Use an alternate name
  67.      * if providing a different toString implementation
  68.      * @see Object#toString()
  69.     @Override
  70.     public String toString()
  71.     {
  72.         return String.valueOf(this.enumValue);
  73.     }
  74.      */

  75.     /**
  76.      * Retrieves an instance of GeneratorType from <code>its name</code>.
  77.      *
  78.      * @param name the name to create the GeneratorType from.
  79.      * @return The enumeration literal named after the 'name' argument
  80.      */
  81.     public static GeneratorType fromString(String name)
  82.     {
  83.         return GeneratorType.valueOf(name);
  84.     }

  85.     /**
  86.      * Returns an enumeration literal String <code>value</code>.
  87.      * Required by JAXB2 enumeration implementation
  88.      *
  89.      * @return String with corresponding value
  90.      */
  91.     public String value()
  92.     {
  93.         return this.enumValue;
  94.     }

  95.     /**
  96.      * Returns an instance of GeneratorType from String <code>value</code>.
  97.      * Required by JAXB2 enumeration implementation
  98.      *
  99.      * @param value the value to create the GeneratorType from.
  100.      * @return static Enumeration with corresponding value
  101.      */
  102.     public static GeneratorType fromValue(String value)
  103.     {
  104.         for (GeneratorType enumName: GeneratorType.values())
  105.         {
  106.             if (enumName.getValue().equals(value))
  107.             {
  108.                 return enumName;
  109.             }
  110.         }
  111.         throw new IllegalArgumentException("GeneratorType.fromValue(" + value + ')');
  112.     }

  113.     /**
  114.      * Gets the underlying value of this type safe enumeration.
  115.      * This method is necessary to comply with DaoBase implementation.
  116.      * @return The name of this literal.
  117.      */
  118.     public String getValue()
  119.     {
  120.         return this.enumValue;
  121.     }

  122.     /**
  123.      * Returns an unmodifiable list containing the literals that are known by this enumeration.
  124.      *
  125.      * @return A List containing the actual literals defined by this enumeration, this list
  126.      *         can not be modified.
  127.      */
  128.     public static List<String> literals()
  129.     {
  130.         return GeneratorType.literals;
  131.     }

  132.     /**
  133.      * Returns an unmodifiable list containing the names of the literals that are known
  134.      * by this enumeration.
  135.      *
  136.      * @return A List containing the actual names of the literals defined by this
  137.      *         enumeration, this list can not be modified.
  138.      */
  139.     public static List<String> names()
  140.     {
  141.         return GeneratorType.names;
  142.     }

  143.     private static Map<String, GeneratorType> values = new LinkedHashMap<String, GeneratorType>(15, 1);
  144.     private static List<String> literals = new ArrayList<String>(15);
  145.     private static List<String> names = new ArrayList<String>(15);
  146.     private static List<GeneratorType> valueList = new ArrayList<GeneratorType>(15);

  147.     /**
  148.      * Initializes the values.
  149.      */
  150.     static
  151.     {
  152.         synchronized (GeneratorType.values)
  153.         {
  154.             GeneratorType.values.put(AUTO.enumValue, AUTO);
  155.             GeneratorType.values.put(IDENTITY.enumValue, IDENTITY);
  156.             GeneratorType.values.put(SEQUENCE.enumValue, SEQUENCE);
  157.             GeneratorType.values.put(TABLE.enumValue, TABLE);
  158.             GeneratorType.values.put(INCREMENT.enumValue, INCREMENT);
  159.             GeneratorType.values.put(HILO.enumValue, HILO);
  160.             GeneratorType.values.put(SEQHILO.enumValue, SEQHILO);
  161.             GeneratorType.values.put(UUID.enumValue, UUID);
  162.             GeneratorType.values.put(UUID2.enumValue, UUID2);
  163.             GeneratorType.values.put(GUID.enumValue, GUID);
  164.             GeneratorType.values.put(NATIVE.enumValue, NATIVE);
  165.             GeneratorType.values.put(ASSIGNED.enumValue, ASSIGNED);
  166.             GeneratorType.values.put(SELECT.enumValue, SELECT);
  167.             GeneratorType.values.put(FOREIGN.enumValue, FOREIGN);
  168.             GeneratorType.values.put(SEQUENCE_IDENTITY.enumValue, SEQUENCE_IDENTITY);
  169.         }
  170.         synchronized (GeneratorType.valueList)
  171.         {
  172.             GeneratorType.valueList.add(AUTO);
  173.             GeneratorType.valueList.add(IDENTITY);
  174.             GeneratorType.valueList.add(SEQUENCE);
  175.             GeneratorType.valueList.add(TABLE);
  176.             GeneratorType.valueList.add(INCREMENT);
  177.             GeneratorType.valueList.add(HILO);
  178.             GeneratorType.valueList.add(SEQHILO);
  179.             GeneratorType.valueList.add(UUID);
  180.             GeneratorType.valueList.add(UUID2);
  181.             GeneratorType.valueList.add(GUID);
  182.             GeneratorType.valueList.add(NATIVE);
  183.             GeneratorType.valueList.add(ASSIGNED);
  184.             GeneratorType.valueList.add(SELECT);
  185.             GeneratorType.valueList.add(FOREIGN);
  186.             GeneratorType.valueList.add(SEQUENCE_IDENTITY);
  187.             GeneratorType.valueList = Collections.unmodifiableList(valueList);
  188.         }
  189.         synchronized (GeneratorType.literals)
  190.         {
  191.             GeneratorType.literals.add(AUTO.enumValue);
  192.             GeneratorType.literals.add(IDENTITY.enumValue);
  193.             GeneratorType.literals.add(SEQUENCE.enumValue);
  194.             GeneratorType.literals.add(TABLE.enumValue);
  195.             GeneratorType.literals.add(INCREMENT.enumValue);
  196.             GeneratorType.literals.add(HILO.enumValue);
  197.             GeneratorType.literals.add(SEQHILO.enumValue);
  198.             GeneratorType.literals.add(UUID.enumValue);
  199.             GeneratorType.literals.add(UUID2.enumValue);
  200.             GeneratorType.literals.add(GUID.enumValue);
  201.             GeneratorType.literals.add(NATIVE.enumValue);
  202.             GeneratorType.literals.add(ASSIGNED.enumValue);
  203.             GeneratorType.literals.add(SELECT.enumValue);
  204.             GeneratorType.literals.add(FOREIGN.enumValue);
  205.             GeneratorType.literals.add(SEQUENCE_IDENTITY.enumValue);
  206.             GeneratorType.literals = Collections.unmodifiableList(literals);
  207.         }
  208.         synchronized (GeneratorType.names)
  209.         {
  210.             GeneratorType.names.add("AUTO");
  211.             GeneratorType.names.add("IDENTITY");
  212.             GeneratorType.names.add("SEQUENCE");
  213.             GeneratorType.names.add("TABLE");
  214.             GeneratorType.names.add("INCREMENT");
  215.             GeneratorType.names.add("HILO");
  216.             GeneratorType.names.add("SEQHILO");
  217.             GeneratorType.names.add("UUID");
  218.             GeneratorType.names.add("UUID2");
  219.             GeneratorType.names.add("GUID");
  220.             GeneratorType.names.add("NATIVE");
  221.             GeneratorType.names.add("ASSIGNED");
  222.             GeneratorType.names.add("SELECT");
  223.             GeneratorType.names.add("FOREIGN");
  224.             GeneratorType.names.add("SEQUENCE_IDENTITY");
  225.             GeneratorType.names = Collections.unmodifiableList(names);
  226.         }
  227.     }
  228.     // type-safe-enumeration-object java merge-point
  229. }