You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2014/07/30 09:22:35 UTC

svn commit: r1614569 [4/5] - in /felix/trunk/framework: ./ src/main/appended-resources/META-INF/ src/main/java/org/apache/felix/framework/ src/main/java/org/osgi/dto/ src/main/java/org/osgi/framework/ src/main/java/org/osgi/framework/dto/ src/main/java...

Added: felix/trunk/framework/src/main/java/org/osgi/framework/launch/package-info.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/launch/package-info.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/launch/package-info.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/launch/package-info.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) OSGi Alliance (2010, 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.
+ * 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.
+ */
+
+/**
+ * Framework Launch Package Version 1.2.
+ *
+ * <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.launch; version="[1.2,2.0)"}
+ *
+ * @author $Id$
+ */
+
+@Version("1.2")
+package org.osgi.framework.launch;
+
+import org.osgi.annotation.versioning.Version;
+

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/launch/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/launch/package-info.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/launch/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/launch/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/launch/packageinfo?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/launch/packageinfo (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/launch/packageinfo Wed Jul 30 07:22:32 2014
@@ -0,0 +1 @@
+version 1.2

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/AbstractWiringNamespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/AbstractWiringNamespace.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/AbstractWiringNamespace.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/AbstractWiringNamespace.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.
@@ -16,6 +16,7 @@
 
 package org.osgi.framework.namespace;
 
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.resource.Namespace;
 
 /**
@@ -31,8 +32,9 @@ import org.osgi.resource.Namespace;
  * otherwise indicated.
  * 
  * @Immutable
- * @version $Id: 383e84df9190757ce6bb6fb722e80a3b7d6b68da $
+ * @author $Id: 6bbd0ddefc452b0ace2f43ec3aa67a687adcf03c $
  */
+@ProviderType
 public abstract class AbstractWiringNamespace extends Namespace {
 
 	/**

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/BundleNamespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/BundleNamespace.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/BundleNamespace.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/BundleNamespace.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.
@@ -66,7 +66,7 @@ import org.osgi.resource.Namespace;
  * capability.
  * 
  * @Immutable
- * @version $Id: 339f1204725aa9d9c2463b1224b2e38e505024e9 $
+ * @author $Id: 2672d40cf3705b2cf21d01530e4bdfa2cdc61764 $
  */
 public final class BundleNamespace extends AbstractWiringNamespace {
 

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/ExecutionEnvironmentNamespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/ExecutionEnvironmentNamespace.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/ExecutionEnvironmentNamespace.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/ExecutionEnvironmentNamespace.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.resource.Namespace;
  * {@code String}, unless otherwise indicated.
  * 
  * @Immutable
- * @version $Id: e1c30aac8efacc1b21ab20ffebcc1af30a1054a8 $
+ * @author $Id: 45a233050d35a5debc8a7d1be1f7e81178916984 $
  */
 public final class ExecutionEnvironmentNamespace extends Namespace {
 

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/HostNamespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/HostNamespace.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/HostNamespace.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/HostNamespace.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.
@@ -66,7 +66,7 @@ import org.osgi.resource.Namespace;
  * capability.
  * 
  * @Immutable
- * @version $Id: aa3cc744c7b9c21d908260f456567ab8a6de1430 $
+ * @author $Id: a7cbf04c393bfaaa7515804a8ab6b9ebfd72fbe5 $
  */
 public final class HostNamespace extends AbstractWiringNamespace {
 
@@ -132,7 +132,7 @@ public final class HostNamespace extends
 
 	/**
 	 * The requirement directive used to specify the type of the extension
-	 * fragment.
+	 * fragment. The default value is {@link #EXTENSION_FRAMEWORK framework}.
 	 * 
 	 * @see #EXTENSION_FRAMEWORK
 	 * @see #EXTENSION_BOOTCLASSPATH

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/IdentityNamespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/IdentityNamespace.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/IdentityNamespace.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/IdentityNamespace.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.
@@ -41,7 +41,7 @@ import org.osgi.resource.Namespace;
  * capability.
  * 
  * @Immutable
- * @version $Id: e34dcaba1f828326a0db13b3d811b2d170ff97a5 $
+ * @author $Id: 7bc7a11c45b30538ffbb7572c4539f6160557684 $
  */
 public final class IdentityNamespace extends Namespace {
 

Added: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.namespace;
+
+import org.osgi.framework.Constants;
+import org.osgi.resource.Namespace;
+
+/**
+ * Native Capability and Requirement Namespace.
+ * 
+ * <p>
+ * This class defines the names for the attributes and directives for this
+ * namespace. All unspecified capability attributes are of type {@code String}
+ * and are used as arbitrary matching attributes for the capability. The values
+ * associated with the specified directive and attribute keys are of type
+ * {@code String}, unless otherwise indicated.
+ * 
+ * @Immutable
+ * @author $Id$
+ */
+public final class NativeNamespace extends Namespace {
+
+	/**
+	 * Namespace name for native capabilities and requirements.
+	 */
+	public static final String	NATIVE_NAMESPACE				= "osgi.native";
+
+	/**
+	 * 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
+	 * {@code List<String>}.
+	 */
+	public final static String	CAPABILITY_OSNAME_ATTRIBUTE		= NATIVE_NAMESPACE + ".osname";
+
+	/**
+	 * The capability attribute contains a {@code Version} parsed from the
+	 * {@link Constants#FRAMEWORK_OS_VERSION org.osgi.framework.os.version}
+	 * launching property value. The value of this attribute must be of type
+	 * {@code Version}.
+	 */
+	public final static String	CAPABILITY_OSVERSION_ATTRIBUTE	= NATIVE_NAMESPACE + ".osversion";
+
+	/**
+	 * 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
+	 * {@code List<String>}.
+	 */
+	public final static String	CAPABILITY_PROCESSOR_ATTRIBUTE	= NATIVE_NAMESPACE + ".processor";
+
+	/**
+	 * The capability attribute contains the
+	 * {@link Constants#FRAMEWORK_LANGUAGE org.osgi.framework.language}
+	 * launching property value. The value of this attribute must be of type
+	 * {@code String}.
+	 */
+	public final static String	CAPABILITY_LANGUAGE_ATTRIBUTE	= NATIVE_NAMESPACE + ".language";
+
+	private NativeNamespace() {
+		// empty
+	}
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/NativeNamespace.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/PackageNamespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/PackageNamespace.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/PackageNamespace.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/PackageNamespace.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.
@@ -59,7 +59,7 @@ import org.osgi.resource.Namespace;
  * </ul>
  * 
  * @Immutable
- * @version $Id: 5adc45bd1ae26120cbff3562c7c8cefc01e38bd3 $
+ * @author $Id: 5f241fb0804d477ab8f2d33f247d45e62caf72df $
  */
 public final class PackageNamespace extends AbstractWiringNamespace {
 

Added: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/package-info.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/package-info.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/package-info.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/package-info.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.
+ */
+
+/**
+ * Namespace Package Version 1.1.
+ * 
+ * <p>
+ * Bundles should not need to import this package at runtime since all
+ * the types in this package just contain constants for capability and 
+ * requirement namespaces specified by the OSGi Alliance.
+ * 
+ * @author $Id$
+ */
+
+@Version("1.1")
+package org.osgi.framework.namespace;
+
+import org.osgi.annotation.versioning.Version;
+

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/package-info.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/namespace/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/namespace/packageinfo?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/namespace/packageinfo (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/namespace/packageinfo Wed Jul 30 07:22:32 2014
@@ -0,0 +1 @@
+version 1.1

Added: felix/trunk/framework/src/main/java/org/osgi/framework/package-info.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/package-info.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/package-info.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/package-info.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) OSGi Alliance (2010, 2013). 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.
+ */
+
+/**
+ * Framework Package Version 1.8.
+ * 
+ * <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)"}
+ * 
+ * @author $Id$
+ */
+
+@Version("1.8")
+package org.osgi.framework;
+
+import org.osgi.annotation.versioning.Version;
+

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/package-info.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/packageinfo?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/packageinfo (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/packageinfo Wed Jul 30 07:22:32 2014
@@ -0,0 +1 @@
+version 1.8

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/BundleStartLevel.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/BundleStartLevel.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/BundleStartLevel.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/BundleStartLevel.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2010). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2010, 2013). 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.
@@ -16,6 +16,7 @@
 
 package org.osgi.framework.startlevel;
 
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleReference;
 
@@ -29,9 +30,9 @@ import org.osgi.framework.BundleReferenc
  * calling {@link BundleReference#getBundle()}.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: 9a000be191fe3cb4ae82535a30940db0340d5356 $
+ * @author $Id: 421ffd6e9c48cda1bcd28c62e9ace1c05852f112 $
  */
+@ProviderType
 public interface BundleStartLevel extends BundleReference {
 	/**
 	 * Return the assigned start level value for the bundle.

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/FrameworkStartLevel.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/FrameworkStartLevel.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/FrameworkStartLevel.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/FrameworkStartLevel.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2002, 2011). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2013). 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.
@@ -16,6 +16,7 @@
 
 package org.osgi.framework.startlevel;
 
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleReference;
 import org.osgi.framework.FrameworkListener;
@@ -32,9 +33,9 @@ import org.osgi.framework.FrameworkListe
  * obtained by calling {@link BundleReference#getBundle()}.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: 12c6f60842df994c7de2cc3cfd02f791b95fc35b $
+ * @author $Id: de8d10036e85359428ca3e14bbe9b2c6d448fb93 $
  */
+@ProviderType
 public interface FrameworkStartLevel extends BundleReference {
 	/**
 	 * Return the active start level value of the Framework.
@@ -69,13 +70,13 @@ public interface FrameworkStartLevel ext
 	 * At each intermediate start level value on the way to and including the
 	 * target start level, the Framework must:
 	 * <ol>
-	 * <li>Change the active start level to the intermediate start level value.
+	 * <li>Change the active start level to the intermediate start level value.</li>
 	 * <li>Start bundles at the intermediate start level whose autostart setting
 	 * indicate they must be started. They are started as described in the
 	 * {@link Bundle#start(int)} method using the {@link Bundle#START_TRANSIENT}
 	 * option. The {@link Bundle#START_ACTIVATION_POLICY} option must also be
 	 * used if {@link BundleStartLevel#isActivationPolicyUsed()} returns
-	 * {@code true} for the bundle.
+	 * {@code true} for the bundle.</li>
 	 * </ol>
 	 * When this process completes after the specified start level is reached,
 	 * the Framework will fire a Framework event of type
@@ -92,8 +93,8 @@ public interface FrameworkStartLevel ext
 	 * <ol>
 	 * <li>Stop bundles at the intermediate start level as described in the
 	 * {@link Bundle#stop(int)} method using the {@link Bundle#STOP_TRANSIENT}
-	 * option.
-	 * <li>Change the active start level to the intermediate start level value.
+	 * option.</li>
+	 * <li>Change the active start level to the intermediate start level value.</li>
 	 * </ol>
 	 * When this process completes after the specified start level is reached,
 	 * the Framework will fire a Framework event of type

Added: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/BundleStartLevelDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/BundleStartLevelDTO.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/BundleStartLevelDTO.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/BundleStartLevelDTO.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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.startlevel.dto;
+
+import org.osgi.dto.DTO;
+import org.osgi.framework.startlevel.BundleStartLevel;
+
+/**
+ * Data Transfer Object for a BundleStartLevel.
+ * 
+ * <p>
+ * An installed Bundle can be adapted to provide a {@code BundleStartLevelDTO}
+ * for the Bundle.
+ * 
+ * @author $Id$
+ * @NotThreadSafe
+ */
+public class BundleStartLevelDTO extends DTO {
+    /**
+	 * The id of the bundle associated with this start level.
+	 * 
+	 * @see BundleStartLevel#getBundle()
+	 */
+    public long    bundle;
+
+    /**
+	 * The assigned start level value for the bundle.
+	 * 
+	 * @see BundleStartLevel#getStartLevel()
+	 */
+    public int     startLevel;
+
+    /**
+	 * The bundle's autostart setting indicates that the activation policy
+	 * declared in the bundle manifest must be used.
+	 * 
+	 * @see BundleStartLevel#isActivationPolicyUsed()
+	 */
+    public boolean activationPolicyUsed;
+
+    /**
+	 * The bundle's autostart setting indicates it must be started.
+	 * 
+	 * @see BundleStartLevel#isPersistentlyStarted()
+	 */
+    public boolean persistentlyStarted;
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/BundleStartLevelDTO.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/BundleStartLevelDTO.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/BundleStartLevelDTO.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/FrameworkStartLevelDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/FrameworkStartLevelDTO.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/FrameworkStartLevelDTO.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/FrameworkStartLevelDTO.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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.startlevel.dto;
+
+import org.osgi.dto.DTO;
+import org.osgi.framework.startlevel.FrameworkStartLevel;
+
+/**
+ * Data Transfer Object for a FrameworkStartLevel.
+ * 
+ * <p>
+ * The System Bundle can be adapted to provide a {@code FrameworkStartLevelDTO}
+ * for the framework of the Bundle.
+ * 
+ * @author $Id$
+ * @NotThreadSafe
+ */
+public class FrameworkStartLevelDTO extends DTO {
+    /**
+	 * The active start level value for the framework.
+	 * 
+	 * @see FrameworkStartLevel#getStartLevel()
+	 */
+    public int startLevel;
+
+    /**
+	 * The initial start level value that is assigned to a bundle when it is
+	 * first installed.
+	 * 
+	 * @see FrameworkStartLevel#getInitialBundleStartLevel()
+	 */
+    public int initialBundleStartLevel;
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/FrameworkStartLevelDTO.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/FrameworkStartLevelDTO.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/FrameworkStartLevelDTO.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/package-info.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/package-info.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/package-info.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/package-info.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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.
+ */
+
+/**
+ * OSGi Data Transfer Object Framework Start Level Package Version 1.0.
+ * 
+ * <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.startlevel.dto; version="[1.0,2.0)"}
+ * <p>
+ * Example import for providers implementing the API in this package:
+ * <p>
+ * {@code  Import-Package: org.osgi.framework.startlevel.dto; version="[1.0,1.1)"}
+ * 
+ * @author $Id$
+ */
+
+@Version("1.0")
+package org.osgi.framework.startlevel.dto;
+
+import org.osgi.annotation.versioning.Version;
+

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/package-info.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/packageinfo?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/packageinfo (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/dto/packageinfo Wed Jul 30 07:22:32 2014
@@ -0,0 +1 @@
+version 1.0

Added: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/package-info.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/package-info.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/package-info.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/package-info.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) OSGi Alliance (2010, 2013). 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.
+ */
+
+/**
+ * Framework Start Level Package Version 1.0.
+ * 
+ * <p>
+ * The Framework Start Level package allows management agents to manage a start
+ * level assigned to each bundle and the active start level of the Framework.
+ * This package is a replacement for the now deprecated
+ * {@code org.osgi.service.startlevel} package.
+ * 
+ * <p>
+ * A start level is defined to be a state of execution in which the Framework
+ * exists. Start level values are defined as unsigned integers with 0 (zero)
+ * being the state where the Framework is not launched. Progressively higher
+ * integral values represent progressively higher start levels. For example, 2
+ * is a higher start level than 1.
+ * 
+ * <p>
+ * {@code AdminPermission} is required to modify start level information.
+ * 
+ * <p>
+ * Start Level support in the Framework includes the ability to modify the
+ * active start level of the Framework and to assign a specific start level to a
+ * bundle. The beginning start level of a Framework is specified via the
+ * {@link org.osgi.framework.Constants#FRAMEWORK_BEGINNING_STARTLEVEL} framework
+ * property when configuring a framework.
+ * 
+ * <p>
+ * When the Framework is first started it must be at start level zero. In this
+ * state, no bundles are running. This is the initial state of the Framework
+ * before it is launched. When the Framework is launched, the Framework will
+ * enter start level one and all bundles which are assigned to start level one
+ * and whose autostart setting indicates the bundle should be started are
+ * started as described in the {@link org.osgi.framework.Bundle#start(int)}
+ * method. The Framework will continue to increase the start level, starting
+ * bundles at each start level, until the Framework has reached a beginning
+ * start level. At this point the Framework has completed starting bundles and
+ * will then fire a Framework event of type
+ * {@link org.osgi.framework.FrameworkEvent#STARTED} to announce it has
+ * completed its launch.
+ * 
+ * <p>
+ * Within a start level, bundles may be started in an order defined by the
+ * Framework implementation. This may be something like ascending
+ * {@link org.osgi.framework.Bundle#getBundleId()} order or an order based upon
+ * dependencies between bundles. A similar but reversed order may be used when
+ * stopping bundles within a start level.
+ * 
+ * <p>
+ * The Framework Start Level package can be used by management bundles to alter
+ * the active start level of the framework.
+ * 
+ * <p>
+ * Bundles wishing to use this package must list the package in the
+ * Import-Package header of the bundle's manifest. For example:
+ * 
+ * <pre>
+ * Import-Package: org.osgi.framework.startlevel; version=&quot;[1.0,2.0)&quot;
+ * </pre>
+ * 
+ * @author $Id$
+ */
+
+@Version("1.0")
+package org.osgi.framework.startlevel;
+
+import org.osgi.annotation.versioning.Version;
+

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/package-info.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/packageinfo?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/packageinfo (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/startlevel/packageinfo Wed Jul 30 07:22:32 2014
@@ -0,0 +1 @@
+version 1.0

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleCapability.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2010, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2010, 2013). 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.framework.wiring;
 
 import java.util.Map;
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.framework.namespace.AbstractWiringNamespace;
 import org.osgi.resource.Capability;
 
@@ -25,9 +26,9 @@ import org.osgi.resource.Capability;
  * revision}.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: 39086f7e6086c2b3d83fbcb976a011cf69483ad8 $
+ * @author $Id: 834fb5779fb3c1b1b16ab25ffa4ab97a131b1262 $
  */
+@ProviderType
 public interface BundleCapability extends Capability {
 
 	/**

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRequirement.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2010, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2010, 2013). 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.framework.wiring;
 
 import java.util.Map;
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.framework.namespace.AbstractWiringNamespace;
 import org.osgi.resource.Requirement;
 
@@ -25,9 +26,9 @@ import org.osgi.resource.Requirement;
  * revision}.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: 212ffb64f724d982db86ff7e49ed64ea530e670a $
+ * @author $Id: ac0578af567754bcd12c63a350c06afdd1bfec05 $
  */
+@ProviderType
 public interface BundleRequirement extends Requirement {
 	/**
 	 * Returns the bundle revision declaring this requirement.

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevision.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2010, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2010, 2013). 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.framework.wiring;
 
 import java.util.List;
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleReference;
 import org.osgi.framework.Constants;
@@ -51,9 +52,9 @@ import org.osgi.resource.Resource;
  * {@link Constants#REQUIRE_CAPABILITY Require-Capability} manifest headers.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: e68e01a670f0ae9d6eb736414f875c8b216ed1bc $
+ * @author $Id: 1f318afdf8f5fe6097a841b49b67bf67d8c924f2 $
  */
+@ProviderType
 public interface BundleRevision extends BundleReference, Resource {
 	/**
 	 * Returns the symbolic name for this bundle revision.
@@ -235,7 +236,7 @@ public interface BundleRevision extends 
 	 * Returns the special types of this bundle revision. The bundle revision
 	 * type values are:
 	 * <ul>
-	 * <li>{@link #TYPE_FRAGMENT}
+	 * <li>{@link #TYPE_FRAGMENT}</li>
 	 * </ul>
 	 * 
 	 * A bundle revision may be more than one type at a time. A type code is

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevisions.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevisions.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevisions.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleRevisions.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). 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.framework.wiring;
 
 import java.util.List;
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleReference;
 
@@ -36,9 +37,9 @@ import org.osgi.framework.BundleReferenc
  * {@link #getRevisions()} on the bundle.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: 8423242078417873faf0f8979e153e3c1f3a0e4b $
+ * @author $Id: 83e7bf03af2150a54af13a319325856e532cefde $
  */
+@ProviderType
 public interface BundleRevisions extends BundleReference {
 	/**
 	 * Return the bundle revisions for the {@link BundleReference#getBundle()

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWire.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). 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.
@@ -16,15 +16,16 @@
 
 package org.osgi.framework.wiring;
 
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.resource.Wire;
 
 /**
  * A wire connecting a {@link BundleCapability} to a {@link BundleRequirement}.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: 02e7cd6ec0fa9fdb73f782a6890984d5d4e7ca21 $
+ * @author $Id: f51255c8510d4b513dc2bb70c2274d9c51e9b9e5 $
  */
+@ProviderType
 public interface BundleWire extends Wire {
 	/**
 	 * Returns the {@link BundleCapability} for this wire.

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/BundleWiring.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2010, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2010, 2013). 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;
 import org.osgi.framework.namespace.IdentityNamespace;
@@ -52,9 +53,9 @@ import org.osgi.resource.Wiring;
  * a bundle returns {@code null}.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: a3b3fd7ad7d289a5bfc6e4e02c875bc42a34df89 $
+ * @author $Id: 367499c4b37683c52e622f479242a9caf7e59b0f $
  */
+@ProviderType
 public interface BundleWiring extends BundleReference, Wiring {
 	/**
 	 * Returns {@code true} if this bundle wiring is the current bundle wiring.
@@ -113,8 +114,8 @@ public interface BundleWiring extends Bu
 	 *         an empty list if this bundle wiring provides no capabilities in
 	 *         the specified namespace. If this bundle wiring is not
 	 *         {@link #isInUse() in use}, {@code null} will be returned. For a
-	 *         given namespace, the list contains the wires in the order the
-	 *         capabilities were specified in the manifests of the
+	 *         given namespace, the list contains the capabilities in the order
+	 *         the capabilities were specified in the manifests of the
 	 *         {@link #getRevision() bundle revision} and the attached
 	 *         fragments<sup>&#8224;</sup> of this bundle wiring. There is no
 	 *         ordering defined between capabilities in different namespaces.
@@ -143,8 +144,8 @@ public interface BundleWiring extends Bu
 	 *         or an empty list if this bundle wiring uses no requirements in
 	 *         the specified namespace. If this bundle wiring is not
 	 *         {@link #isInUse() in use}, {@code null} will be returned. For a
-	 *         given namespace, the list contains the wires in the order the
-	 *         requirements were specified in the manifests of the
+	 *         given namespace, the list contains the requirements in the order
+	 *         the requirements were specified in the manifests of the
 	 *         {@link #getRevision() bundle revision} and the attached fragments
 	 *         of this bundle wiring. There is no ordering defined between
 	 *         requirements in different namespaces.
@@ -176,9 +177,10 @@ public interface BundleWiring extends Bu
 	 * requirements} in use by this bundle wiring.
 	 * 
 	 * <p>
-	 * This method may return different results if this bundle wiring adds wires
-	 * to more requirements. For example, dynamically importing a package will
-	 * establish a new wire to the dynamically imported package.
+	 * This method may return different results if this bundle wiring
+	 * establishes additional wires to more requirements. For example,
+	 * dynamically importing a package will establish a new wire to the
+	 * dynamically imported package.
 	 * 
 	 * @param namespace The namespace of the requirements for which to return
 	 *        wires or {@code null} to return the wires for the requirements in
@@ -191,8 +193,9 @@ public interface BundleWiring extends Bu
 	 *         given namespace, the list contains the wires in the order the
 	 *         requirements were specified in the manifests of the
 	 *         {@link #getRevision() bundle revision} and the attached fragments
-	 *         of this bundle wiring. There is no ordering defined between
-	 *         requirements in different namespaces.
+	 *         of this bundle wiring followed by dynamically established wires,
+	 *         if any, in the order they were established. There is no ordering
+	 *         defined between requirements in different namespaces.
 	 */
 	List<BundleWire> getRequiredWires(String namespace);
 
@@ -302,9 +305,9 @@ public interface BundleWiring extends Bu
 	 * <li>Only the resource names for resources in bundle wirings will be
 	 * returned. The names of resources visible to a bundle wiring's parent
 	 * class loader, such as the bootstrap class loader, must not be included in
-	 * the result.
+	 * the result.</li>
 	 * <li>Only established wires will be examined for resources. This method
-	 * must not cause new wires for dynamic imports to be established.
+	 * must not cause new wires for dynamic imports to be established.</li>
 	 * </ul>
 	 * 
 	 * @param path The path name in which to look. The path is always relative
@@ -405,7 +408,7 @@ public interface BundleWiring extends Bu
 	 * @return A list containing a snapshot of the {@link Capability}s, or an
 	 *         empty list if this wiring provides no capabilities in the
 	 *         specified namespace. For a given namespace, the list contains the
-	 *         wires in the order the capabilities were specified in the
+	 *         capabilities in the order the capabilities were specified in the
 	 *         manifests of the {@link #getResource() resource} and the attached
 	 *         fragment resources<sup>&#8224;</sup> of this wiring. There is no
 	 *         ordering defined between capabilities in different namespaces.
@@ -436,11 +439,11 @@ public interface BundleWiring extends Bu
 	 *        {@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 wires in
-	 *         the order the requirements were specified in the manifests of the
-	 *         {@link #getResource() resource} and the attached fragment
-	 *         resources of this wiring. There is no ordering defined between
-	 *         requirements in different namespaces.
+	 *         namespace. For a given namespace, the list contains the
+	 *         requirements in the order the requirements were specified in the
+	 *         manifests of the {@link #getResource() resource} and the attached
+	 *         fragment resources of this wiring. There is no ordering defined
+	 *         between requirements in different namespaces.
 	 * @since 1.1
 	 */
 	List<Requirement> getResourceRequirements(String namespace);

Modified: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/FrameworkWiring.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/FrameworkWiring.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/FrameworkWiring.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/FrameworkWiring.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2001, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2001, 2013). 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,9 +17,11 @@
 package org.osgi.framework.wiring;
 
 import java.util.Collection;
+import org.osgi.annotation.versioning.ProviderType;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleReference;
 import org.osgi.framework.FrameworkListener;
+import org.osgi.resource.Requirement;
 
 /**
  * Query and modify wiring information for the framework. The framework wiring
@@ -32,9 +34,9 @@ import org.osgi.framework.FrameworkListe
  * by calling {@link BundleReference#getBundle()}.
  * 
  * @ThreadSafe
- * @noimplement
- * @version $Id: bff4cdf85c632e2946e18c1640a86e80c069dd37 $
+ * @author $Id: 1ab9112badc94f802ccda966f7b73584f2a5c412 $
  */
+@ProviderType
 public interface FrameworkWiring extends BundleReference {
 	/**
 	 * Refreshes the specified bundles. This forces the update (replacement) or
@@ -53,27 +55,23 @@ public interface FrameworkWiring extends
 	 * <li>Compute the {@link #getDependencyClosure(Collection) dependency
 	 * closure} of the specified bundles. If no bundles are specified, compute
 	 * the dependency closure of the {@link #getRemovalPendingBundles() removal
-	 * pending} bundles.
-	 * 
+	 * pending} bundles.</li>
 	 * <li>Each bundle in the dependency closure that is in the {@code ACTIVE}
-	 * state will be stopped as described in the {@code Bundle.stop} method.
-	 * 
+	 * state will be stopped as described in the {@code Bundle.stop} method.</li>
 	 * <li>Each bundle in the dependency closure that is in the {@code RESOLVED}
 	 * state is unresolved and thus moved to the {@code INSTALLED} state. The
 	 * effect of this step is that bundles in the dependency closure are no
-	 * longer {@code RESOLVED}.
-	 * 
+	 * longer {@code RESOLVED}.</li>
 	 * <li>Each bundle in the dependency closure that is in the
 	 * {@code UNINSTALLED} state is removed from the dependency closure and is
-	 * now completely removed from the Framework.
-	 * 
+	 * now completely removed from the Framework.</li>
 	 * <li>Each bundle in the dependency closure that was in the {@code ACTIVE}
 	 * state prior to Step 2 is started as described in the {@code Bundle.start}
 	 * method, causing all bundles required for the restart to be resolved. It
 	 * is possible that, as a result of the previous steps, packages that were
 	 * previously exported no longer are. Therefore, some bundles may be
 	 * unresolvable until bundles satisfying the dependencies have been
-	 * installed in the Framework.
+	 * installed in the Framework.</li>
 	 * </ol>
 	 * 
 	 * <p>
@@ -171,4 +169,34 @@ public interface FrameworkWiring extends
 	 *         FrameworkWiring.
 	 */
 	Collection<Bundle> getDependencyClosure(Collection<Bundle> bundles);
+
+	/**
+	 * Find bundle capabilities that match the given requirement.
+	 * 
+	 * <p>
+	 * The returned collection contains {@link BundleCapability} objects where
+	 * the revision must be the {@link BundleCapability#getRevision() declaring
+	 * revision} of the capability and the revision must either be the current
+	 * bundle revision or an {@link BundleWiring#isInUse() in use} bundle
+	 * revision.
+	 * 
+	 * <p>
+	 * Each returned capability must match the given requirement. This means
+	 * that the filter in the requirement must match as well as any namespace
+	 * specific directives. For example, the mandatory attributes for the
+	 * osgi.wiring.package namespace.
+	 * 
+	 * <p>
+	 * The returned collection has not been filtered to remove capabilities that
+	 * are non-effective, substituted or for which the providing bundle does not
+	 * have permission to provide. No resolve hooks are called to filter
+	 * matching capabilities.
+	 * 
+	 * @param requirement The requirement to find matching bundle capabilities.
+	 *        Must not be {@code null}.
+	 * @return A collection of {@link BundleCapability} objects that match the
+	 *         specified requirement.
+	 * @since 1.2
+	 */
+	Collection<BundleCapability> findProviders(Requirement requirement);
 }

Added: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleRevisionDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleRevisionDTO.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleRevisionDTO.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleRevisionDTO.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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 org.osgi.framework.wiring.BundleRevision;
+import org.osgi.resource.dto.ResourceDTO;
+
+/**
+ * Data Transfer Object for a BundleRevision.
+ * 
+ * <p>
+ * An installed Bundle can be adapted to provide a {@code BundleRevisionDTO} for
+ * the current revision of the Bundle. {@code BundleRevisionDTO} objects for all
+ * in use revisions of the Bundle can be obtained by adapting the bundle to
+ * {@code BundleRevisionDTO[]}.
+ * 
+ * @author $Id$
+ * @NotThreadSafe
+ */
+public class BundleRevisionDTO extends ResourceDTO {
+    /**
+	 * The symbolic name of the bundle revision.
+	 * 
+	 * @see BundleRevision#getSymbolicName()
+	 */
+    public String symbolicName;
+
+    /**
+	 * The type of the bundle revision.
+	 * 
+	 * @see BundleRevision#getTypes()
+	 */
+    public int    type;
+
+    /**
+	 * The version of the bundle revision.
+	 * 
+	 * @see BundleRevision#getVersion()
+	 */
+    public String version;
+
+    /**
+	 * The id of the bundle associated with the bundle revision.
+	 * 
+	 * @see BundleRevision#getBundle()
+	 */
+    public long   bundle;
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleRevisionDTO.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleRevisionDTO.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleRevisionDTO.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWireDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWireDTO.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWireDTO.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWireDTO.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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 org.osgi.framework.wiring.BundleWire;
+import org.osgi.resource.dto.WireDTO;
+import org.osgi.resource.dto.WiringDTO;
+
+/**
+ * Data Transfer Object for a BundleWire.
+ * 
+ * <p>
+ * {@code BundleWireDTO}s are referenced {@link BundleWiringDTO.NodeDTO}s.
+ * 
+ * @author $Id$
+ * @NotThreadSafe
+ */
+public class BundleWireDTO extends WireDTO {
+    /**
+	 * The identifier of the provider wiring for the bundle wire.
+	 * 
+	 * @see WiringDTO#id
+	 * @see BundleWire#getProviderWiring()
+	 */
+    public int providerWiring;
+
+    /**
+	 * The identifier of the requiring wiring for the bundle wire.
+	 * 
+	 * @see WiringDTO#id
+	 * @see BundleWire#getRequirerWiring()
+	 */
+    public int requirerWiring;
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWireDTO.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWireDTO.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWireDTO.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWiringDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWiringDTO.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWiringDTO.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWiringDTO.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,97 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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;
+import org.osgi.framework.wiring.BundleWiring;
+import org.osgi.resource.dto.WiringDTO;
+
+/**
+ * Data Transfer Object for a BundleWiring graph.
+ * 
+ * <p>
+ * An installed Bundle can be adapted to provide a {@code BundleWiringDTO} for
+ * the current wiring Bundle. {@code BundleWiringDTO} objects for all in use
+ * wirings of the Bundle can be obtained by adapting the bundle to
+ * {@code BundleWiringDTO[]}.
+ * 
+ * @author $Id$
+ * @NotThreadSafe
+ */
+public class BundleWiringDTO extends DTO {
+    /**
+	 * The id of the bundle associated with the bundle wiring graph.
+	 * 
+	 * @see BundleWiring#getBundle()
+	 */
+    public long                   bundle;
+
+    /**
+     * The identifier of the root wiring node of the bundle wiring graph.
+     * 
+     * @see WiringDTO#id
+     */
+    public int                    root;
+
+    /**
+     * The set of wiring nodes referenced by the wiring graph.
+     * 
+     * <p>
+     * All wiring nodes referenced by wiring node identifiers in the wiring
+     * graph are contained in this set.
+     */
+    public Set<NodeDTO>           nodes;
+
+    /**
+     * The set of resources referenced by the wiring graph.
+     * 
+     * <p>
+     * All resources referenced by resource identifiers in the wiring graph are
+     * contained in this set.
+     */
+    public Set<BundleRevisionDTO> resources;
+
+    /**
+     * Data Transfer Object for a BundleWiring node.
+     * 
+     * <p>
+     * The {@link WiringDTO#providedWires providedWires} field must contain an
+     * array of {@link BundleWireDTO}s. The {@link WiringDTO#requiredWires
+     * requiredWires} field must contain an array of {@link BundleWireDTO}s.
+     * 
+     * @NotThreadSafe
+     */
+    public static class NodeDTO extends WiringDTO {
+        /**
+		 * The bundle wiring's in use setting indicates that the bundle wiring
+		 * is in use.
+		 * 
+		 * @see BundleWiring#isInUse()
+		 */
+        public boolean inUse;
+
+        /**
+		 * The current state of the bundle wiring. The bundle wiring's current
+		 * setting indicates that the bundle wiring is the current bundle wiring
+		 * for the bundle.
+		 * 
+		 * @see BundleWiring#isCurrent()
+		 */
+        public boolean current;
+    }
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWiringDTO.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWiringDTO.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/BundleWiringDTO.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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.
+ */
+
+/**
+ * OSGi Data Transfer Object Framework Wiring Package Version 1.2.
+ * 
+ * <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)"}
+ * <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)"}
+ * 
+ * @author $Id$
+ */
+
+@Version("1.2")
+package org.osgi.framework.wiring.dto;
+
+import org.osgi.annotation.versioning.Version;
+

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/packageinfo?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/packageinfo (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/dto/packageinfo Wed Jul 30 07:22:32 2014
@@ -0,0 +1 @@
+version 1.2

Added: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/package-info.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/package-info.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/package-info.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/package-info.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) OSGi Alliance (2010, 2013). 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.
+ */
+
+/**
+ * Framework Wiring Package Version 1.2.
+ * 
+ * <p>
+ * Bundles wishing to use this package must list the package in the
+ * Import-Package header of the bundle's manifest. For example:
+ * 
+ * <pre>
+ * Import-Package: org.osgi.framework.wiring; version=&quot;[1.2,2.0)&quot;
+ * </pre>
+ * 
+ * @author $Id$
+ */
+
+@Version("1.2")
+package org.osgi.framework.wiring;
+
+import org.osgi.annotation.versioning.Version;
+

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/package-info.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/framework/wiring/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/framework/wiring/packageinfo?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/framework/wiring/packageinfo (added)
+++ felix/trunk/framework/src/main/java/org/osgi/framework/wiring/packageinfo Wed Jul 30 07:22:32 2014
@@ -0,0 +1 @@
+version 1.2

Modified: felix/trunk/framework/src/main/java/org/osgi/resource/Capability.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/Capability.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/Capability.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/Capability.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). 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.Map;
+import org.osgi.annotation.versioning.ConsumerType;
 
 /**
  * A capability that has been declared from a {@link Resource}.
@@ -27,8 +28,9 @@ import java.util.Map;
  * always return the same result.
  * 
  * @ThreadSafe
- * @version $Id: 5f40514f7bf45f6dce59651e8812b0922580e77e $
+ * @author $Id: e79d11402e14e170443c8a2a9da835391cd1ccc8 $
  */
+@ConsumerType
 public interface Capability {
 
 	/**

Modified: felix/trunk/framework/src/main/java/org/osgi/resource/Namespace.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/Namespace.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/Namespace.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/Namespace.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2013). 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.
@@ -16,6 +16,8 @@
 
 package org.osgi.resource;
 
+import org.osgi.annotation.versioning.ConsumerType;
+
 /**
  * Capability and Requirement Namespaces base class.
  * 
@@ -34,8 +36,9 @@ package org.osgi.resource;
  * otherwise indicated.
  * 
  * @Immutable
- * @version $Id: 43c9ff5cea19546d71c4703db71a2b5070a3f2fa $
+ * @author $Id: 95a67250528646012b39e8e5a92775fbb635a8c0 $
  */
+@ConsumerType
 public abstract class Namespace {
 
 	/**

Modified: felix/trunk/framework/src/main/java/org/osgi/resource/Requirement.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/Requirement.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/Requirement.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/Requirement.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). 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.Map;
+import org.osgi.annotation.versioning.ConsumerType;
 
 /**
  * A requirement that has been declared from a {@link Resource} .
@@ -27,8 +28,9 @@ import java.util.Map;
  * always return the same result.
  * 
  * @ThreadSafe
- * @version $Id: 212b26179910f98fd2c59c3e1e7dd0d086f42b5d $
+ * @author $Id: 252221aeaaf9b189eef6e0c3798d0076a0032242 $
  */
+@ConsumerType
 public interface Requirement {
 	/**
 	 * Returns the namespace of this requirement.

Modified: felix/trunk/framework/src/main/java/org/osgi/resource/Resource.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/Resource.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/Resource.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/Resource.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). 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;
 
 /**
  * A resource is the representation of a uniquely identified and typed data. A
@@ -29,8 +30,9 @@ import java.util.List;
  * always return the same result.
  * 
  * @ThreadSafe
- * @version $Id: 40958d5777ee269d27d58e9f646a4c91bcc6daa4 $
+ * @author $Id: c7b6462fb53b38ac3071d7ba73af9dad2af6b9ce $
  */
+@ConsumerType
 public interface Resource {
 	/**
 	 * Returns the capabilities declared by this resource.

Modified: felix/trunk/framework/src/main/java/org/osgi/resource/Wire.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/Wire.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/Wire.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/Wire.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). 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.
@@ -16,6 +16,8 @@
 
 package org.osgi.resource;
 
+import org.osgi.annotation.versioning.ConsumerType;
+
 /**
  * A wire connecting a {@link Capability} to a {@link Requirement}.
  * 
@@ -25,8 +27,9 @@ package org.osgi.resource;
  * always return the same result.
  * 
  * @ThreadSafe
- * @version $Id: d7ca9a5d3e8dd2277f8243a750e40fbcf79185bd $
+ * @author $Id: 6c248ea2b9b24f3610a14e5e8deec9cd0b7aa1c9 $
  */
+@ConsumerType
 public interface Wire {
 	/**
 	 * Returns the {@link Capability} for this wire.

Modified: felix/trunk/framework/src/main/java/org/osgi/resource/Wiring.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/Wiring.java?rev=1614569&r1=1614568&r2=1614569&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/Wiring.java (original)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/Wiring.java Wed Jul 30 07:22:32 2014
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). 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;
 
 /**
  * A wiring for a resource. A wiring is associated with a resource and
@@ -28,8 +29,9 @@ import java.util.List;
  * always return the same result.
  * 
  * @ThreadSafe
- * @version $Id: b65dec3887cfa1d5731e860db558a01503c0f47d $
+ * @author $Id: 935272fa914a9cc0020549c43a3857acad2c45cc $
  */
+@ConsumerType
 public interface Wiring {
 	/**
 	 * Returns the capabilities provided by this wiring.
@@ -64,7 +66,7 @@ public interface Wiring {
 	 * @return A list containing a snapshot of the {@link Capability}s, or an
 	 *         empty list if this wiring provides no capabilities in the
 	 *         specified namespace. For a given namespace, the list contains the
-	 *         wires in the order the capabilities were specified in the
+	 *         capabilities in the order the capabilities were specified in the
 	 *         manifests of the {@link #getResource() resource} and the attached
 	 *         fragment resources<sup>&#8224;</sup> of this wiring. There is no
 	 *         ordering defined between capabilities in different namespaces.
@@ -91,11 +93,11 @@ public interface Wiring {
 	 *        {@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 wires in
-	 *         the order the requirements were specified in the manifests of the
-	 *         {@link #getResource() resource} and the attached fragment
-	 *         resources of this wiring. There is no ordering defined between
-	 *         requirements in different namespaces.
+	 *         namespace. For a given namespace, the list contains the
+	 *         requirements in the order the requirements were specified in the
+	 *         manifests of the {@link #getResource() resource} and the attached
+	 *         fragment resources of this wiring. There is no ordering defined
+	 *         between requirements in different namespaces.
 	 */
 	List<Requirement> getResourceRequirements(String namespace);
 

Added: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityDTO.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityDTO.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityDTO.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) OSGi Alliance (2012, 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.
+ * 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.resource.dto;
+
+import java.util.Map;
+import org.osgi.dto.DTO;
+import org.osgi.resource.Capability;
+
+/**
+ * Data Transfer Object for a Capability.
+ * 
+ * @author $Id$
+ * @NotThreadSafe
+ */
+public class CapabilityDTO extends DTO {
+    /**
+     * The unique identifier of the capability.
+     * 
+     * <p>
+     * This identifier is transiently assigned and may vary across restarts.
+     */
+    public int                 id;
+
+    /**
+     * The namespace for the capability.
+     * 
+     * @see Capability#getNamespace()
+     */
+    public String              namespace;
+
+    /**
+     * The directives for the capability.
+     * 
+     * @see Capability#getDirectives()
+     */
+    public Map<String, String> directives;
+
+    /**
+     * The attributes for the capability.
+     * 
+     * <p>
+     * The value type must be a numerical type, Boolean, String, DTO or an array
+     * of any of the former.
+     * 
+     * @see Capability#getAttributes()
+     */
+    public Map<String, Object> attributes;
+
+    /**
+	 * The identifier of the resource declaring the capability.
+	 * 
+	 * @see ResourceDTO#id
+	 * @see Capability#getResource()
+	 */
+    public int                 resource;
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityDTO.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityDTO.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityDTO.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityRefDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityRefDTO.java?rev=1614569&view=auto
==============================================================================
--- felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityRefDTO.java (added)
+++ felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityRefDTO.java Wed Jul 30 07:22:32 2014
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) OSGi Alliance (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.
+ * 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.resource.dto;
+
+import org.osgi.dto.DTO;
+
+/**
+ * Data Transfer Object for a reference to a Capability.
+ * 
+ * @author $Id$
+ * @NotThreadSafe
+ */
+public class CapabilityRefDTO extends DTO {
+    /**
+     * The identifier of the capability in the resource.
+     * 
+     * @see CapabilityDTO#id
+     */
+    public int capability;
+
+    /**
+     * The identifier of the resource declaring the capability.
+     * 
+     * @see ResourceDTO#id
+     */
+    public int resource;
+}

Propchange: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityRefDTO.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityRefDTO.java
------------------------------------------------------------------------------
    svn:keywords = author date id revision rev url

Propchange: felix/trunk/framework/src/main/java/org/osgi/resource/dto/CapabilityRefDTO.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain