
    
package performa.orm.types;

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



/**
 * 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 FactorClass extends AbstractEnumerated
{
    
    public static final EnumeratedFactory FACTORY_FactorClass = new FactorClassFactory();
    
    public static final FactorClass CARDRV = new FactorClass ("CARDRV", "CARDRV", "Career Drives", false);
    
    public static final FactorClass CONFL = new FactorClass ("CONFL", "CONFL", "Conflict Management Style", false);
    
    public static final FactorClass COPING = new FactorClass ("COPING", "COPING", "Coping", false);
    
    public static final FactorClass INTPER = new FactorClass ("INTPER", "INTPER", "Interpersonal", false);
    
    public static final FactorClass LEADINFL = new FactorClass ("LEADINFL", "LEADINFL", "Leadership and Influence", false);
    
    public static final FactorClass NEGOT = new FactorClass ("NEGOT", "NEGOT", "Negotiation Style", false);
    
    public static final FactorClass OPER = new FactorClass ("OPER", "OPER", "Operating", false);
    
    public static final FactorClass PEOPLE = new FactorClass ("PEOPLE", "PEOPLE", "People Orientation", false);
    
    public static final FactorClass POWERINFL = new FactorClass ("POWERINFL", "POWERINFL", "Power and Influence", false);
    
    public static final FactorClass PROBLEM = new FactorClass ("PROBLEM", "PROBLEM", "Problem Solving", false);
    
    public static final FactorClass STRATEGIC = new FactorClass ("STRATEGIC", "STRATEGIC", "Strategic Orientation", false);
    
    public static final FactorClass VALUES = new FactorClass ("VALUES", "VALUES", "Values", false);
    
    public static final FactorClass WORKSTYLE = new FactorClass ("WORKSTYLE", "WORKSTYLE", "Workplace Management", false);
    
    public static final FactorClass CONSISTENCY = new FactorClass ("CONSISTENCY", "CONSISTENCY", "Consistency", false);
    
    public static final FactorClass HIGHQUAL = new FactorClass ("HIGHQUAL", "HIGHQUAL", "Highest Quality", false);
    
    public static final FactorClass ACTINTER = new FactorClass ("ACTINTER", "ACTINTER", "Act Interdependently", false);
    
    public static final FactorClass INNOVSPIR = new FactorClass ("INNOVSPIR", "INNOVSPIR", "Innovative Spirit", false);
    
    public static final FactorClass EMPATHRESP = new FactorClass ("EMPATHRESP", "EMPATHRESP", "Empathy & Respect", false);
    
    public static final FactorClass LEADER = new FactorClass ("LEADER", "LEADER", "Leadership", false);
    
    public static final FactorClass OTHERS = new FactorClass ("OTHERS", "OTHERS", "Other Factors", false);
    
    public static final FactorClass ANSSCALE = new FactorClass ("ANSSCALE", "ANSSCALE", "Unusual Answers Score", false);
    
    public static final FactorClass LEVINNOV = new FactorClass ("LEVINNOV", "LEVINNOV", "Leverage Innovation", false);
    
    public static final FactorClass LEADCOUR = new FactorClass ("LEADCOUR", "LEADCOUR", "Lead Courageously", false);
    
    public static final FactorClass SOUNDDEC = new FactorClass ("SOUNDDEC", "SOUNDDEC", "Make Sound Decisions", false);
    
    public static final FactorClass DRVINNIT = new FactorClass ("DRVINNIT", "DRVINNIT", "Show Drive And Initiative", false);
    
    public static final FactorClass FOSTCOMM = new FactorClass ("FOSTCOMM", "FOSTCOMM", "Foster Open Communication", false);
    
    public static final FactorClass PROMCOLL = new FactorClass ("PROMCOLL", "PROMCOLL", "Promote Collaboration and Team", false);
    
    public static final FactorClass SHOWADAP = new FactorClass ("SHOWADAP", "SHOWADAP", "Show Adaptability", false);
    
    public static final FactorClass ENGINSP = new FactorClass ("ENGINSP", "ENGINSP", "Engage And Inspire", false);
    
    public static final FactorClass INFLUENCING = new FactorClass ("INFLUENCING", "INFLUENCING", "Influencing", false);
    
    public static final FactorClass CONSGRP = new FactorClass ("CONSGRP", "CONSGRP", "Conscientious Group", false);
    
    public static final FactorClass EMOTSTAB = new FactorClass ("EMOTSTAB", "EMOTSTAB", "Emotional Stability", false);
    
    public static final FactorClass SOCIALGRP = new FactorClass ("SOCIALGRP", "SOCIALGRP", "Social Group", false);

    private static final FactorClass[] allFactorClasss =
        new FactorClass[] { CARDRV,CONFL,COPING,INTPER,LEADINFL,NEGOT,OPER,PEOPLE,POWERINFL,PROBLEM,STRATEGIC,VALUES,WORKSTYLE,CONSISTENCY,HIGHQUAL,ACTINTER,INNOVSPIR,EMPATHRESP,LEADER,OTHERS,ANSSCALE,LEVINNOV,LEADCOUR,SOUNDDEC,DRVINNIT,FOSTCOMM,PROMCOLL,SHOWADAP,ENGINSP,INFLUENCING,CONSGRP,EMOTSTAB,SOCIALGRP};


    private static FactorClass[] getAllFactorClasss ()
    {
        return allFactorClasss;
    }

    private transient Integer SortOrder;

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

    public Integer getSortOrder()
    {
    return SortOrder;
    }
    
    public static final Comparator COMPARE_BY_POSITION = new CompareEnumByPosition (allFactorClasss);



    static
    {
        defineAdditionalData ();
    }

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

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


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


    public EnumeratedFactory getFactory ()
    {
        return FACTORY_FactorClass;
    }

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

        FactorClass[] all = getAllFactorClasss();
        int enumIndex = AbstractEnumerated.getIndexForName (all, name);

        return all[enumIndex];
    }


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

        FactorClass[] all = getAllFactorClasss();
        int enumIndex = AbstractEnumerated.getIndexForValue (getAllFactorClasss (), value);

        return all[enumIndex];
    }


    public static java.util.Enumeration getAll ()
    {
        return AbstractEnumerated.getAll (getAllFactorClasss());
    }
    
    
    public static FactorClass[] getFactorClassArray ()
    {
        return (FactorClass[])getAllFactorClasss().clone ();
    }


    public static void defineAdditionalData ()
    {
        CARDRV.SortOrder = 2;
        CONFL.SortOrder = 3;
        COPING.SortOrder = 5;
        INTPER.SortOrder = 9;
        LEADINFL.SortOrder = 11;
        NEGOT.SortOrder = 12;
        OPER.SortOrder = 13;
        PEOPLE.SortOrder = 15;
        POWERINFL.SortOrder = 16;
        PROBLEM.SortOrder = 17;
        STRATEGIC.SortOrder = 18;
        VALUES.SortOrder = 19;
        WORKSTYLE.SortOrder = 20;
        CONSISTENCY.SortOrder = 100;
        HIGHQUAL.SortOrder = 110;
        ACTINTER.SortOrder = 120;
        INNOVSPIR.SortOrder = 130;
        EMPATHRESP.SortOrder = 140;
        LEADER.SortOrder = 150;
        OTHERS.SortOrder = 160;
        ANSSCALE.SortOrder = 170;
        LEVINNOV.SortOrder = 200;
        LEADCOUR.SortOrder = 210;
        SOUNDDEC.SortOrder = 220;
        DRVINNIT.SortOrder = 230;
        FOSTCOMM.SortOrder = 240;
        PROMCOLL.SortOrder = 250;
        SHOWADAP.SortOrder = 260;
        ENGINSP.SortOrder = 270;
        INFLUENCING.SortOrder = 280;
        CONSGRP.SortOrder = 290;
        EMOTSTAB.SortOrder = 300;
        SOCIALGRP.SortOrder = 310;
        
    }


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

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

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


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

        attribs.put ("SortOrder", ArrayFormatter.toObject(getSortOrder()));
        
        return attribs;
    }
    
    public static class FactorClassPipeLineFactory<From, Me extends FactorClass> extends AbstractEnumerated.EnumPipeLine<From, Me>
    {
        public <Prev> FactorClassPipeLineFactory (PipeLine<From, Prev> pipeLine, Pipe<Prev, Me> nextPipe)
        {
            super (pipeLine, nextPipe);
        }
        
        public FactorClassPipeLineFactory (From seed)
        {
            super(seed);
        }

        public FactorClassPipeLineFactory (Collection<From> seed)
        {
            super(seed);
        }
        
        public PipeLine<From, ? extends Object> to(String name)
        {
            if (name.equals ("SortOrder"))
            {
                return toSortOrder ();
            }
            
            return super.to(name);
        }
        
        
        public PipeLine<From, Integer> toSortOrder () { return pipe(new EnumAttributePipe<Me, Integer>("SortOrder")); }
    }
}

