this.classLoader = classLoader;
}
public CompileResults compileSchemas() {
SchemaCompiler compiler = createSchemaCompiler();
// our hashcode + timestamp ought to be enough.
String stem = toString() + "-" + System.currentTimeMillis();
File src = new File(tmpdir, stem + "-src");
if (!src.mkdir()) {
throw new IllegalStateException("Unable to create working directory " + src.getPath());
}
boolean first = true;
StringBuilder sb = new StringBuilder();
for (String rawUrl : getSchemaUrls()) {
String schemaUrl = resolveUrl(rawUrl);
InnerErrorListener listener = new InnerErrorListener(schemaUrl);
Object elForRun = ReflectionInvokationHandler
.createProxyWrapper(listener,
JAXBUtils.getParamClass(compiler, "setErrorListener"));
compiler.setErrorListener(elForRun);
compiler.parseSchema(new InputSource(schemaUrl));
S2JJAXBModel intermediateModel = compiler.bind();
listener.throwException();
JCodeModel codeModel = intermediateModel.generateCode(null, elForRun);
for (Iterator<JPackage> packages = codeModel.packages(); packages.hasNext(); ) {