You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by jw...@apache.org on 2015/08/29 10:22:49 UTC
svn commit: r1698444 -
/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BasicCapability.java
Author: jwross
Date: Sat Aug 29 08:22:48 2015
New Revision: 1698444
URL: http://svn.apache.org/r1698444
Log:
ARIES-1390 BasicCapability should take advantage of the effective immutability of capabilities.
Reuse the already existing, and effectively immutable, attribute and directive maps from the provided capability rather than copying.
Modified:
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BasicCapability.java
Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BasicCapability.java
URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BasicCapability.java?rev=1698444&r1=1698443&r2=1698444&view=diff
==============================================================================
--- aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BasicCapability.java (original)
+++ aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BasicCapability.java Sat Aug 29 08:22:48 2015
@@ -68,7 +68,13 @@ public class BasicCapability extends Abs
private final String namespace;
public BasicCapability(Capability capability, Resource resource) {
- this(capability.getNamespace(), capability.getAttributes(), capability.getDirectives(), resource);
+ if (resource == null) {
+ throw new NullPointerException();
+ }
+ attributes = capability.getAttributes();
+ directives = capability.getDirectives();
+ this.resource = resource;
+ namespace = capability.getNamespace();
}
public BasicCapability(String namespace, Map<String, Object> attributes, Map<String, String> directives, Resource resource) {