
    
package performa.orm.types;

import java.util.*;
import oneit.utils.*;



/**
 * This class was generated using constGen.bat.
 * DO NOT MODIFY THIS CODE.
 * Edit the associated .xml file, and regenerate this file
 * constGen (directory) (file minus extension)
 * e.g. constGen C:\...\sql FieldType
 */

public class PlaceholderOptions extends AbstractEnumerated
{
    
    public static final EnumeratedFactory FACTORY_PlaceholderOptions = new PlaceholderOptionsFactory();
    
    public static final PlaceholderOptions FIRST_NAME = new PlaceholderOptions ("FIRST_NAME", "FIRST_NAME", "First Name", false);
    
    public static final PlaceholderOptions SURNAME = new PlaceholderOptions ("SURNAME", "SURNAME", "Surname", false);
    
    public static final PlaceholderOptions EMAIL_ADDRESS = new PlaceholderOptions ("EMAIL_ADDRESS", "EMAIL_ADDRESS", "Email Address", false);
    
    public static final PlaceholderOptions LOCATION = new PlaceholderOptions ("LOCATION", "LOCATION", "Location", false);
    
    public static final PlaceholderOptions HIRING_TEAM = new PlaceholderOptions ("HIRING_TEAM", "HIRING_TEAM", "Hiring Team", false);
    
    public static final PlaceholderOptions JOB_TITLE = new PlaceholderOptions ("JOB_TITLE", "JOB_TITLE", "Job Title", false);
    
    public static final PlaceholderOptions JOB_REFERENCE = new PlaceholderOptions ("JOB_REFERENCE", "JOB_REFERENCE", "Job Reference", false);
    
    public static final PlaceholderOptions JOB_LINK = new PlaceholderOptions ("JOB_LINK", "JOB_LINK", "Job Link", false);

    private static final PlaceholderOptions[] allPlaceholderOptionss =
        new PlaceholderOptions[] { FIRST_NAME,SURNAME,EMAIL_ADDRESS,LOCATION,HIRING_TEAM,JOB_TITLE,JOB_REFERENCE,JOB_LINK};


    private static PlaceholderOptions[] getAllPlaceholderOptionss ()
    {
        return allPlaceholderOptionss;
    }

    private transient String Placeholder;

    private PlaceholderOptions (String name, String value, String description, boolean disabled)
    {
        super (name, value, description, disabled);
    }

    public String getPlaceholder()
    {
    return Placeholder;
    }
    
    public static final Comparator COMPARE_BY_POSITION = new CompareEnumByPosition (allPlaceholderOptionss);



    static
    {
        defineAdditionalData ();
    }

    public boolean isEqual (PlaceholderOptions other)
    {
    return this.name.equals (other.name);
    }

    public Enumeration getAllInstances ()
    {
        return PlaceholderOptions.getAll ();
    }


    private Object readResolve() throws java.io.ObjectStreamException
    {
        return PlaceholderOptions.forName (this.name);
    }


    public EnumeratedFactory getFactory ()
    {
        return FACTORY_PlaceholderOptions;
    }

    public static PlaceholderOptions forName (String name)
    {
        if (name == null) { return null; }

        PlaceholderOptions[] all = getAllPlaceholderOptionss();
        int enumIndex = AbstractEnumerated.getIndexForName (all, name);

        return all[enumIndex];
    }


    public static PlaceholderOptions forValue (String value)
    {
        if (value == null) { return null; }

        PlaceholderOptions[] all = getAllPlaceholderOptionss();
        int enumIndex = AbstractEnumerated.getIndexForValue (getAllPlaceholderOptionss (), value);

        return all[enumIndex];
    }


    public static java.util.Enumeration getAll ()
    {
        return AbstractEnumerated.getAll (getAllPlaceholderOptionss());
    }
    
    
    public static PlaceholderOptions[] getPlaceholderOptionsArray ()
    {
        return (PlaceholderOptions[])getAllPlaceholderOptionss().clone ();
    }


    public static void defineAdditionalData ()
    {
        FIRST_NAME.Placeholder = "$firstName";
        SURNAME.Placeholder = "$surname";
        EMAIL_ADDRESS.Placeholder = "$emailAddress";
        LOCATION.Placeholder = "$location";
        HIRING_TEAM.Placeholder = "$hiringTeam";
        JOB_TITLE.Placeholder = "$jobTitle";
        JOB_REFERENCE.Placeholder = "$jobReference";
        JOB_LINK.Placeholder = "$jobLink";
        
    }


    static class PlaceholderOptionsFactory implements EnumeratedFactory
    {
        public AbstractEnumerated getForName (String name)
        {
            return PlaceholderOptions.forName (name);
        }

        public AbstractEnumerated getForValue (String name)
        {
            return PlaceholderOptions.forValue (name);
        }

        public Enumeration getAll ()
        {
            return PlaceholderOptions.getAll ();
        }
    }


    public Map getAdditionalAttributes ()
    {
        Map attribs = new HashMap ();

        attribs.put ("Placeholder", ArrayFormatter.toObject(getPlaceholder()));
        
        return attribs;
    }
}

