in src/main/java/org/apache/cayenne/modeler/project/CayenneProject.java [79:121]
public CayenneProject(String path) throws MalformedURLException
{
// this.path = path;
// URL url = CayenneModeler.class.getResource(path);
URL url = new File(path).toURI().toURL();
Resource rootSource = new URLResource(url);
ProjectUpgrader upgrader = Injection.getInjector().getInstance(ProjectUpgrader.class);
UpgradeHandler handler = upgrader.getUpgradeHandler(rootSource);
UpgradeMetaData md = handler.getUpgradeMetaData();
this.path = url.getPath();
// FIXME: These should be handled better.
if (UpgradeType.DOWNGRADE_NEEDED == md.getUpgradeType())
{
LOGGER.error("Can't open project - it was created using a newer version of Cayenne Modeler");
}
else if (UpgradeType.INTERMEDIATE_UPGRADE_NEEDED == md.getUpgradeType())
{
LOGGER.error("Can't open project - it was created using an older version of Cayenne Modeler");
}
else if (UpgradeType.UPGRADE_NEEDED == md.getUpgradeType())
{
LOGGER.error("Can't open project - it was created using an older version of Cayenne Modeler");
}
else
{
// openProjectResourse(rootSource, controller);
project = openProjectResourse(rootSource);
root = (DataChannelDescriptor) project.getRootNode();
// System.out.println(root.getName());
//
// for (DataNodeDescriptor dataNodeDescriptor : root.getNodeDescriptors())
// System.out.println("Node: " + dataNodeDescriptor.getName());
//
// for (DataMap dataMap : root.getDataMaps())
// for (DbEntity dbEntity : dataMap.getDbEntities())
// System.out.println("DbEntity: " + dbEntity.getName());
}
dataDomainAdapter = new DataDomainAdapter(this);
}