switch (process.getBpelVersion()) {
case BPEL20:
compiler = new BpelCompiler20();
compiler.setResourceFinder(wf);
if (_bpel11wsdl != null) {
CompilationMessage cmsg = __cmsgs.warnWsdlUriIgnoredFor20Process();
logCompilationMessage(cmsg);
}
break;
case BPEL20_DRAFT:
compiler = new BpelCompiler20Draft();
compiler.setResourceFinder(wf);
if (_bpel11wsdl != null) {
CompilationMessage cmsg = __cmsgs.warnWsdlUriIgnoredFor20Process();
logCompilationMessage(cmsg);
}
break;
case BPEL11:
compiler = new BpelCompiler11();
compiler.setResourceFinder(wf);
if (_bpel11wsdl != null) {
compiler.addWsdlImport(new URI(_bpelFile.getName()), _bpel11wsdl,null);
} else {
CompilationMessage cmsg = __cmsgs.errBpel11RequiresWsdl();
logCompilationMessage(cmsg);
this.invalidate();
throw new CompilationException(cmsg);
}
break;
default:
CompilationMessage cmsg = __cmsgs.errUnrecognizedBpelVersion();
logCompilationMessage(cmsg);
this.invalidate();
throw new CompilationException(cmsg);
}
compiler.setCompileListener(clistener);
if (_compileProperties != null) {
if (_compileProperties.get(PROCESS_CUSTOM_PROPERTIES) != null)
compiler.setCustomProperties((Map<QName, Node>) _compileProperties.get(PROCESS_CUSTOM_PROPERTIES));
}
if (_extensionValidators != null) {
compiler.setExtensionValidators(_extensionValidators);
}
} catch (CompilationException ce) {
this.invalidate();
throw ce;
} catch (Exception ex) {
CompilationMessage cmsg = __cmsgs.errBpelParseErr();
logCompilationMessage(cmsg);
this.invalidate();
throw new CompilationException(cmsg,ex);
}