/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.utils.common.channel.legacy; import java.io.Serializable; /** * Different types of channels. * * @author Markus Kunde */ @Deprecated public enum ChannelDataTypes { /** Data content is String. */ STRING, /** Data content is Double. */ DOUBLE, /** Data content is Long. */ LONG, /** Data content is Integer. */ INTEGER, /** Data content is Boolean. */ BOOLEAN, /** Data content is Object implements Serializable. */ SERIALIZABLE, /** Data content is DataManagementFileReference. */ FILEREFERENCE, /** Data content is Variant Array. */ VARIANTARRAY; @Override public String toString() { //only capitalize the first letter String s = super.toString(); return s.substring(0, 1) + s.substring(1).toLowerCase(); } public static String[] getTypeNames() { return new String[] { ChannelDataTypes.STRING.toString(), ChannelDataTypes.DOUBLE.toString(), ChannelDataTypes.LONG.toString(), ChannelDataTypes.INTEGER.toString(), ChannelDataTypes.BOOLEAN.toString(), ChannelDataTypes.SERIALIZABLE.toString(), ChannelDataTypes.FILEREFERENCE.toString(), ChannelDataTypes.VARIANTARRAY.toString()}; } /** * Gives back the enum value of a string. * * @param s string representation or class name to convert to enum * @return enum value or null if not matching */ public static ChannelDataTypes toEnum(final String s) { ChannelDataTypes resType = null; if (s.equals(ChannelDataTypes.STRING.toString()) || s.equals(String.class.getName())) { resType = STRING; } else if (s.equals(ChannelDataTypes.DOUBLE.toString()) || s.equals(Double.class.getName())) { resType = DOUBLE; } else if (s.equals(ChannelDataTypes.LONG.toString()) || s.equals(Long.class.getName())) { resType = LONG; } else if (s.equals(ChannelDataTypes.INTEGER.toString()) || s.equals(Integer.class.getName())) { resType = INTEGER; } else if (s.equals(ChannelDataTypes.BOOLEAN.toString()) || s.equals(Boolean.class.getName())) { resType = BOOLEAN; } else if (s.equals(ChannelDataTypes.SERIALIZABLE.toString()) || s.equals(Serializable.class.getName())) { resType = SERIALIZABLE; } else if (s.equals(ChannelDataTypes.FILEREFERENCE.toString()) || s.equals(DataManagementFileReference.class.getName())) { resType = FILEREFERENCE; } else if (s.equals(ChannelDataTypes.VARIANTARRAY.toString()) || s.equals(VariantArray.class.getName())) { resType = VARIANTARRAY; } return resType; } /** * Returns java class names of Excel data types. * * @param edt specific ExcelDataTypes * @return java class name */ public static String toClassName(ChannelDataTypes edt) { String name = null; switch(edt) { case STRING: name = String.class.getName(); break; case DOUBLE: name = Double.class.getName(); break; case LONG: name = Long.class.getName(); break; case INTEGER: name = Integer.class.getName(); break; case BOOLEAN: name = Boolean.class.getName(); break; case SERIALIZABLE: name = Serializable.class.getName(); break; case FILEREFERENCE: name = DataManagementFileReference.class.getName(); break; case VARIANTARRAY: name = VariantArray.class.getName(); break; default: break; } return name; } }