Author: oltka
Date: Wed Dec 30 16:21:53 2009
New Revision: 894662
URL: http://svn.apache.org/viewvc?rev=894662&view=rev
Log:
CAY-1352 in "code generation" dialog add generation embeddables
* select all classes if we start "code generation" dialog or one class if we
have currentEntity or emdeddabless
Modified:
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorController.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorControllerBase.java
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java
Modified:
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorController.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorController.java?rev=894662&r1=894661&r2=894662&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorController.java
(original)
+++
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorController.java
Wed Dec 30 16:21:53 2009
@@ -96,7 +96,7 @@
validate(controller);
Predicate predicate = controller != null
- ? controller.getDefaultEntityFilter()
+ ? controller.getDefaultClassFilter()
: PredicateUtils.falsePredicate();
updateSelection(predicate);
Modified:
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorControllerBase.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorControllerBase.java?rev=894662&r1=894661&r2=894662&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorControllerBase.java
(original)
+++
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/CodeGeneratorControllerBase.java
Wed Dec 30 16:21:53 2009
@@ -63,7 +63,7 @@
this.dataMap = dataMap;
this.classes = new ArrayList(dataMap.getObjEntities());
- classes.addAll(new ArrayList(dataMap.getEmbeddables()));
+ this.classes.addAll(new ArrayList(dataMap.getEmbeddables()));
this.selectedEntities = new HashSet();
this.selectedEmbeddables = new HashSet();
}
@@ -138,7 +138,7 @@
return modified;
}
- public Collection<Embeddable> getSelectedEmbeddables() {
+ public List<Embeddable> getSelectedEmbeddables() {
List<Embeddable> selected = new
ArrayList<Embeddable>(selectedEmbeddables.size());
Modified:
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java?rev=894662&r1=894661&r2=894662&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java
(original)
+++
cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java
Wed Dec 30 16:21:53 2009
@@ -503,13 +503,19 @@
/**
* Returns a predicate for default entity selection in a given mode.
*/
- public Predicate getDefaultEntityFilter() {
+ public Predicate getDefaultClassFilter() {
final ObjEntity selectedEntity = Application
.getInstance()
.getFrameController()
.getProjectController()
.getCurrentObjEntity();
+ final Embeddable selectedEmbeddable = Application
+ .getInstance()
+ .getFrameController()
+ .getProjectController()
+ .getCurrentEmbeddable();
+
// select a single entity
if (selectedEntity != null) {
final boolean hasProblem = getParentController().getProblem(
@@ -522,6 +528,18 @@
}
};
}
+ // select a single embeddable
+ else if (selectedEmbeddable != null) {
+ final boolean hasProblem = getParentController().getProblem(
+ selectedEmbeddable.getClassName()) != null;
+
+ return new Predicate() {
+
+ public boolean evaluate(Object object) {
+ return !hasProblem && object == selectedEmbeddable;
+ }
+ };
+ }
// select all entities
else {
@@ -532,6 +550,11 @@
return getParentController().getProblem(
((ObjEntity) object).getName()) == null;
}
+
+ if (object instanceof Embeddable) {
+ return getParentController().getProblem(
+ ((Embeddable) object).getClassName()) == null;
+ }
return false;
}