40package com.jogamp.gluegen;
51 return Character.toUpperCase(
string.charAt(0)) +
string.substring(1);
58 return Character.toLowerCase(
string.charAt(0)) +
string.substring(1);
66 final String path = packageName.replace(
'.', File.separatorChar);
77 w.print(
"/* !---- DO NOT EDIT: This file autogenerated ");
78 if (generator !=
null) {
84 w.print((
new Date()).toString());
85 w.println(
" ----! */");
86 if(
null != customLine && customLine.length() > 0 ) {
89 w.println(
" ----! */");
98 final String packageName,
99 final String className,
100 final boolean isClassNotInterface,
101 final List<String> imports,
102 final String[] accessModifiers,
103 final String[] interfaces,
104 final String classExtended,
106 w.println(
"package " + packageName +
";");
109 for (
final String imp : imports) {
117 if (classDocComment !=
null) {
118 classDocComment.emit(w);
121 for (
int i = 0; accessModifiers !=
null && i < accessModifiers.length; ++i) {
122 w.print(accessModifiers[i]);
126 if (isClassNotInterface) {
130 if (classExtended !=
null) {
132 w.print(classExtended);
136 if (classExtended !=
null) {
137 throw new IllegalArgumentException(
"Autogenerated interface class " + className +
" cannot extend class " + classExtended);
139 w.print(
"interface ");
144 for (
int i = 0; interfaces !=
null && i < interfaces.length; ++i) {
146 w.print(isClassNotInterface ?
"implements " :
"extends ");
148 w.print(interfaces[i]);
149 if (i < interfaces.length - 1) {
162 public void emit(PrintWriter output);
static String decapitalizeString(final String string)
Converts first letter to lower case.
static void emitAutogeneratedWarning(final PrintWriter w, final Object generator, final String customLine)
static void emitJavaHeaders(final PrintWriter w, final String packageName, final String className, final boolean isClassNotInterface, final List< String > imports, final String[] accessModifiers, final String[] interfaces, final String classExtended, final EmissionCallback classDocComment)
Emit the opening headers for one java class/interface file.
static String packageAsPath(final String packageName)
Given a java package name (e.g., "java.lang"), return the package as a directory path (i....
static String capitalizeString(final String string)
Converts first letter to upper case.
A class that emits source code of some time when activated.
void emit(PrintWriter output)
Emit appropriate source code through the given writer.