if ( this.semanticModules == null ) {
this.semanticModules = new SemanticModules();
this.semanticModules.addSemanticModule( new ChangeSetSemanticModule() );
}
XmlChangeSetReader reader = new XmlChangeSetReader( this.semanticModules,
null,
this.validationTimeout );
if ( resource instanceof ClassPathResource ) {
reader.setClassLoader( ((ClassPathResource) resource).getClassLoader(),
null );
} else {
reader.setClassLoader( ((InternalRuleBase) (((KnowledgeBaseImpl) this.kbase).ruleBase)).getConfiguration().getClassLoader(),
null );
}
ChangeSet changeSet = null;
Reader resourceReader = null;
try {
resourceReader = resource.getReader();
changeSet = reader.read( resourceReader );
} catch ( Exception e ) {
this.listener.exception( new RuntimeException(
"Unable to parse ChangeSet",
e ) );
} finally {