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/08 10:57:58 UTC
[cayenne] branch master updated: CAY-2661 NPE on DB Import screen
logging unexpected tree node case
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 bfd7b35 CAY-2661 NPE on DB Import screen logging unexpected tree node case
bfd7b35 is described below
commit bfd7b356fe2aee09b6fc34cf520f29ccb4f58a62
Author: Nikita Timofeev <st...@gmail.com>
AuthorDate: Mon Jun 8 13:57:50 2020 +0300
CAY-2661 NPE on DB Import screen
logging unexpected tree node case
---
.../modeler/action/dbimport/TreeManipulationAction.java | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/dbimport/TreeManipulationAction.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/dbimport/TreeManipulationAction.java
index 5b6c7d0..fbbc478 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/dbimport/TreeManipulationAction.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/dbimport/TreeManipulationAction.java
@@ -34,6 +34,8 @@ import org.apache.cayenne.modeler.editor.dbimport.DbImportModel;
import org.apache.cayenne.modeler.editor.dbimport.DbImportTree;
import org.apache.cayenne.modeler.undo.DbImportTreeUndoableEdit;
import org.apache.cayenne.modeler.util.CayenneAction;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import javax.swing.JTree;
import javax.swing.tree.TreePath;
@@ -49,6 +51,8 @@ import java.util.Map;
*/
public abstract class TreeManipulationAction extends CayenneAction {
+ private static final Logger LOGGER = LoggerFactory.getLogger(TreeManipulationAction.class);
+
static final String EMPTY_NAME = "";
protected DbImportTree tree;
@@ -154,7 +158,12 @@ public abstract class TreeManipulationAction extends CayenneAction {
return false;
}
Class<?> selectedObjectClass = node.getUserObject().getClass();
- return levels.get(selectedObjectClass).contains(insertableNodeClass);
+ List<Class<?>> classes = levels.get(selectedObjectClass);
+ if(classes == null) {
+ LOGGER.warn("Trying to insert node of the unknown class '" + selectedObjectClass.getName() + "' to the dbimport tree.");
+ return false;
+ }
+ return classes.contains(insertableNodeClass);
}
boolean canInsert() {