public void write(final Type type, final EnumConstraint<String> constraint) throws IOException { JavaWriter jw = javaClassWriter.getOutput(); jw.emitPackage(options.getPackageName()); javaClassWriter.writeImports(Collections.<String>emptySet()); if (type.getDescription() != null) { jw.emitJavadoc(type.getDescription()); } String enumName = Names.capitalize(type.getCanonicalName()); jw.beginType(enumName, "enum", EnumSet.of(PUBLIC)); Iterator<String> valuesIterator = constraint.getValues().iterator(); while (valuesIterator.hasNext()) { String value = valuesIterator.next(); javaClassWriter.writeEnumValue(value, !valuesIterator.hasNext()); } jw.endType(); }