You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by nt...@apache.org on 2020/06/03 15:32:58 UTC
[cayenne] branch master updated: CAY-2658 DataChannelMetaData is
null during cgen execution
This is an automated email from the ASF dual-hosted git repository.
ntimofeev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git
The following commit(s) were added to refs/heads/master by this push:
new 967f4d3 CAY-2658 DataChannelMetaData is null during cgen execution
967f4d3 is described below
commit 967f4d34387dd13b653813b798220b1a78cf46ef
Author: Nikita Timofeev <st...@gmail.com>
AuthorDate: Wed Jun 3 18:32:20 2020 +0300
CAY-2658 DataChannelMetaData is null during cgen execution
---
.../src/main/java/org/apache/cayenne/gen/CgenModule.java | 5 ++++-
.../modeler/editor/cgen/CodeGeneratorController.java | 13 ++++++-------
2 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/CgenModule.java b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/CgenModule.java
index bf0552e..7ac73a7 100644
--- a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/CgenModule.java
+++ b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/CgenModule.java
@@ -32,6 +32,7 @@ import org.apache.cayenne.gen.property.PropertyDescriptorCreator;
import org.apache.cayenne.gen.property.StringPropertyDescriptorCreator;
import org.apache.cayenne.gen.xml.CgenExtension;
import org.apache.cayenne.project.ProjectModule;
+import org.apache.cayenne.project.extension.info.InfoExtension;
/**
* @since 4.1
@@ -46,7 +47,9 @@ public class CgenModule implements Module {
binder.bind(ToolsUtilsFactory.class).to(DefaultToolsUtilsFactory.class);
binder.bind(MetadataUtils.class).to(MetadataUtils.class);
- ProjectModule.contributeExtensions(binder).add(CgenExtension.class);
+ ProjectModule.contributeExtensions(binder)
+ .add(CgenExtension.class)
+ .add(InfoExtension.class); // info extension needed to get comments and other metadata
contributeUserProperties(binder)
.add(NumericPropertyDescriptorCreator.class)
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CodeGeneratorController.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CodeGeneratorController.java
index db214db..81a8e1b 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CodeGeneratorController.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CodeGeneratorController.java
@@ -57,7 +57,7 @@ import org.apache.cayenne.modeler.editor.DbImportController;
import org.apache.cayenne.modeler.util.CayenneController;
import org.apache.cayenne.modeler.util.ModelerUtil;
import org.apache.cayenne.swing.BindingBuilder;
-import org.apache.cayenne.tools.CayenneToolsModuleProvider;
+import org.apache.cayenne.tools.ToolsInjectorBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -164,12 +164,11 @@ public class CodeGeneratorController extends CayenneController implements ObjEnt
@SuppressWarnings("unused")
public void generateAction() {
- List<Module> modules = new ModuleLoader()
- .load(CayenneToolsModuleProvider.class);
- modules.add(binder -> binder.bind(DataChannelMetaData.class)
- .toInstance(projectController.getApplication().getMetaData()));
- ClassGenerationAction generator = DIBootstrap
- .createInjector(modules)
+ ClassGenerationAction generator = new ToolsInjectorBuilder()
+ .addModule(binder
+ -> binder.bind(DataChannelMetaData.class)
+ .toInstance(projectController.getApplication().getMetaData()))
+ .create()
.getInstance(ClassGenerationActionFactory.class)
.createAction(cgenConfiguration);