ModellingManagerImpl modellingManager = new ModellingManagerImpl();
OfflineParserProxy parserProxy = new OfflineParserProxy();
parserProxy.setModellingManager(modellingManager);
ModelledResourceManagerImpl result = new ModelledResourceManagerImpl();
result.setModellingManager(modellingManager);
result.setParserProxy(parserProxy);
List<ServiceModeller> plugins = new ArrayList<ServiceModeller>();
ClassLoader cl = OfflineModellingFactory.class.getClassLoader();
try {
Enumeration<URL> e = cl.getResources(
"META-INF/services/" + ServiceModeller.class.getName());
while(e.hasMoreElements()) {
BufferedReader reader = new BufferedReader(new InputStreamReader(
e.nextElement().openStream()));
try {
plugins.add((ServiceModeller) Class.forName(reader.readLine(), true, cl).newInstance());
} catch (Exception e1) {
e1.printStackTrace(System.err);
}
}
} catch (IOException e) {
e.printStackTrace(System.err);
}
result.setModellingPlugins(plugins);
return result;
}