diff --git a/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java b/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java index 5b316cc09a5ab8388e7708cce882c1ce81776828..12c95d8e962ca068fd26357727d864d7af9ac1fc 100644 --- a/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java +++ b/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java @@ -481,13 +481,19 @@ public class OpenAPI2TDLTranslatorNext extends AbstractTranslator { EnumDataType t = getEnumDataTypeFor(name); if (t.getValue().isEmpty()) for (Object literal : schema.getEnum()) { - if (literal instanceof String) { - SimpleDataInstance literalData = tdlFactory.eINSTANCE.createSimpleDataInstance(); - literalData.setName(getCleanName((String) literal)); - literalData.setDataType(t); - t.getValue().add(literalData); - } - // TODO what if enum literals are not Strings? + String literalName; + if (literal instanceof String) + literalName = (String)literal; + else if (literal instanceof Integer) + literalName = name + "_" + ((Integer)literal).toString(); + else + // TODO what if enum literals are not Strings or Integers? + continue; + + SimpleDataInstance literalData = tdlFactory.eINSTANCE.createSimpleDataInstance(); + literalData.setName(getCleanName(literalName)); + literalData.setDataType(t); + t.getValue().add(literalData); } return t;