Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2012, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import org.osgi.resource.Namespace; * {@code String}, unless otherwise indicated. * * @Immutable + * @since 1.1 * @author $Id$ */ public final class NativeNamespace extends Namespace { @@ -42,9 +43,9 @@ public final class NativeNamespace exten /** * The capability attribute contains alias values of the * {@link Constants#FRAMEWORK_OS_NAME org.osgi.framework.os.name} launching - * property value according to the <a - * href="http://www.osgi.org/Specifications/Reference">OSGi Specification - * References</a>. The value of this attribute must be of type + * property value according to the + * <a href="https://www.osgi.org/developer/specifications/reference/">OSGi + * Specification References</a>. The value of this attribute must be of type * {@code List<String>}. */ public final static String CAPABILITY_OSNAME_ATTRIBUTE = NATIVE_NAMESPACE + ".osname"; @@ -60,9 +61,9 @@ public final class NativeNamespace exten /** * The capability attribute contains alias values of the * {@link Constants#FRAMEWORK_PROCESSOR org.osgi.framework.processor} - * launching property value according to the <a - * href="http://www.osgi.org/Specifications/Reference">OSGi Specification - * References</a>. The value of this attribute must be of type + * launching property value according to the + * <a href="https://www.osgi.org/developer/specifications/reference/">OSGi + * Specification References</a>. The value of this attribute must be of type * {@code List<String>}. */ public final static String CAPABILITY_PROCESSOR_ATTRIBUTE = NATIVE_NAMESPACE + ".processor";
Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/package-info.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/package-info.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/package-info.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/package-info.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,21 +15,19 @@ */ /** - * Framework Package Version 1.8. - * + * Framework Package Version 1.9. * <p> * Bundles wishing to use this package must list the package in the * Import-Package header of the bundle's manifest. - * * <p> * Example import for consumers using the API in this package: * <p> - * {@code Import-Package: org.osgi.framework; version="[1.8,2.0)"} + * {@code Import-Package: org.osgi.framework; version="[1.9,2.0)"} * * @author $Id$ */ -@Version("1.8") +@Version("1.9") package org.osgi.framework; import org.osgi.annotation.versioning.Version; Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,7 +26,7 @@ import org.osgi.resource.Capability; * revision}. * * @ThreadSafe - * @author $Id: 834fb5779fb3c1b1b16ab25ffa4ab97a131b1262 $ + * @author $Id: b4eb0df09a8354afdb46f013926f81f70f817f43 $ */ @ProviderType public interface BundleCapability extends Capability { @@ -43,6 +43,7 @@ public interface BundleCapability extend * * @return The namespace of this capability. */ + @Override String getNamespace(); /** @@ -57,6 +58,7 @@ public interface BundleCapability extend * this capability, or an empty map if this capability has no * directives. */ + @Override Map<String, String> getDirectives(); /** @@ -66,6 +68,7 @@ public interface BundleCapability extend * this capability, or an empty map if this capability has no * attributes. */ + @Override Map<String, Object> getAttributes(); /** @@ -77,5 +80,6 @@ public interface BundleCapability extend * @return The resource declaring this capability. * @since 1.1 */ + @Override BundleRevision getResource(); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,7 +26,7 @@ import org.osgi.resource.Requirement; * revision}. * * @ThreadSafe - * @author $Id: ac0578af567754bcd12c63a350c06afdd1bfec05 $ + * @author $Id: f7e73311cfc384905cb65d9d24b12304291be2d8 $ */ @ProviderType public interface BundleRequirement extends Requirement { @@ -54,6 +54,7 @@ public interface BundleRequirement exten * * @return The namespace of this requirement. */ + @Override String getNamespace(); /** @@ -68,6 +69,7 @@ public interface BundleRequirement exten * this requirement, or an empty map if this requirement has no * directives. */ + @Override Map<String, String> getDirectives(); /** @@ -81,6 +83,7 @@ public interface BundleRequirement exten * this requirement, or an empty map if this requirement has no * attributes. */ + @Override Map<String, Object> getAttributes(); /** @@ -93,5 +96,6 @@ public interface BundleRequirement exten * if this requirement is synthesized. * @since 1.1 */ + @Override BundleRevision getResource(); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2018). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,7 +52,7 @@ import org.osgi.resource.Resource; * {@link Constants#REQUIRE_CAPABILITY Require-Capability} manifest headers. * * @ThreadSafe - * @author $Id: 1f318afdf8f5fe6097a841b49b67bf67d8c924f2 $ + * @author $Id: 0d0ae508d172eefe49c9c338e4d29ffd13500f0b $ */ @ProviderType public interface BundleRevision extends BundleReference, Resource { @@ -111,7 +111,7 @@ public interface BundleRevision extends * The name of the package is stored in the capability attribute of the same * name as this namespace (osgi.wiring.package). The other directives and * attributes of the package, from the {@link Constants#EXPORT_PACKAGE - * Export-Package} manifest header, can be found in the cabability's + * Export-Package} manifest header, can be found in the capability's * {@link BundleCapability#getDirectives() directives} and * {@link BundleCapability#getAttributes() attributes}. The * {@link Constants#VERSION_ATTRIBUTE version} capability attribute must @@ -157,7 +157,7 @@ public interface BundleRevision extends * attribute of the same name as this namespace (osgi.wiring.bundle). The * other directives and attributes of the bundle, from the * {@link Constants#BUNDLE_SYMBOLICNAME Bundle-SymbolicName} manifest - * header, can be found in the cabability's + * header, can be found in the capability's * {@link BundleCapability#getDirectives() directives} and * {@link BundleCapability#getAttributes() attributes}. The * {@link Constants#BUNDLE_VERSION_ATTRIBUTE bundle-version} capability @@ -197,7 +197,7 @@ public interface BundleRevision extends * attribute of the same name as this namespace (osgi.wiring.host). The * other directives and attributes of the bundle, from the * {@link Constants#BUNDLE_SYMBOLICNAME Bundle-SymbolicName} manifest - * header, can be found in the cabability's + * header, can be found in the capability's * {@link BundleCapability#getDirectives() directives} and * {@link BundleCapability#getAttributes() attributes}. The * {@link Constants#BUNDLE_VERSION_ATTRIBUTE bundle-version} capability @@ -283,6 +283,7 @@ public interface BundleRevision extends * namespace. * @since 1.1 */ + @Override List<Capability> getCapabilities(String namespace); /** @@ -301,5 +302,6 @@ public interface BundleRevision extends * namespace. * @since 1.1 */ + @Override List<Requirement> getRequirements(String namespace); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,7 +23,7 @@ import org.osgi.resource.Wire; * A wire connecting a {@link BundleCapability} to a {@link BundleRequirement}. * * @ThreadSafe - * @author $Id: f51255c8510d4b513dc2bb70c2274d9c51e9b9e5 $ + * @author $Id: 9877055d8ebbe52b82ec16b876d4491a47a106ef $ */ @ProviderType public interface BundleWire extends Wire { @@ -32,6 +32,7 @@ public interface BundleWire extends Wire * * @return The {@link BundleCapability} for this wire. */ + @Override BundleCapability getCapability(); /** @@ -39,6 +40,7 @@ public interface BundleWire extends Wire * * @return The {@link BundleRequirement} for this wire. */ + @Override BundleRequirement getRequirement(); /** @@ -87,6 +89,7 @@ public interface BundleWire extends Wire * @return The resource providing the capability. * @since 1.1 */ + @Override BundleRevision getProvider(); /** @@ -104,6 +107,6 @@ public interface BundleWire extends Wire * @return The resource who requires the capability. * @since 1.1 */ + @Override BundleRevision getRequirer(); - } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ package org.osgi.framework.wiring; import java.net.URL; import java.util.Collection; import java.util.List; + import org.osgi.annotation.versioning.ProviderType; import org.osgi.framework.Bundle; import org.osgi.framework.BundleReference; @@ -53,7 +54,7 @@ import org.osgi.resource.Wiring; * a bundle returns {@code null}. * * @ThreadSafe - * @author $Id: 367499c4b37683c52e622f479242a9caf7e59b0f $ + * @author $Id: ddad9df28bbd85405057e1f1237f404f83ac8758 $ */ @ProviderType public interface BundleWiring extends BundleReference, Wiring { @@ -124,22 +125,20 @@ public interface BundleWiring extends Bu /** * Returns the requirements of this bundle wiring. - * * <p> * Only requirements considered by the resolver are returned. For example, * requirements with {@link Namespace#REQUIREMENT_EFFECTIVE_DIRECTIVE * effective} directive not equal to {@link Namespace#EFFECTIVE_RESOLVE * resolve} are not returned. - * * <p> * A bundle wiring for a non-fragment revision has a subset of the declared * requirements from the bundle revision and all attached fragment * revisions. Not all declared requirements may be present since some may be - * discarded. For example, if a package is declared to be optionally - * imported and is not actually imported, the requirement must be discarded. + * discarded. For example, if a package is declared to be both exported and + * imported, only one is selected and the other is discarded. * * @param namespace The namespace of the requirements to return or - * {@code null} to return the requirements from all namespaces. + * {@code null} to return the requirements from all namespaces. * @return A list containing a snapshot of the {@link BundleRequirement}s, * or an empty list if this bundle wiring uses no requirements in * the specified namespace. If this bundle wiring is not @@ -414,6 +413,7 @@ public interface BundleWiring extends Bu * ordering defined between capabilities in different namespaces. * @since 1.1 */ + @Override List<Capability> getResourceCapabilities(String namespace); /** @@ -446,6 +446,7 @@ public interface BundleWiring extends Bu * between requirements in different namespaces. * @since 1.1 */ + @Override List<Requirement> getResourceRequirements(String namespace); /** @@ -468,6 +469,7 @@ public interface BundleWiring extends Bu * capabilities in different namespaces. * @since 1.1 */ + @Override List<Wire> getProvidedResourceWires(String namespace); /** @@ -490,6 +492,7 @@ public interface BundleWiring extends Bu * requirements in different namespaces. * @since 1.1 */ + @Override List<Wire> getRequiredResourceWires(String namespace); /** @@ -501,5 +504,6 @@ public interface BundleWiring extends Bu * @return The resource associated with this wiring. * @since 1.1 */ + @Override BundleRevision getResource(); } Added: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/FrameworkWiringDTO.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/FrameworkWiringDTO.java?rev=1825132&view=auto ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/FrameworkWiringDTO.java (added) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/FrameworkWiringDTO.java Fri Feb 23 15:11:00 2018 @@ -0,0 +1,48 @@ +/* + * Copyright (c) OSGi Alliance (2012, 2016). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.osgi.framework.wiring.dto; + +import java.util.Set; + +import org.osgi.dto.DTO; + +/** + * Data Transfer Object for the wiring graph of the framework. + * <p> + * The system bundle can be adapted to provide the {@code FrameworkWiringDTO}. + * Only the system bundle can be adapted to a {@code FrameworkWiringDTO} object + * + * @author $Id: 1786218bfe09a4d46d9041d96d01b2a71612eb0d $ + * @NotThreadSafe + * @since 1.3 + */ +public class FrameworkWiringDTO extends DTO { + /** + * The set of wiring nodes referenced by the wiring graph of the framework. + * <p> + * All wiring nodes referenced by wiring node identifiers in the wiring + * graph are contained in this set. + */ + public Set<BundleWiringDTO.NodeDTO> wirings; + /** + * The set of resources referenced by the wiring graph of the framework. + * <p> + * All resources referenced by resource identifiers in the wiring graph are + * contained in this set. + */ + public Set<BundleRevisionDTO> resources; +} Propchange: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/FrameworkWiringDTO.java ------------------------------------------------------------------------------ svn:executable = * Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2012, 2014). All Rights Reserved. + * Copyright (c) OSGi Alliance (2012, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,27 +15,25 @@ */ /** - * OSGi Data Transfer Object Framework Wiring Package Version 1.2. - * + * OSGi Data Transfer Object Framework Wiring Package Version 1.3. * <p> * Bundles wishing to use this package must list the package in the * Import-Package header of the bundle's manifest. This package has two types of * users: the consumers that use the API in this package and the providers that * implement the API in this package. - * * <p> * Example import for consumers using the API in this package: * <p> - * {@code Import-Package: org.osgi.framework.wiring.dto; version="[1.2,2.0)"} + * {@code Import-Package: org.osgi.framework.wiring.dto; version="[1.3,2.0)"} * <p> * Example import for providers implementing the API in this package: * <p> - * {@code Import-Package: org.osgi.framework.wiring.dto; version="[1.2,1.3)"} + * {@code Import-Package: org.osgi.framework.wiring.dto; version="[1.3,1.4)"} * * @author $Id$ */ -@Version("1.2") +@Version("1.3") package org.osgi.framework.wiring.dto; import org.osgi.annotation.versioning.Version; Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Capability.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Capability.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Capability.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Capability.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,7 +28,7 @@ import org.osgi.annotation.versioning.Co * always return the same result. * * @ThreadSafe - * @author $Id: e79d11402e14e170443c8a2a9da835391cd1ccc8 $ + * @author $Id: 4c1f7f4309b23e7cf345c784ed096a2d9bd80467 $ */ @ConsumerType public interface Capability { @@ -77,6 +77,7 @@ public interface Capability { * @return {@code true} if this {@code Capability} is equal to the other * object; {@code false} otherwise. */ + @Override boolean equals(Object obj); /** @@ -84,5 +85,6 @@ public interface Capability { * * @return The hashCode of this {@code Capability}. */ + @Override int hashCode(); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Requirement.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Requirement.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Requirement.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Requirement.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,7 +28,7 @@ import org.osgi.annotation.versioning.Co * always return the same result. * * @ThreadSafe - * @author $Id: 252221aeaaf9b189eef6e0c3798d0076a0032242 $ + * @author $Id: 210e427134eaf0404c4f374f619af972fb570572 $ */ @ConsumerType public interface Requirement { @@ -81,6 +81,7 @@ public interface Requirement { * @return {@code true} if this {@code Requirement} is equal to the other * object; {@code false} otherwise. */ + @Override boolean equals(Object obj); /** @@ -88,5 +89,6 @@ public interface Requirement { * * @return The hashCode of this {@code Requirement}. */ + @Override int hashCode(); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Resource.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Resource.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Resource.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Resource.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,7 +30,7 @@ import org.osgi.annotation.versioning.Co * always return the same result. * * @ThreadSafe - * @author $Id: c7b6462fb53b38ac3071d7ba73af9dad2af6b9ce $ + * @author $Id: 6f13a1b536b116eebb255285b958d889db733939 $ */ @ConsumerType public interface Resource { @@ -73,6 +73,7 @@ public interface Resource { * @return {@code true} if this {@code Resource} is equal to the other * object; {@code false} otherwise. */ + @Override boolean equals(Object obj); /** @@ -80,5 +81,6 @@ public interface Resource { * * @return The hashCode of this {@code Resource}. */ + @Override int hashCode(); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wire.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wire.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wire.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wire.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,7 +27,7 @@ import org.osgi.annotation.versioning.Co * always return the same result. * * @ThreadSafe - * @author $Id: 6c248ea2b9b24f3610a14e5e8deec9cd0b7aa1c9 $ + * @author $Id: a0d1c39e16788708ffab9bb00707554f97f09998 $ */ @ConsumerType public interface Wire { @@ -79,6 +79,7 @@ public interface Wire { * @return {@code true} if this {@code Wire} is equal to the other object; * {@code false} otherwise. */ + @Override boolean equals(Object obj); /** @@ -86,5 +87,6 @@ public interface Wire { * * @return The hashCode of this {@code Wire}. */ + @Override int hashCode(); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wiring.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wiring.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wiring.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/resource/Wiring.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.resource; import java.util.List; + import org.osgi.annotation.versioning.ConsumerType; /** @@ -29,7 +30,7 @@ import org.osgi.annotation.versioning.Co * always return the same result. * * @ThreadSafe - * @author $Id: 935272fa914a9cc0020549c43a3857acad2c45cc $ + * @author $Id: 7cb1384266be355d3e727b55e789d36a88299cf6 $ */ @ConsumerType public interface Wiring { @@ -75,22 +76,20 @@ public interface Wiring { /** * Returns the requirements of this wiring. - * * <p> * Only requirements considered by the resolver are returned. For example, * requirements with {@link Namespace#REQUIREMENT_EFFECTIVE_DIRECTIVE * effective} directive not equal to {@link Namespace#EFFECTIVE_RESOLVE * resolve} are not returned. - * * <p> * A wiring for a non-fragment resource has a subset of the declared * requirements from the resource and all attached fragment resources. Not * all declared requirements may be present since some may be discarded. For - * example, if a package is declared to be optionally imported and is not - * actually imported, the requirement must be discarded. + * example, if a package is declared to be both exported and imported, only + * one is selected and the other is discarded. * * @param namespace The namespace of the requirements to return or - * {@code null} to return the requirements from all namespaces. + * {@code null} to return the requirements from all namespaces. * @return A list containing a snapshot of the {@link Requirement}s, or an * empty list if this wiring uses no requirements in the specified * namespace. For a given namespace, the list contains the Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/ExportedPackage.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/ExportedPackage.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/ExportedPackage.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/ExportedPackage.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2001, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2001, 2014). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -45,7 +45,7 @@ import org.osgi.framework.Version; * @noimplement * @deprecated The PackageAdmin service has been replaced by the * <code>org.osgi.framework.wiring</code> package. - * @author $Id: e04a2beb3de2afff4cb01747e589c04b5e0f0cc8 $ + * @author $Id: f4cdb9e84ce788c16d5304166a2b9eeecb5fabf3 $ */ public interface ExportedPackage { /** @@ -85,7 +85,7 @@ public interface ExportedPackage { * * @return The version of this exported package, or {@code null} if no * version information is available. - * @deprecated As of 1.2, replaced by {@link #getVersion()}. + * @deprecated As of 1.2. Replaced by {@link #getVersion()}. */ public String getSpecificationVersion(); Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/PackageAdmin.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/PackageAdmin.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/PackageAdmin.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/PackageAdmin.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2001, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2001, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ import org.osgi.framework.Bundle; * * @ThreadSafe * @noimplement - * @author $Id: 4aad25d2f145d9a2d24825bc481dcc254b74ed51 $ + * @author $Id: 1de8679fcf7df57b019a93219f6b82222eb1525e $ * @deprecated This service has been replaced by the * <code>org.osgi.framework.wiring</code> package. * @see org.osgi.service.packageadmin.ExportedPackage @@ -53,6 +53,7 @@ public interface PackageAdmin { * @throws IllegalArgumentException If the specified {@code Bundle} was * not created by the same framework instance that registered this * {@code PackageAdmin} service. + * @deprecated */ public ExportedPackage[] getExportedPackages(Bundle bundle); @@ -64,6 +65,7 @@ public interface PackageAdmin { * @return An array of the exported packages, or {@code null} if no * exported packages with the specified name exists. * @since 1.2 + * @deprecated */ public ExportedPackage[] getExportedPackages(String name); @@ -79,6 +81,7 @@ public interface PackageAdmin { * @return The exported package, or {@code null} if no exported * package with the specified name exists. * @see #getExportedPackages(String) + * @deprecated */ public ExportedPackage getExportedPackage(String name); @@ -186,6 +189,7 @@ public interface PackageAdmin { * @return An array of required bundles or {@code null} if no * required bundles exist for the specified symbolic name. * @since 1.2 + * @deprecated */ public RequiredBundle[] getRequiredBundles(String symbolicName); @@ -259,7 +263,7 @@ public interface PackageAdmin { * this {@code PackageAdmin} service. * @since 1.2 */ - public Bundle getBundle(Class clazz); + public Bundle getBundle(Class<?> clazz); /** * Bundle type indicating the bundle is a fragment bundle. Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/package-info.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/package-info.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/package-info.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/packageadmin/package-info.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,8 +31,10 @@ * <p> * {@code Import-Package: org.osgi.service.packageadmin; version="[1.2,2.0)"} * - * @version 1.2 * @author $Id$ */ +@Version("1.2") package org.osgi.service.packageadmin; + +import org.osgi.annotation.versioning.Version; Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/startlevel/package-info.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/startlevel/package-info.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/startlevel/package-info.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/startlevel/package-info.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,8 +31,10 @@ * <p> * {@code Import-Package: org.osgi.service.startlevel; version="[1.1,2.0)"} * - * @version 1.1 * @author $Id$ */ +@Version("1.1") package org.osgi.service.startlevel; + +import org.osgi.annotation.versioning.Version; Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2002, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2002, 2015). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,7 +31,7 @@ import org.osgi.annotation.versioning.Co * {@code setURL} and {@code parseURL(URLStreamHandlerSetter,...)} methods. * * @ThreadSafe - * @author $Id: 79cfc45d97b037436d50bda26111109bd5d42a37 $ + * @author $Id: 71ce6a3846e0b82b2e096ae7617c2af7a1297f0e $ */ @ConsumerType public abstract class AbstractURLStreamHandlerService extends URLStreamHandler implements URLStreamHandlerService { @@ -56,6 +56,7 @@ public abstract class AbstractURLStreamH * invoked for the specified URL. * @see "java.net.URLStreamHandler.parseURL" */ + @Override public void parseURL(@SuppressWarnings("hiding") URLStreamHandlerSetter realHandler, URL u, String spec, int start, int limit) { this.realHandler = realHandler; parseURL(u, spec, start, limit); @@ -139,7 +140,7 @@ public abstract class AbstractURLStreamH * @deprecated This method is only for compatibility with handlers written * for JDK 1.1. */ - @SuppressWarnings("javadoc") + @Override protected void setURL(URL u, String proto, String host, int port, String file, String ref) { realHandler.setURL(u, proto, host, port, file, ref); } Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/BundleTracker.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/BundleTracker.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/BundleTracker.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/BundleTracker.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2007, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2007, 2017). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,6 +18,8 @@ package org.osgi.util.tracker; import java.util.HashMap; import java.util.Map; + +import org.osgi.annotation.versioning.ConsumerType; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; import org.osgi.framework.BundleEvent; @@ -44,9 +46,10 @@ import org.osgi.framework.SynchronousBun * * @param <T> The type of the tracked object. * @ThreadSafe - * @author $Id: 9a1b57568a8be735292700584f4eb936fc80f2ff $ + * @author $Id: ac16c218a0df059303f253a33523f753000623c4 $ * @since 1.4 */ +@ConsumerType public class BundleTracker<T> implements BundleTrackerCustomizer<T> { /* set this to true to compile in debug messages */ static final boolean DEBUG = false; @@ -217,6 +220,7 @@ public class BundleTracker<T> implements * @return The specified bundle. * @see BundleTrackerCustomizer#addingBundle(Bundle, BundleEvent) */ + @Override public T addingBundle(Bundle bundle, BundleEvent event) { @SuppressWarnings("unchecked") T result = (T) bundle; @@ -241,6 +245,7 @@ public class BundleTracker<T> implements * @param object The customized object for the specified Bundle. * @see BundleTrackerCustomizer#modifiedBundle(Bundle, BundleEvent, Object) */ + @Override public void modifiedBundle(Bundle bundle, BundleEvent event, T object) { /* do nothing */ } @@ -263,6 +268,7 @@ public class BundleTracker<T> implements * @param object The customized object for the specified bundle. * @see BundleTrackerCustomizer#removedBundle(Bundle, BundleEvent, Object) */ + @Override public void removedBundle(Bundle bundle, BundleEvent event, T object) { /* do nothing */ } @@ -280,11 +286,10 @@ public class BundleTracker<T> implements return null; } synchronized (t) { - int length = t.size(); - if (length == 0) { + if (t.isEmpty()) { return null; } - return t.copyKeys(new Bundle[length]); + return t.copyKeys(new Bundle[0]); } } @@ -426,6 +431,7 @@ public class BundleTracker<T> implements * * @param event {@code BundleEvent} object from the framework. */ + @Override public void bundleChanged(final BundleEvent event) { /* * Check if we had a delayed call (which could happen when we Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/ServiceTracker.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/ServiceTracker.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/ServiceTracker.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/ServiceTracker.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2000, 2014). All Rights Reserved. + * Copyright (c) OSGi Alliance (2000, 2017). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,6 +20,8 @@ import java.lang.reflect.Array; import java.util.Collections; import java.util.SortedMap; import java.util.TreeMap; + +import org.osgi.annotation.versioning.ConsumerType; import org.osgi.framework.AllServiceListener; import org.osgi.framework.BundleContext; import org.osgi.framework.Constants; @@ -52,8 +54,9 @@ import org.osgi.framework.ServiceReferen * @param <S> The type of the service being tracked. * @param <T> The type of the tracked object. * @ThreadSafe - * @author $Id: a0af979aa9c88a89f220c1b2d8d7c060ced41006 $ + * @author $Id: 3c9016c43c6289259f97470eff4c9986b6fb887a $ */ +@ConsumerType public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { /* set this to true to compile in debug messages */ static final boolean DEBUG = false; @@ -387,15 +390,13 @@ public class ServiceTracker<S, T> implem /** * Default implementation of the * {@code ServiceTrackerCustomizer.addingService} method. - * * <p> * This method is only called when this {@code ServiceTracker} has been * constructed with a {@code null ServiceTrackerCustomizer} argument. - * * <p> - * This implementation returns the result of calling {@code getService} on + * This implementation returns the result of calling {@code getService}, on * the {@code BundleContext} with which this {@code ServiceTracker} was - * created passing the specified {@code ServiceReference}. + * created, passing the specified {@code ServiceReference}. * <p> * This method can be overridden in a subclass to customize the service * object to be tracked for the service being added. In that case, take care @@ -404,11 +405,12 @@ public class ServiceTracker<S, T> implem * the service. * * @param reference The reference to the service being added to this - * {@code ServiceTracker}. + * {@code ServiceTracker}. * @return The service object to be tracked for the service added to this * {@code ServiceTracker}. * @see ServiceTrackerCustomizer#addingService(ServiceReference) */ + @Override public T addingService(ServiceReference<S> reference) { @SuppressWarnings("unchecked") T result = (T) context.getService(reference); @@ -430,6 +432,7 @@ public class ServiceTracker<S, T> implem * @param service The service object for the modified service. * @see ServiceTrackerCustomizer#modifiedService(ServiceReference, Object) */ + @Override public void modifiedService(ServiceReference<S> reference, T service) { /* do nothing */ } @@ -437,11 +440,9 @@ public class ServiceTracker<S, T> implem /** * Default implementation of the * {@code ServiceTrackerCustomizer.removedService} method. - * * <p> * This method is only called when this {@code ServiceTracker} has been * constructed with a {@code null ServiceTrackerCustomizer} argument. - * * <p> * This implementation calls {@code ungetService}, on the * {@code BundleContext} with which this {@code ServiceTracker} was created, @@ -455,6 +456,7 @@ public class ServiceTracker<S, T> implem * @param service The service object for the removed service. * @see ServiceTrackerCustomizer#removedService(ServiceReference, Object) */ + @Override public void removedService(ServiceReference<S> reference, T service) { context.ungetService(reference); } @@ -526,12 +528,11 @@ public class ServiceTracker<S, T> implem return null; } synchronized (t) { - int length = t.size(); - if (length == 0) { + if (t.isEmpty()) { return null; } @SuppressWarnings("unchecked") - ServiceReference<S>[] result = new ServiceReference[length]; + ServiceReference<S>[] result = new ServiceReference[0]; return t.copyKeys(result); } } @@ -881,6 +882,7 @@ public class ServiceTracker<S, T> implem * * @param event {@code ServiceEvent} object from the framework. */ + @Override final public void serviceChanged(final ServiceEvent event) { /* * Check if we had a delayed call (which could happen when we Modified: felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/package-info.java URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/package-info.java?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/package-info.java (original) +++ felix/trunk/osgi-r7/framework/src/main/java/org/osgi/util/tracker/package-info.java Fri Feb 23 15:11:00 2018 @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2016). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ * @author $Id$ */ -@Version("1.5.1") +@Version("1.5.2") package org.osgi.util.tracker; import org.osgi.annotation.versioning.Version; Modified: felix/trunk/osgi-r7/framework/src/main/resources/default.properties URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/framework/src/main/resources/default.properties?rev=1825132&r1=1825072&r2=1825132&view=diff ============================================================================== --- felix/trunk/osgi-r7/framework/src/main/resources/default.properties (original) +++ felix/trunk/osgi-r7/framework/src/main/resources/default.properties Fri Feb 23 15:11:00 2018 @@ -121,26 +121,27 @@ ee-1.3=J2SE-1.3,J2SE-1.2,JRE-1.1,JRE-1.0 ee-1.2=J2SE-1.2,JRE-1.1,JRE-1.0,OSGi/Minimum-1.1,OSGi/Minimum-1.0 # Default packages exported by system bundle. -org.osgi.framework.system.packages=org.osgi.dto; version=1.0.0, \ - org.osgi.framework; version=1.8.0, \ - org.osgi.framework.dto; version=1.8.0, \ - org.osgi.framework.hooks.bundle; version=1.1.0, \ - org.osgi.framework.hooks.resolver; version=1.0.0, \ - org.osgi.framework.hooks.service; version=1.1.0, \ - org.osgi.framework.hooks.weaving; version=1.1.0, \ - org.osgi.framework.launch; version=1.2.0, \ - org.osgi.framework.namespace; version=1.1.0, \ - org.osgi.framework.startlevel; version=1.0.0, \ - org.osgi.framework.startlevel.dto; version=1.0.0, \ - org.osgi.framework.wiring; version=1.2.0, \ - org.osgi.framework.wiring.dto; version=1.2.0, \ - org.osgi.resource; version=1.0.0, \ - org.osgi.resource.dto; version=1.0.0, \ - org.osgi.service.packageadmin; version=1.2.0, \ - org.osgi.service.resolver; version=1.0.0, \ - org.osgi.service.startlevel; version=1.1.0, \ - org.osgi.service.url; version=1.0.0, \ - org.osgi.util.tracker; version=1.5.1 \ +org.osgi.framework.system.packages=\ + org.osgi.framework;version="1.9", \ + org.osgi.framework.dto;version="1.8";uses:="org.osgi.dto", \ + org.osgi.framework.hooks.bundle;version="1.1";uses:="org.osgi.framework", \ + org.osgi.framework.hooks.resolver;version="1.0";uses:="org.osgi.framework.wiring", \ + org.osgi.framework.hooks.service;version="1.1";uses:="org.osgi.framework", \ + org.osgi.framework.hooks.weaving;version="1.1";uses:="org.osgi.framework.wiring", \ + org.osgi.framework.launch;version="1.2";uses:="org.osgi.framework", \ + org.osgi.framework.namespace;version="1.1";uses:="org.osgi.resource", \ + org.osgi.framework.startlevel;version="1.0";uses:="org.osgi.framework", \ + org.osgi.framework.startlevel.dto;version="1.0";uses:="org.osgi.dto", \ + org.osgi.framework.wiring;version="1.2";uses:="org.osgi.framework,org.osgi.resource", \ + org.osgi.framework.wiring.dto;version="1.3";uses:="org.osgi.dto,org.osgi.resource.dto", \ + org.osgi.resource;version="1.0", \ + org.osgi.resource.dto;version="1.0";uses:="org.osgi.dto", \ + org.osgi.service.packageadmin;version="1.2";uses:="org.osgi.framework", \ + org.osgi.service.startlevel;version="1.1";uses:="org.osgi.framework", \ + org.osgi.service.url;version="1.0", \ + org.osgi.service.resolver;version="1.1";uses:="org.osgi.resource", \ + org.osgi.util.tracker;version="1.5.2";uses:="org.osgi.framework", \ + org.osgi.dto;version="1.1" \ ${dollar}{jre-${dollar}{java.specification.version}} \ ${dollar}{jre-${dollar}{felix.detect.jpms}}