You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by ol...@apache.org on 2010/03/10 16:18:02 UTC
svn commit: r921393 - in
/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne:
modeler/ modeler/action/ modeler/dialog/codegen/ modeler/editor/
modeler/pref/ pref/
Author: oltka
Date: Wed Mar 10 15:18:00 2010
New Revision: 921393
URL: http://svn.apache.org/viewvc?rev=921393&view=rev
Log:
CAY-1339 Remove org.apache.cayenne.project package from runtime
* some rename
* fix problem in new project preference's path
Added:
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/RenamedPreferences.java
- copied, changed from r920789, cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/CayennePreferenceForProject.java
Removed:
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/CayennePreferenceForProject.java
Modified:
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorTabController.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataDomainView.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DBGeneratorDefaults.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataMapDefaults.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataNodeDefaults.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/ChildrenMapPreference.java
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java Wed Mar 10 15:18:00 2010
@@ -365,10 +365,16 @@ public class ProjectController extends C
projectControllerPreferences = Preferences.userNodeForPackage(Project.class);
- if (key.length() > 0) {
- projectControllerPreferences = projectControllerPreferences
- .node(projectControllerPreferences.absolutePath()
- + key.replace(".xml", ""));
+ if (key.trim().length() > 0) {
+ if (key.contains(".xml")) {
+ projectControllerPreferences = projectControllerPreferences
+ .node(projectControllerPreferences.absolutePath()
+ + key.replace(".xml", ""));
+ }
+ else {
+ projectControllerPreferences = projectControllerPreferences
+ .node(projectControllerPreferences.absolutePath());
+ }
}
}
@@ -1646,7 +1652,7 @@ public class ProjectController extends C
}
public void addDataMap(Object src, DataMap map, boolean makeCurrent) {
-
+
map.setDataChannelDescriptor(currentState.domain);
// new map was added.. link it to domain (and node if possible)
currentState.domain.getDataMaps().add(map);
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java Wed Mar 10 15:18:00 2010
@@ -21,7 +21,7 @@ package org.apache.cayenne.modeler.actio
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.dialog.LogConsole;
-import org.apache.cayenne.pref.CayennePreferenceForProject;
+import org.apache.cayenne.pref.RenamedPreferences;
import org.apache.cayenne.project.ProjectPath;
import java.awt.event.ActionEvent;
@@ -53,7 +53,7 @@ public class ExitAction extends ProjectA
//stop logging before JVM shutdown to prevent hanging
LogConsole.getInstance().stopLogging();
- CayennePreferenceForProject.removeNewPreferences();
+ RenamedPreferences.removeNewPreferences();
// goodbye
System.exit(0);
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java Wed Mar 10 15:18:00 2010
@@ -25,7 +25,7 @@ import java.awt.event.KeyEvent;
import javax.swing.KeyStroke;
import org.apache.cayenne.modeler.Application;
-import org.apache.cayenne.pref.CayennePreferenceForProject;
+import org.apache.cayenne.pref.RenamedPreferences;
import org.apache.cayenne.project2.Project;
import org.apache.cayenne.project2.ProjectSaver;
@@ -69,7 +69,7 @@ public class SaveAction extends SaveAsAc
ProjectSaver.class);
saver.save(p);
- CayennePreferenceForProject.removeOldPreferences();
+ RenamedPreferences.removeOldPreferences();
// if change DataChanelDescriptor name - as result change name of xml file
// we will need change preferences path
@@ -78,10 +78,10 @@ public class SaveAction extends SaveAsAc
if (!path[path.length - 1].equals(newPath[newPath.length - 1])) {
String newName = newPath[newPath.length - 1].replace(".xml", "");
- CayennePreferenceForProject.copyPreferences(
+ RenamedPreferences.copyPreferences(
newName,
getProjectController().getPreferenceForProject());
- CayennePreferenceForProject.removeOldPreferences();
+ RenamedPreferences.removeOldPreferences();
}
getApplication().getFrameController().changePathInLastProjListAction(
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java Wed Mar 10 15:18:00 2010
@@ -34,7 +34,7 @@ import org.apache.cayenne.modeler.Applic
import org.apache.cayenne.modeler.dialog.validator.ValidationDisplayHandler;
import org.apache.cayenne.modeler.dialog.validator.ValidatorDialog;
import org.apache.cayenne.modeler.util.CayenneAction;
-import org.apache.cayenne.pref.CayennePreferenceForProject;
+import org.apache.cayenne.pref.RenamedPreferences;
import org.apache.cayenne.project.ProjectPath;
import org.apache.cayenne.project2.Project;
import org.apache.cayenne.project2.ProjectSaver;
@@ -121,11 +121,11 @@ public class SaveAsAction extends Cayenn
String projPath = oldPref.absolutePath().replace(oldName, "");
Preferences newPref = getProjectController().getPreferenceForProject().node(
projPath + newName);
- CayennePreferenceForProject.copyPreferences(newPref, getProjectController()
+ RenamedPreferences.copyPreferences(newPref, getProjectController()
.getPreferenceForProject(), false);
}
- CayennePreferenceForProject.removeNewPreferences();
+ RenamedPreferences.removeNewPreferences();
getApplication().getFrameController().addToLastProjListAction(
p.getConfigurationResource().getURL().getPath());
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorTabController.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorTabController.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorTabController.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorTabController.java Wed Mar 10 15:18:00 2010
@@ -80,13 +80,15 @@ public class GeneratorTabController exte
BindingBuilder builder = new BindingBuilder(
getApplication().getBindingFactory(),
this);
-
+
builder.bindToAction(view.getGenerationMode(), "updateModeAction()");
-
+
CayenneProjectPreferences cayPrPref = application.getCayenneProjectPreferences();
-
- this.preferences = (PreferenceDetail) cayPrPref.getProjectDetailObject(PreferenceDetail.class, getViewPreferences().node("controller"));
-
+
+ this.preferences = (PreferenceDetail) cayPrPref.getProjectDetailObject(
+ PreferenceDetail.class,
+ getViewPreferences().node("controller"));
+
if (Util.isEmptyString(preferences.getProperty("mode"))) {
preferences.setProperty("mode", STANDARD_OBJECTS_MODE);
}
@@ -98,7 +100,6 @@ public class GeneratorTabController exte
updateModeAction();
}
-
public PreferenceDetail getPreferences() {
return preferences;
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataDomainView.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataDomainView.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataDomainView.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataDomainView.java Wed Mar 10 15:18:00 2010
@@ -46,7 +46,7 @@ import org.apache.cayenne.modeler.event.
import org.apache.cayenne.modeler.util.CayenneWidgetFactory;
import org.apache.cayenne.modeler.util.ProjectUtil;
import org.apache.cayenne.modeler.util.TextAdapter;
-import org.apache.cayenne.pref.CayennePreferenceForProject;
+import org.apache.cayenne.pref.RenamedPreferences;
import org.apache.cayenne.util.Util;
import org.apache.cayenne.validation.ValidationException;
@@ -363,7 +363,7 @@ public class DataDomainView extends JPan
// copy all old preference to new preferences
Preferences oldPref = prefs;
- CayennePreferenceForProject.copyPreferences(newName, oldPref);
+ RenamedPreferences.copyPreferences(newName, oldPref);
projectController.fireDomainEvent(e);
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DBGeneratorDefaults.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DBGeneratorDefaults.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DBGeneratorDefaults.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DBGeneratorDefaults.java Wed Mar 10 15:18:00 2010
@@ -21,9 +21,9 @@ package org.apache.cayenne.modeler.pref;
import java.util.prefs.Preferences;
import org.apache.cayenne.access.DbGenerator;
-import org.apache.cayenne.pref.CayennePreferenceForProject;
+import org.apache.cayenne.pref.RenamedPreferences;
-public class DBGeneratorDefaults extends CayennePreferenceForProject {
+public class DBGeneratorDefaults extends RenamedPreferences {
public static final String CREATE_FK_PROPERTY = "createFK";
public static final String CREATE_PK_PROPERTY = "createPK";
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataMapDefaults.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataMapDefaults.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataMapDefaults.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataMapDefaults.java Wed Mar 10 15:18:00 2010
@@ -21,10 +21,10 @@ package org.apache.cayenne.modeler.pref;
import java.util.prefs.Preferences;
import org.apache.cayenne.map.DataMap;
-import org.apache.cayenne.pref.CayennePreferenceForProject;
+import org.apache.cayenne.pref.RenamedPreferences;
import org.apache.cayenne.util.Util;
-public class DataMapDefaults extends CayennePreferenceForProject {
+public class DataMapDefaults extends RenamedPreferences {
private boolean generatePairs;
private String outputPath;
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataNodeDefaults.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataNodeDefaults.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataNodeDefaults.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/DataNodeDefaults.java Wed Mar 10 15:18:00 2010
@@ -20,9 +20,9 @@ package org.apache.cayenne.modeler.pref;
import java.util.prefs.Preferences;
-import org.apache.cayenne.pref.CayennePreferenceForProject;
+import org.apache.cayenne.pref.RenamedPreferences;
-public class DataNodeDefaults extends CayennePreferenceForProject {
+public class DataNodeDefaults extends RenamedPreferences {
private String localDataSource;
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/ChildrenMapPreference.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/ChildrenMapPreference.java?rev=921393&r1=921392&r2=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/ChildrenMapPreference.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/ChildrenMapPreference.java Wed Mar 10 15:18:00 2010
@@ -67,7 +67,6 @@ public class ChildrenMapPreference exten
catch (Throwable e) {
new CayenneRuntimeException("Error initing preference");
}
-
}
this.children.putAll(children);
Copied: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/RenamedPreferences.java (from r920789, cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/CayennePreferenceForProject.java)
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/RenamedPreferences.java?p2=cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/RenamedPreferences.java&p1=cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/CayennePreferenceForProject.java&r1=920789&r2=921393&rev=921393&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/CayennePreferenceForProject.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/pref/RenamedPreferences.java Wed Mar 10 15:18:00 2010
@@ -24,14 +24,16 @@ import java.util.List;
import java.util.prefs.BackingStoreException;
import java.util.prefs.Preferences;
-import org.apache.cayenne.CayenneRuntimeException;
-
-public abstract class CayennePreferenceForProject extends CayennePreference {
+/*
+ * use for preferences where in preference's node path contains dependence from name dataChanelDescriptor,
+ * dataNodeDescriptor, dataMap etc.
+ */
+public abstract class RenamedPreferences extends CayennePreference {
private static List<Preferences> newNode;
private static List<Preferences> oldNode;
- public CayennePreferenceForProject(Preferences pref) {
+ public RenamedPreferences(Preferences pref) {
setCurrentPreference(pref);
}
@@ -61,7 +63,7 @@ public abstract class CayennePreferenceF
// get old preference
Preferences childNode = pref.node(child);
- if (!oldNode.contains(childNode)) {
+ if (!equalsPath(oldNode, childNode)) {
// path to node
String path = childNode.absolutePath().replace(oldPath, newPath);
@@ -71,7 +73,7 @@ public abstract class CayennePreferenceF
for (int i = 0; i < names.length; i++) {
newPref.put(names[i], childNode.get(names[i], ""));
}
- prefChild.add(childNode);
+ prefChild.add(newPref);
}
}
@@ -93,6 +95,9 @@ public abstract class CayennePreferenceF
}
catch (BackingStoreException e) {
}
+ catch (IllegalStateException e) {
+ // do nothing
+ }
}
clearPreferences();
}
@@ -105,11 +110,15 @@ public abstract class CayennePreferenceF
while (it.hasNext()) {
Preferences pref = it.next();
+
try {
pref.removeNode();
}
catch (BackingStoreException e) {
}
+ catch (IllegalStateException e) {
+ // do nothing
+ }
}
clearPreferences();
}
@@ -169,16 +178,32 @@ public abstract class CayennePreferenceF
}
if (addToPreferenceList) {
- newNode.add(newPref);
- oldNode.add(oldPref);
+ if (!equalsPath(newNode, newPref)) {
+ newNode.add(newPref);
+ }
+ if (!equalsPath(oldNode, oldPref)) {
+ oldNode.add(oldPref);
+ }
}
return newPref;
}
catch (BackingStoreException e) {
- new CayenneRuntimeException("Error remane preferences");
+ throw new PreferenceException("Error remane preferences");
+ }
+ }
+
+ private static boolean equalsPath(List<Preferences> listPref, Preferences pref) {
+ Iterator<Preferences> it = listPref.iterator();
+ while (it.hasNext()) {
+ Preferences next = it.next();
+ String pathInList = (String) next.absolutePath();
+ String path = (String) pref.absolutePath();
+ if (pathInList.equals(path)) {
+ return true;
+ }
}
- return oldPref;
+ return false;
}
}