Small refactoring
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/d9b7aed3 Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/d9b7aed3 Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/d9b7aed3 Branch: refs/heads/karaf-4.1.x Commit: d9b7aed30c59f2bc2aacb3827f66c49b1b2d5ed1 Parents: 1155de2 Author: Christian Schneider <[email protected]> Authored: Tue May 9 14:47:21 2017 +0200 Committer: Christian Schneider <[email protected]> Committed: Tue May 9 14:49:34 2017 +0200 ---------------------------------------------------------------------- .../karaf/features/extension/BundleWires.java | 26 +++++++++++++------- 1 file changed, 17 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/d9b7aed3/features/extension/src/main/java/org/apache/karaf/features/extension/BundleWires.java ---------------------------------------------------------------------- diff --git a/features/extension/src/main/java/org/apache/karaf/features/extension/BundleWires.java b/features/extension/src/main/java/org/apache/karaf/features/extension/BundleWires.java index 51ff8b1..1690851 100644 --- a/features/extension/src/main/java/org/apache/karaf/features/extension/BundleWires.java +++ b/features/extension/src/main/java/org/apache/karaf/features/extension/BundleWires.java @@ -48,7 +48,9 @@ class BundleWires { BundleWires(Bundle bundle) { this.bundleId = bundle.getBundleId(); for (BundleWire wire : bundle.adapt(BundleWiring.class).getRequiredWires(null)) { - this.wiring.put(getRequirementId(wire.getRequirement()), getCapabilityId(wire.getCapability())); + String requirementId = getRequirementId(wire.getRequirement()); + String capabilityId = getCapabilityId(wire.getCapability()); + this.wiring.put(requirementId, capabilityId); } } @@ -92,14 +94,20 @@ class BundleWires { } long getFragmentHost() { - return wiring.entrySet().stream().filter(e -> e.getKey().startsWith(HostNamespace.HOST_NAMESPACE)) - .map(Map.Entry::getValue).mapToLong(s -> { - int idx = s.indexOf(';'); - if (idx > 0) { - s = s.substring(0, idx); - } - return Long.parseLong(s.trim()); - }).findFirst().orElse(-1); + return wiring.entrySet().stream() // + .filter(e -> e.getKey().startsWith(HostNamespace.HOST_NAMESPACE)) // + .map(Map.Entry::getValue) // + .mapToLong(s -> getBundleId(s)) // + .findFirst() // + .orElse(-1); + } + + private long getBundleId(String value) { + int idx = value.indexOf(';'); + if (idx > 0) { + value = value.substring(0, idx); + } + return Long.parseLong(value.trim()); } void filterMatches(BundleRequirement requirement, Collection<BundleCapability> candidates) {
