/******************************************************************************* * Copyright © 2011, 2013 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation * *******************************************************************************/ package org.eclipse.edt.compiler.internal.enumerations; import java.util.Collection; import java.util.HashMap; import org.eclipse.edt.compiler.internal.IEGLConstants; /** * @author svihovec * */ public class EGLColorKindEnumeration extends EGLEnumeration { private static final EGLColorKindEnumeration INSTANCE = new EGLColorKindEnumeration(); public static final EGLEnumerationValue BLACK = new EGLEnumerationValue(IEGLConstants.MNEMONIC_BLACK, IEGLConstants.COLORKIND_BLACK); public static final EGLEnumerationValue BLUE = new EGLEnumerationValue(IEGLConstants.MNEMONIC_BLUE, IEGLConstants.COLORKIND_BLUE); public static final EGLEnumerationValue CYAN = new EGLEnumerationValue(IEGLConstants.MNEMONIC_CYAN, IEGLConstants.COLORKIND_CYAN); public static final EGLEnumerationValue DEFAULTCOLOR = new EGLEnumerationValue(IEGLConstants.MNEMONIC_DEFAULTCOLOR, IEGLConstants.COLORKIND_DEFAULTCOLOR); public static final EGLEnumerationValue GREEN = new EGLEnumerationValue(IEGLConstants.MNEMONIC_GREEN, IEGLConstants.COLORKIND_GREEN); public static final EGLEnumerationValue MAGENTA = new EGLEnumerationValue(IEGLConstants.MNEMONIC_MAGENTA, IEGLConstants.COLORKIND_MAGENTA); public static final EGLEnumerationValue RED = new EGLEnumerationValue(IEGLConstants.MNEMONIC_RED, IEGLConstants.COLORKIND_RED); public static final EGLEnumerationValue WHITE = new EGLEnumerationValue(IEGLConstants.MNEMONIC_WHITE, IEGLConstants.COLORKIND_WHITE); public static final EGLEnumerationValue YELLOW = new EGLEnumerationValue(IEGLConstants.MNEMONIC_YELLOW, IEGLConstants.COLORKIND_YELLOW); private static final HashMap valuesMap = new HashMap(); static{ valuesMap.put(BLACK.getName().toUpperCase().toLowerCase(), BLACK); valuesMap.put(BLUE.getName().toUpperCase().toLowerCase(), BLUE); valuesMap.put(CYAN.getName().toUpperCase().toLowerCase(), CYAN); valuesMap.put(DEFAULTCOLOR.getName().toUpperCase().toLowerCase(), DEFAULTCOLOR); valuesMap.put(GREEN.getName().toUpperCase().toLowerCase(), GREEN); valuesMap.put(MAGENTA.getName().toUpperCase().toLowerCase(), MAGENTA); valuesMap.put(RED.getName().toUpperCase().toLowerCase(), RED); valuesMap.put(WHITE.getName().toUpperCase().toLowerCase(), WHITE); valuesMap.put(YELLOW.getName().toUpperCase().toLowerCase(), YELLOW); } private EGLColorKindEnumeration() {} public static EGLColorKindEnumeration getInstance(){ return INSTANCE; } /* (non-Javadoc) * @see org.eclipse.edt.compiler.internal.enumerations.EGLEnumeration#getName() */ public String getName() { return COLORKIND_STRING; } /* (non-Javadoc) * @see org.eclipse.edt.compiler.internal.enumerations.EGLEnumeration#getType() */ public int getType() { return IEGLConstants.ENUMERATION_COLORKIND; } /* (non-Javadoc) * @see org.eclipse.edt.compiler.internal.enumerations.EGLEnumeration#getValue(java.lang.String) */ public EGLEnumerationValue getValue(String valueName) { return (EGLEnumerationValue)valuesMap.get(valueName.toUpperCase().toLowerCase()); } /* (non-Javadoc) * @see org.eclipse.edt.compiler.internal.enumerations.EGLEnumeration#getValues() */ public Collection getValues() { return valuesMap.values(); } public boolean isResolvable() { return true; } }