All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ccsds.moims.mo.common.configuration.structures.ConfigurationType Maven / Gradle / Ivy

package org.ccsds.moims.mo.common.configuration.structures;

/**
 * Enumeration class for ConfigurationType.
 */
public final class ConfigurationType extends org.ccsds.moims.mo.mal.structures.Enumeration {

    /**
     * Short form for type.
     */
    @Deprecated
    private static final Integer TYPE_SHORT_FORM = 4;
    /**
     * Absolute short form for type. This will be replaced by the TypeId.
     */
    @Deprecated
    public static final Long SHORT_FORM = 844446421745668L;
    private static final long serialVersionUID = 844446421745668L;
    /**
     * Absolute short form for type.
     */
    public static final org.ccsds.moims.mo.mal.TypeId TYPE_ID = new org.ccsds.moims.mo.mal.TypeId(SHORT_FORM);

    /**
     * Enumeration ordinal index for value PROVIDER.
     */
    public static final int _PROVIDER_INDEX = 0;

    /**
     * Enumeration numeric value for value PROVIDER.
     */
    public static final org.ccsds.moims.mo.mal.structures.UInteger PROVIDER_NUM_VALUE = new org.ccsds.moims.mo.mal.structures.UInteger(1);

    /**
     * Enumeration singleton for value PROVIDER.
     */
    public static final org.ccsds.moims.mo.common.configuration.structures.ConfigurationType PROVIDER = new org.ccsds.moims.mo.common.configuration.structures.ConfigurationType(org.ccsds.moims.mo.common.configuration.structures.ConfigurationType._PROVIDER_INDEX);

    /**
     * Enumeration ordinal index for value SERVICE.
     */
    public static final int _SERVICE_INDEX = 1;

    /**
     * Enumeration numeric value for value SERVICE.
     */
    public static final org.ccsds.moims.mo.mal.structures.UInteger SERVICE_NUM_VALUE = new org.ccsds.moims.mo.mal.structures.UInteger(2);

    /**
     * Enumeration singleton for value SERVICE.
     */
    public static final org.ccsds.moims.mo.common.configuration.structures.ConfigurationType SERVICE = new org.ccsds.moims.mo.common.configuration.structures.ConfigurationType(org.ccsds.moims.mo.common.configuration.structures.ConfigurationType._SERVICE_INDEX);

    /**
     * Set of enumeration instances.
     */
    private static final org.ccsds.moims.mo.common.configuration.structures.ConfigurationType[] _ENUMERATIONS = {PROVIDER, SERVICE};

    /**
     * Set of enumeration string values.
     */
    private static final String[] _ENUMERATION_NAMES = {"PROVIDER", "SERVICE"};

    /**
     * Set of enumeration values.
     */
    private static final org.ccsds.moims.mo.mal.structures.UInteger[] _ENUMERATION_NUMERIC_VALUES = {PROVIDER_NUM_VALUE, SERVICE_NUM_VALUE};

    /**
     * 
     * @param ordinal null.
     */
    private ConfigurationType(int ordinal) {
        super(ordinal);
    }

    /**
     * Returns a String object representing this type"s value.
     * 
     * @return a string representation of the value of this object.
     */
    public String toString() {
        switch (getOrdinal()) {
          case _PROVIDER_INDEX:
            return "PROVIDER";
          case _SERVICE_INDEX:
            return "SERVICE";
          default:
            throw new RuntimeException("Unknown ordinal!");
        }
    }

    /**
     * Returns the enumeration element represented by the supplied string, or 
     * null if not matched. 
     * 
     * @param s s The string to search for.
     * @return The matched enumeration element, or null if not matched.
     */
    public static org.ccsds.moims.mo.common.configuration.structures.ConfigurationType fromString(String s) {
        for (int i = 0; i < _ENUMERATION_NAMES.length; i++) {
          if (_ENUMERATION_NAMES[i].equals(s)) {
            return _ENUMERATIONS[i];
          }
        }
        return null;
    }

    /**
     * Returns the nth element of the enumeration.
     * 
     * @param ordinal ordinal The index of the enumeration element to return. 
     * @return The matched enumeration element.
     */
    public static org.ccsds.moims.mo.common.configuration.structures.ConfigurationType fromOrdinal(int ordinal) {
        return _ENUMERATIONS[ordinal];
    }

    /**
     * Returns the enumeration element represented by the supplied numeric value, 
     * or null if not matched. 
     * 
     * @param value value The numeric value to search for.
     * @return The matched enumeration value, or null if not matched.
     */
    public static org.ccsds.moims.mo.common.configuration.structures.ConfigurationType fromNumericValue(org.ccsds.moims.mo.mal.structures.UInteger value) {
        for (int i = 0; i < _ENUMERATION_NUMERIC_VALUES.length; i++) {
          if (_ENUMERATION_NUMERIC_VALUES[i].equals(value)) {
            return _ENUMERATIONS[i];
          }
        }
        return null;
    }

    /**
     * Returns the index of the enumerated item as a {@code UOctet}.
     * 
     * @return the index of the enumerated item as a {@code UOctet}.
     */
    public org.ccsds.moims.mo.mal.structures.UOctet getOrdinalUOctet() {
        return new org.ccsds.moims.mo.mal.structures.UOctet(ordinal.shortValue());
    }

    /**
     * Returns the numeric value of the enumeration element.
     * 
     * @return The numeric value.
     */
    public org.ccsds.moims.mo.mal.structures.UInteger getNumericValue() {
        return _ENUMERATION_NUMERIC_VALUES[ordinal];
    }

    /**
     * Returns an instance of this type using the first element of the enumeration. 
     * It is a generic factory method but just returns an existing element of 
     * the enumeration as new values of enumerations cannot be created at runtime. 
     * 
     * @return The first element of the enumeration.
     */
    public org.ccsds.moims.mo.mal.structures.Element createElement() {
        return _ENUMERATIONS[0];
    }

    /**
     * Encodes the value of this object using the provided MALEncoder.
     * 
     * @param encoder The encoder to use for encoding.
     * @throws org.ccsds.moims.mo.mal.MALException if any encoding errors are 
     * detected. 
     */
    public void encode(org.ccsds.moims.mo.mal.MALEncoder encoder) throws org.ccsds.moims.mo.mal.MALException {
        encoder.encodeUOctet(new org.ccsds.moims.mo.mal.structures.UOctet(ordinal.shortValue()));
    }

    /**
     * Decodes the value of this object using the provided MALDecoder.
     * 
     * @param decoder The decoder to use for decoding.
     * @return Returns this object.
     * @throws org.ccsds.moims.mo.mal.MALException if any decoding errors are 
     * detected. 
     */
    public org.ccsds.moims.mo.mal.structures.Element decode(org.ccsds.moims.mo.mal.MALDecoder decoder) throws org.ccsds.moims.mo.mal.MALException {
        return fromOrdinal(decoder.decodeUOctet().getValue());
    }

    /**
     * Returns the absolute short form of this type.
     * 
     * @return The absolute short form of this type.
     */
    public Long getShortForm() {
        return SHORT_FORM;
    }

    /**
     * Returns the type short form of this type which is unique to the area/service 
     * it is defined in but not unique across all types. 
     * 
     * @return The type short form of this type.
     */
    public Integer getTypeShortForm() {
        return TYPE_SHORT_FORM;
    }

    /**
     * Returns the area number of this type.
     * 
     * @return The area number of this type.
     */
    public org.ccsds.moims.mo.mal.structures.UShort getAreaNumber() {
        return org.ccsds.moims.mo.common.CommonHelper.COMMON_AREA_NUMBER;
    }

    /**
     * Returns the area version of this type.
     * 
     * @return The area number of this type.
     */
    public org.ccsds.moims.mo.mal.structures.UOctet getAreaVersion() {
        return org.ccsds.moims.mo.common.CommonHelper.COMMON_AREA_VERSION;
    }

    /**
     * Returns the service number of this type.
     * 
     * @return The service number of this type.
     */
    public org.ccsds.moims.mo.mal.structures.UShort getServiceNumber() {
        return org.ccsds.moims.mo.common.configuration.ConfigurationServiceInfo.CONFIGURATION_SERVICE_NUMBER;
    }

    /**
     * Returns the TypeId of this element.
     * 
     * @return The TypeId of this element.
     */
    public org.ccsds.moims.mo.mal.TypeId getTypeId() {
        return TYPE_ID;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy