protected ICacheableModel doLoadModel(String name, String[] imports, ResourceInfo info,
ClassLoader classloader, Object context) throws Exception
{
if (name != null && name.endsWith(".bpmn2"))
{
MBpmnModel model = SBpmnModelReader.readModel(new File(info.getFilename()), null, classloader);
IResourceIdentifier rid = (IResourceIdentifier)((Object[])context)[0];
if(rid==null)
{
String src = SUtil.getCodeSource(info.getFilename(), ((ModelInfo)model.getModelInfo()).getPackage());
URL url = SUtil.toURL(src);
rid = new ResourceIdentifier(new LocalResourceIdentifier((IComponentIdentifier)((Object[])context)[1], url), null);
}
model.setResourceIdentifier(rid);
model.initModelInfo();
return model;
}
return (ICacheableModel)BpmnXMLReader.read(info, classloader, (IResourceIdentifier)((Object[])context)[0],
(IComponentIdentifier)((Object[])context)[1]);
}
}