Repository: karaf Updated Branches: refs/heads/master 17a2b19dc -> f5b7cce2d
[KARAF-4174] Prevent NPE in obr:info command if resource is not complete Project: http://git-wip-us.apache.org/repos/asf/karaf/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/f5b7cce2 Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/f5b7cce2 Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/f5b7cce2 Branch: refs/heads/master Commit: f5b7cce2d5a28dc77db6f7cf0a42511089669de4 Parents: 17a2b19 Author: Jean-Baptiste Onofré <[email protected]> Authored: Mon Jul 24 17:20:43 2017 +0200 Committer: Jean-Baptiste Onofré <[email protected]> Committed: Mon Jul 24 17:20:43 2017 +0200 ---------------------------------------------------------------------- .../apache/karaf/obr/command/InfoCommand.java | 59 ++++++++++---------- 1 file changed, 29 insertions(+), 30 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/f5b7cce2/obr/src/main/java/org/apache/karaf/obr/command/InfoCommand.java ---------------------------------------------------------------------- diff --git a/obr/src/main/java/org/apache/karaf/obr/command/InfoCommand.java b/obr/src/main/java/org/apache/karaf/obr/command/InfoCommand.java index 854e0df..443fca0 100644 --- a/obr/src/main/java/org/apache/karaf/obr/command/InfoCommand.java +++ b/obr/src/main/java/org/apache/karaf/obr/command/InfoCommand.java @@ -59,43 +59,42 @@ public class InfoCommand extends ObrCommandSupport { } } - private void printResource(PrintStream out, Resource resource) - { - // OBR R5 per Spec has no presentation name - String resourceId = getResourceId(resource); + private void printResource(PrintStream out, Resource resource) { + if (out != null && resource != null) { + // OBR R5 per Spec has no presentation name + String resourceId = getResourceId(resource); - printUnderline(out, resourceId.length()); - out.println(resourceId); - printUnderline(out, resourceId.length()); + printUnderline(out, resourceId.length()); + out.println(resourceId); + printUnderline(out, resourceId.length()); - Map map = resource.getProperties(); - for (Object o : map.entrySet()) { - Map.Entry entry = (Map.Entry) o; - if (entry.getValue().getClass().isArray()) { - out.println(entry.getKey() + ":"); - for (int j = 0; j < Array.getLength(entry.getValue()); j++) { - out.println(" " + Array.get(entry.getValue(), j)); + Map map = resource.getProperties(); + for (Object o : map.entrySet()) { + Map.Entry entry = (Map.Entry) o; + if (entry.getValue().getClass().isArray()) { + out.println(entry.getKey() + ":"); + for (int j = 0; j < Array.getLength(entry.getValue()); j++) { + out.println(" " + Array.get(entry.getValue(), j)); + } + } else { + out.println(entry.getKey() + ": " + entry.getValue()); } - } else { - out.println(entry.getKey() + ": " + entry.getValue()); } - } - Requirement[] reqs = resource.getRequirements(); - if ((reqs != null) && (reqs.length > 0)) - { - out.println("Requires:"); - for (Requirement req : reqs) { - out.println(" " + req.getName() + ":" + req.getFilter()); + Requirement[] reqs = resource.getRequirements(); + if ((reqs != null) && (reqs.length > 0)) { + out.println("Requires:"); + for (Requirement req : reqs) { + out.println(" " + req.getName() + ":" + req.getFilter()); + } } - } - Capability[] caps = resource.getCapabilities(); - if ((caps != null) && (caps.length > 0)) - { - out.println("Capabilities:"); - for (Capability cap : caps) { - out.println(" " + cap.getName() + ":" + cap.getPropertiesAsMap()); + Capability[] caps = resource.getCapabilities(); + if ((caps != null) && (caps.length > 0)) { + out.println("Capabilities:"); + for (Capability cap : caps) { + out.println(" " + cap.getName() + ":" + cap.getPropertiesAsMap()); + } } } }
