|
From: Hirzel P. <ph...@us...> - 2005-09-20 19:08:27
|
Update of /cvsroot/tcotool/TCO-Tool/src/org/tcotool/application In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31543 Modified Files: LauncherView.java Added Files: ModelBasket.java PresentationBasket.java Log Message: Feature: supporting Multi INTERLIS-Basket structures in XML-instances --- NEW FILE: PresentationBasket.java --- package org.tcotool.application; /* * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ import java.util.Set; import org.tcotool.presentation.Diagram; import ch.softenvironment.jomm.DbObjectId; import ch.softenvironment.jomm.target.xml.IliBasket; /** * Encapsulates the org.tcotool.presentation.* Classes in an INTERLIS Basket. * @author Peter Hirzel <i>soft</i>Environment * @version $Revision: 1.1 $ $Date: 2005/09/20 19:08:14 $ */ public class PresentationBasket implements IliBasket { private Object diagram = null; public PresentationBasket() { super(); } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getElementName() */ public String getElementName() { return "tcotool.presentation"; } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getInitialComment() */ public String getComment() { return "Basket of DependencyGraph-Objects of org.tcotool.presentation.*"; } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getCodes() */ public Set getCodes() { // no codes here return null; } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getModelRoot() */ public Object getModelRoot() { return diagram; } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getObjectId() */ public DbObjectId getObjectId() { return new DbObjectId(Diagram.class, new Long(-1 /*Unknown*/)); } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#setModelRoot(java.lang.Object) */ public void setModelRoot(Object root) { this.diagram = root; } } --- NEW FILE: ModelBasket.java --- package org.tcotool.application; /* * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ import java.util.Set; import org.tcotool.model.TcoModel; import ch.softenvironment.jomm.DbObjectId; import ch.softenvironment.jomm.DbObjectServer; import ch.softenvironment.jomm.target.xml.IliBasket; import ch.softenvironment.jomm.target.xml.XmlObjectServer; /** * Encapsulates the org.tcotool.model.* Classes in an INTERLIS Basket. * @author Peter Hirzel <i>soft</i>Environment * @version $Revision: 1.1 $ $Date: 2005/09/20 19:08:14 $ */ public class ModelBasket implements IliBasket { private DbObjectServer server = null; private Object modelRoot = null; public ModelBasket(DbObjectServer server) { super(); this.server = server; } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getElementName() */ public String getElementName() { return server.getPersistenceManagerFactory().getConnectionURL(); } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getInitialComment() */ public String getComment() { return "Basket of Configuration-Objects of org.tcotool.model.*"; } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getCodes() */ public Set getCodes() { return ((XmlObjectServer)server).getCodeTypes(); } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getModelRoot() */ public Object getModelRoot() { return modelRoot; } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#getObjectId() */ public DbObjectId getObjectId() { return new DbObjectId(TcoModel.class, new Long(-1 /*Unknown*/)); } /* (non-Javadoc) * @see ch.softenvironment.jomm.target.xml.IliBasket#setModelRoot(java.lang.Object) */ public void setModelRoot(Object root) { this.modelRoot = root; } } Index: LauncherView.java =================================================================== RCS file: /cvsroot/tcotool/TCO-Tool/src/org/tcotool/application/LauncherView.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** LauncherView.java 17 Sep 2005 17:18:19 -0000 1.3 --- LauncherView.java 20 Sep 2005 19:08:14 -0000 1.4 *************** *** 31,34 **** --- 31,35 ---- import java.io.FileNotFoundException; import java.util.ArrayList; + import java.util.List; import java.util.Locale; *************** *** 68,72 **** private java.util.List fileFilter = null; private Image image = null; ! private Diagram dependencyDiagram = null; private JMenu mnuEdit = null; private JMenuItem mniFind = null; --- 69,73 ---- private java.util.List fileFilter = null; private Image image = null; ! protected Diagram dependencyDiagram = null; private JMenu mnuEdit = null; private JMenuItem mniFind = null; *************** *** 1927,1934 **** } /** ! * Return Version */ public static String getVersion() { ! return "V1.3.1"; } /** --- 1928,1935 ---- } /** ! * Return Version. */ public static String getVersion() { ! return "V1.4.0"; } /** *************** *** 2335,2339 **** if (saveCurrentChanges()) { server.reconnect(); ! // set the Default Model setUtility(ModelUtility.createDefaultConfiguration(server) /*createTestTemplate(server*/, null); --- 2336,2340 ---- if (saveCurrentChanges()) { server.reconnect(); ! dependencyDiagram = null; // set the Default Model setUtility(ModelUtility.createDefaultConfiguration(server) /*createTestTemplate(server*/, null); *************** *** 2354,2361 **** server.setUserObject(new ch.softenvironment.jomm.target.xml.XmlUserObject(filename)); ! TcoModel root = (TcoModel)server.getObjectById(new DbObjectId(TcoModel.class, new Long(-1 /* will return model-root independent of T_Id*/)), true); server.setUserObject(null); - //TODO load Diagram-Basket - dependencyDiagram = null; return root; } catch(javax.jdo.JDODataStoreException e) { --- 2355,2364 ---- server.setUserObject(new ch.softenvironment.jomm.target.xml.XmlUserObject(filename)); ! List baskets = ListUtils.createList(new ModelBasket(server)); ! baskets.add(new PresentationBasket()); ! server.retrieveAll(baskets); ! TcoModel root = (TcoModel)((IliBasket)baskets.get(0)).getModelRoot(); ! dependencyDiagram = (Diagram)((IliBasket)baskets.get(1)).getModelRoot(); server.setUserObject(null); return root; } catch(javax.jdo.JDODataStoreException e) { *************** *** 2480,2488 **** ch.softenvironment.jomm.target.xml.XmlUserObject userObject = new ch.softenvironment.jomm.target.xml.XmlUserObject(filename); userObject.setSender("www.tcotool.org (" + getVersion() + ")"); server.setUserObject(userObject); final DbUserTransactionBlock block = server.createUserTransactionBlock(true); block.execute(new Runnable() { public void run() { ! block.getObjectServer().makePersistent(getUtility().getRoot()); } }); --- 2483,2500 ---- ch.softenvironment.jomm.target.xml.XmlUserObject userObject = new ch.softenvironment.jomm.target.xml.XmlUserObject(filename); userObject.setSender("www.tcotool.org (" + getVersion() + ")"); + userObject.setXsd("http://www.interlis.ch/INTERLIS2.2 TcoTool.xsd"); server.setUserObject(userObject); final DbUserTransactionBlock block = server.createUserTransactionBlock(true); block.execute(new Runnable() { public void run() { ! IliBasket basket = new ModelBasket(server); ! basket.setModelRoot(LauncherView.getInstance().getUtility().getRoot()); ! List baskets = ListUtils.createList(basket); ! if (dependencyDiagram != null) { ! basket = new PresentationBasket(); ! basket.setModelRoot(dependencyDiagram); ! baskets.add(basket); ! } ! block.getObjectServer().makePersistentAll(baskets); } }); *************** *** 2614,2618 **** //TODO NYI: multiple views of dependencies for large or imported Configurations if (dependencyDiagram == null) { ! dependencyDiagram = (Diagram)server.createInstance((Diagram.class)); } return dependencyDiagram; --- 2626,2630 ---- //TODO NYI: multiple views of dependencies for large or imported Configurations if (dependencyDiagram == null) { ! dependencyDiagram = (Diagram)getUtility().createDbObject(server, Diagram.class); } return dependencyDiagram; |