Index: Tools/impl/JavaExport/EnumExporter.cls.xml =================================================================== diff -u -r894 -r895 --- Tools/impl/JavaExport/EnumExporter.cls.xml (.../EnumExporter.cls.xml) (revision 894) +++ Tools/impl/JavaExport/EnumExporter.cls.xml (.../EnumExporter.cls.xml) (revision 895) @@ -9,19 +9,34 @@ Set MagazijnConstructors = ##class(%ListOfDataTypes).%New() Set MapValues = ##class(%ListOfDataTypes).%New() + #dim ValueList As %String = $Parameter(Klasse.Name,"VALUELIST") + #dim Seperator As %String = $Extract(ValueList) + #dim AantalValues As %Integer = ($Length(ValueList,Seperator)-1) + + #dim DisplayValueList As %String = $Parameter(Klasse.Name,"DISPLAYLIST") + Set Seperator = $Extract(DisplayValueList) + #dim AantalDisplayValues As %Integer = ($Length(DisplayValueList,Seperator)-1) + #dim MethodIt As TECH.Iterator = ##class(TECH.ListIterator).%New(Klasse.Methods) While MethodIt.HasNext(){ #dim Method As %Dictionary.CompiledMethod = MethodIt.Next() - If Method.ClassMethod && ('Method.Private) && ('Method.Abstract) && (Method.Origin = Klasse.Name){ - + If Method.ClassMethod && ('Method.Private) && ('Method.Abstract) && (Method.Origin = Klasse.Name){ + #dim Value As %String = $ZOBJCLASSMETHOD(Klasse.Name,Method.Name) #dim DisplayValue As %String = $ZOBJCLASSMETHOD(Klasse.Name,"LogicalToDisplay",Value) Do MagazijnConstructors.Insert(Method.Name_"("""_Value_""","""_DisplayValue_""")") Do MapValues.Insert("put("""_Value_""", "_Method.Name_");") } } + If AantalValues '= MapValues.Count() { + Write !,"Er is een verschillend aantal items in VALUELIST ("_AantalValues_") dan dat er methods ("_MapValues.Count()_") zijn : '"_Klasse.Name_"'.",! + } + If AantalValues '= AantalDisplayValues { + Write !,"Er is een verschillend aantal items in VALUELIST ("_AantalValues_") dan in DISPLAYLIST ("_AantalDisplayValues_") : '"_Klasse.Name_"'.",! + } + Do Stream.WriteLine("import java.util.HashMap;") Do Stream.WriteLine("") Do Stream.WriteLine("public enum "_..GeefKlasseNaam(Klasse)_" {")