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 acd5934 Fix NullPointerException in DataMap event handlers acd5934 is described below commit acd5934a33d1069ea58144cbf8de58d02d5950cb Author: Nikita Timofeev <stari...@gmail.com> AuthorDate: Mon Jun 29 16:44:08 2020 +0300 Fix NullPointerException in DataMap event handlers --- .../editor/cgen/CodeGeneratorController.java | 24 +++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) 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 81a8e1b..d292ac2 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 @@ -340,7 +340,9 @@ public class CodeGeneratorController extends CayenneController implements ObjEnt void addEntity(DataMap dataMap, ObjEntity objEntity) { prepareClasses(dataMap); selectionModel.addSelectedEntity(objEntity.getName()); - cgenConfiguration.loadEntity(objEntity); + if(cgenConfiguration != null) { + cgenConfiguration.loadEntity(objEntity); + } checkCgenConfigDirty(); } @@ -384,7 +386,9 @@ public class CodeGeneratorController extends CayenneController implements ObjEnt @Override public void objEntityRemoved(EntityEvent e) { selectionModel.removeFromSelectedEntities((ObjEntity) e.getEntity()); - cgenConfiguration.getEntities().remove(e.getEntity().getName()); + if(cgenConfiguration != null) { + cgenConfiguration.getEntities().remove(e.getEntity().getName()); + } checkCgenConfigDirty(); } @@ -396,23 +400,29 @@ public class CodeGeneratorController extends CayenneController implements ObjEnt prepareClasses(map); String embeddableClassName = e.getEmbeddable().getClassName(); selectionModel.addSelectedEmbeddable(embeddableClassName); - cgenConfiguration.loadEmbeddable(embeddableClassName); + if(cgenConfiguration != null) { + cgenConfiguration.loadEmbeddable(embeddableClassName); + } checkCgenConfigDirty(); } @Override public void embeddableRemoved(EmbeddableEvent e, DataMap map) { selectionModel.removeFromSelectedEmbeddables(e.getEmbeddable()); - cgenConfiguration.getEmbeddables().remove(e.getEmbeddable().getClassName()); + if(cgenConfiguration != null) { + cgenConfiguration.getEmbeddables().remove(e.getEmbeddable().getClassName()); + } checkCgenConfigDirty(); } @Override public void dataMapChanged(DataMapEvent e) { if(e.getSource() instanceof DbImportController) { - for(ObjEntity objEntity : e.getDataMap().getObjEntities()) { - if(!cgenConfiguration.getExcludeEntityArtifacts().contains(objEntity.getName())) { - addEntity(cgenConfiguration.getDataMap(), objEntity); + if(cgenConfiguration != null) { + for (ObjEntity objEntity : e.getDataMap().getObjEntities()) { + if (!cgenConfiguration.getExcludeEntityArtifacts().contains(objEntity.getName())) { + addEntity(cgenConfiguration.getDataMap(), objEntity); + } } } checkCgenConfigDirty();