<%
GenEnum genEnum = parameter;
targetPath = genEnum.getGenModel().getModelDirectory();
packageName = genEnum.getGenPackage().getInterfacePackageName();
className = genEnum.getName();
%>