Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 9CBCB200CCF for ; Mon, 24 Jul 2017 18:16:32 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 990A0163B18; Mon, 24 Jul 2017 16:16:32 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id DD787163B17 for ; Mon, 24 Jul 2017 18:16:31 +0200 (CEST) Received: (qmail 4651 invoked by uid 500); 24 Jul 2017 16:16:30 -0000 Mailing-List: contact commits-help@karaf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@karaf.apache.org Delivered-To: mailing list commits@karaf.apache.org Received: (qmail 4642 invoked by uid 99); 24 Jul 2017 16:16:30 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Jul 2017 16:16:30 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 260CEE2F41; Mon, 24 Jul 2017 16:16:30 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: jbonofre@apache.org To: commits@karaf.apache.org Message-Id: <0eb44a3365b940c2b7c1cd52ce124ebe@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: karaf git commit: [KARAF-4174] Prevent NPE in obr:info command if resource is not complete Date: Mon, 24 Jul 2017 16:16:30 +0000 (UTC) archived-at: Mon, 24 Jul 2017 16:16:32 -0000 Repository: karaf Updated Branches: refs/heads/karaf-4.0.x 254b40fee -> 14cb98647 [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/14cb9864 Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/14cb9864 Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/14cb9864 Branch: refs/heads/karaf-4.0.x Commit: 14cb98647a02eca1c8ee0265bc7a61935415d7d6 Parents: 254b40f Author: Jean-Baptiste Onofré Authored: Mon Jul 24 18:16:06 2017 +0200 Committer: Jean-Baptiste Onofré Committed: Mon Jul 24 18:16:06 2017 +0200 ---------------------------------------------------------------------- .../apache/karaf/obr/command/InfoCommand.java | 63 +++++++++----------- 1 file changed, 28 insertions(+), 35 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/14cb9864/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 616e8cb..7b576a8 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 @@ -62,48 +62,41 @@ public class InfoCommand extends ObrCommandSupport { private void printResource(PrintStream out, Resource resource) { - // OBR R5 per Spec has no presentation name - String resourceId = getResourceId(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 (Iterator iter = map.entrySet().iterator(); iter.hasNext(); ) - { - Map.Entry entry = (Map.Entry) iter.next(); - 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 (Iterator iter = map.entrySet().iterator(); iter.hasNext(); ) { + Map.Entry entry = (Map.Entry) iter.next(); + 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 (int i = 0; i < reqs.length; i++) - { - out.println(" " + reqs[i].getName() + ":" + reqs[i].getFilter()); + Requirement[] reqs = resource.getRequirements(); + if ((reqs != null) && (reqs.length > 0)) { + out.println("Requires:"); + for (int i = 0; i < reqs.length; i++) { + out.println(" " + reqs[i].getName() + ":" + reqs[i].getFilter()); + } } - } - Capability[] caps = resource.getCapabilities(); - if ((caps != null) && (caps.length > 0)) - { - out.println("Capabilities:"); - for (int i = 0; i < caps.length; i++) - { - out.println(" " + caps[i].getName() + ":" + caps[i].getPropertiesAsMap()); + Capability[] caps = resource.getCapabilities(); + if ((caps != null) && (caps.length > 0)) { + out.println("Capabilities:"); + for (int i = 0; i < caps.length; i++) { + out.println(" " + caps[i].getName() + ":" + caps[i].getPropertiesAsMap()); + } } } }