/*******************************************************************************
 *  Copyright 2017 Centre for Development of Advanced Computing(C-DAC), Pune
 *  
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *  
 *    http://www.apache.org/licenses/LICENSE-2.0
 *  
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 *******************************************************************************/
package cdac.medinfo.sdk.hl7282.utils;

/**
 * This Enum contains all Error Codes raised by SDK.
 */
public enum EnumErrorCode 
{
	/**
	 * Enum code for Message Accepted
	 */
	MESSAGE_ACCEPTED(0),
	/**
	 * Enum Code for Segment sequence error
	 */
	SEGMENT_SEQUENCE_ERROR(100),
	/**
	 * Required field missing
	 */
	REQUIRED_FIELD_MISSING(101),
	/**
	 * Data type error
	 */
	DATA_TYPE_ERROR(102),
	/**
	 * Table value not found
	 */
	TABLE_VALUE_NOT_FOUND(103),
	/**
	 * Unsupported message type
	 */
	UNSUPPORTED_MESSAGE_TYPE(200),
	/**
	 * Unsupported event code
	 */
	UNSUPPORTED_EVENT_CODE(201),
	/**
	 * Unsupported processing id
	 */
	UNSUPPORTED_PROCESSING_ID(202),
	/**
	 * Unsupported version id
	 */
	UNSUPPORTED_VERSION_ID(203),
	/**
	 * Application Error
	 */
	APPLICATION_ERROR(301);
	
	private int iValue;

	EnumErrorCode(int iValue)
	{
		this.iValue = iValue;
	}

	/**
	 * Returns the String value of this enum.
	 * @return String - string value of Eum Error Code.
	 */
	public int getValue()
	{
		return iValue;
	}
}
