You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ri...@apache.org on 2006/03/16 16:57:43 UTC

svn commit: r386363 [9/10] - in /incubator/felix/trunk/org.osgi/src/main/java/org/osgi: framework/ service/condpermadmin/ service/packageadmin/ service/startlevel/ service/url/ util/tracker/

Modified: incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/packageadmin/RequiredBundle.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/packageadmin/RequiredBundle.java?rev=386363&r1=386362&r2=386363&view=diff
==============================================================================
--- incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/packageadmin/RequiredBundle.java (original)
+++ incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/packageadmin/RequiredBundle.java Thu Mar 16 07:57:37 2006
@@ -1,77 +1,97 @@
-/*
- * $Header: /cvshome/build/org.osgi.service.packageadmin/src/org/osgi/service/packageadmin/RequiredBundle.java,v 1.5 2005/05/13 20:32:34 hargrave Exp $
- * 
- * Copyright (c) OSGi Alliance (2004, 2005). All Rights Reserved.
- * 
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this 
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
- */
-
-package org.osgi.service.packageadmin;
-
-import org.osgi.framework.Bundle;
-import org.osgi.framework.Version;
-
-/**
- * A required bundle.
- * 
- * Instances implementing this interface are created by the Package Admin
- * service.
- * 
- * <p>
- * The information about a <code>RequiredBundle</code> provided by this object is
- * valid only until the next time <code>PackageAdmin.refreshPackages()</code>
- * called. If a <code>RequiredBundle</code> object becomes stale (that is, the
- * bundle it references has been updated or removed as a result of calling
- * <code>PackageAdmin.refreshPackages()</code>), its <code>getSymbolicName()</code>
- * and <code>getVersion()</code> continue to return their old values,
- * <code>isRemovalPending()</code> returns true, and <code>getBundle()</code> and
- * <code>getRequiringBundles()</code> return <code>null</code>.
- * 
- * @since 1.2
- */
-public interface RequiredBundle {
-	/**
-	 * Returns the bundle which defines this RequiredBundle.
-	 * 
-	 * @return The bundle, or <code>null</code> if this <code>RequiredBundle</code>
-	 *         object has become stale.
-	 */
-	public Bundle getBundle();
-
-	/**
-	 * Returns the resolved bundles that currently require this bundle. If this
-	 * <code>RequiredBundle</code> object is required and re-exported by another
-	 * bundle then all the requiring bundles of the re-exporting bundle are
-	 * included in the returned array.
-	 * 
-	 * @return An array of resolved bundles currently requiring this bundle, or
-	 *         <code>null</code> if this <code>RequiredBundle</code> object has
-	 *         become stale.
-	 */
-	public Bundle[] getRequiringBundles();
-
-	/**
-	 * Returns the symbolic name of the bundle.
-	 * 
-	 * @return The symbolic name of the bundle.
-	 */
-	public String getSymbolicName();
-
-	/**
-	 * Returns the version of the bundle.
-	 * 
-	 * @return The version of the bundle.
-	 */
-	public Version getVersion();
-
-	/**
-	 * Returns <code>true</code> if the bundle has been updated or uninstalled.
-	 * 
-	 * @return <code>true</code> if the bundle has been updated or uninstalled, or
-	 *         if the <code>RequiredBundle</code> object has become stale;
-	 *         <code>false</code> otherwise.
-	 */
-	public boolean isRemovalPending();
+/*
+ * $Header: /cvshome/build/org.osgi.service.packageadmin/src/org/osgi/service/packageadmin/RequiredBundle.java,v 1.10 2006/03/14 21:02:47 hargrave Exp $
+ * 
+ * Copyright (c) OSGi Alliance (2004, 2005). 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.service.packageadmin;
+
+import org.osgi.framework.Bundle;
+import org.osgi.framework.Version;
+
+/**
+ * A required bundle.
+ * 
+ * Objects implementing this interface are created by the Package Admin service.
+ * 
+ * <p>
+ * The term <i>required bundle</i> refers to a resolved bundle that has a
+ * bundle symbolic name and is not a fragment. That is, a bundle that may be
+ * required by other bundles. This bundle may or may not be currently required
+ * by other bundles.
+ * 
+ * <p>
+ * The information about a required bundle provided by this object may change. A
+ * <code>RequiredBundle</code> object becomes stale if an exported package of
+ * the bundle it references has been updated or removed as a result of calling
+ * <code>PackageAdmin.refreshPackages()</code>).
+ * 
+ * If this object becomes stale, its <code>getSymbolicName()</code> and
+ * <code>getVersion()</code> methods continue to return their original values,
+ * <code>isRemovalPending()</code> returns true, and <code>getBundle()</code>
+ * and <code>getRequiringBundles()</code> return <code>null</code>.
+ * 
+ * @since 1.2
+ * @version $Revision: 1.10 $
+ */
+public interface RequiredBundle {
+	/**
+	 * Returns the symbolic name of this required bundle.
+	 * 
+	 * @return The symbolic name of this required bundle.
+	 */
+	public String getSymbolicName();
+
+	/**
+	 * Returns the bundle associated with this required bundle.
+	 * 
+	 * @return The bundle, or <code>null</code> if this
+	 *         <code>RequiredBundle</code> object has become stale.
+	 */
+	public Bundle getBundle();
+
+	/**
+	 * Returns the bundles that currently require this required bundle.
+	 * 
+	 * <p>
+	 * If this required bundle is required and then re-exported by another
+	 * bundle then all the requiring bundles of the re-exporting bundle are
+	 * included in the returned array.
+	 * 
+	 * @return An array of bundles currently requiring this required bundle, or
+	 *         <code>null</code> if this <code>RequiredBundle</code> object
+	 *         has become stale.
+	 */
+	public Bundle[] getRequiringBundles();
+
+	/**
+	 * Returns the version of this required bundle.
+	 * 
+	 * @return The version of this required bundle, or
+	 *         {@link Version#emptyVersion} if no version information is
+	 *         available.
+	 */
+	public Version getVersion();
+
+	/**
+	 * Returns <code>true</code> if the bundle associated with this
+	 * <code>RequiredBundle</code> object has been updated or uninstalled.
+	 * 
+	 * @return <code>true</code> if the reqiured bundle has been updated or
+	 *         uninstalled, or if the <code>RequiredBundle</code> object has
+	 *         become stale; <code>false</code> otherwise.
+	 */
+	public boolean isRemovalPending();
 }

Modified: incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/startlevel/StartLevel.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/startlevel/StartLevel.java?rev=386363&r1=386362&r2=386363&view=diff
==============================================================================
--- incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/startlevel/StartLevel.java (original)
+++ incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/startlevel/StartLevel.java Thu Mar 16 07:57:37 2006
@@ -1,228 +1,238 @@
-/*
- * $Header: /cvshome/build/org.osgi.service.startlevel/src/org/osgi/service/startlevel/StartLevel.java,v 1.6 2005/05/13 20:34:03 hargrave Exp $
- * 
- * Copyright (c) OSGi Alliance (2002, 2005). All Rights Reserved.
- * 
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this 
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
- */
-
-package org.osgi.service.startlevel;
-
-import org.osgi.framework.Bundle;
-
-/**
- * The StartLevel service allows management agents to manage a start level
- * assigned to each bundle and the active start level of the Framework. There is
- * at most one StartLevel service present in the OSGi environment.
- * 
- * <p>
- * A start level is defined to be a state of execution in which the Framework
- * exists. StartLevel 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. e.g. 2 is a
- * higher start level than 1.
- * <p>
- * Access to the StartLevel service is protected by corresponding
- * <code>ServicePermission</code>. In addition the <code>AdminPermission</code>
- * that is required to actually modify start level information.
- * <p>
- * Start Level support in the Framework includes the ability to control the
- * beginning start level of the Framework, to modify the active start level of
- * the Framework and to assign a specific start level to a bundle. How the
- * beginning start level of a Framework is specified is implementation
- * dependent. It may be a command line argument when invoking the Framework
- * implementation.
- * <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 are persistently marked
- * to be started are started as described in the <code>Bundle.start</code> method.
- * Within a start level, bundles are started in ascending order by
- * <code>Bundle.getBundleId</code>. 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 broadcast a Framework event of type
- * <code>FrameworkEvent.STARTED</code> to announce it has completed its launch.
- * 
- * <p>
- * The StartLevel service can be used by management bundles to alter the active
- * start level of the framework.
- * 
- * @version $Revision: 1.6 $
- */
-public interface StartLevel {
-	/**
-	 * Return the active start level value of the Framework.
-	 * 
-	 * If the Framework is in the process of changing the start level this
-	 * method must return the active start level if this differs from the
-	 * requested start level.
-	 * 
-	 * @return The active start level value of the Framework.
-	 */
-	public abstract int getStartLevel();
-
-	/**
-	 * Modify the active start level of the Framework.
-	 * 
-	 * <p>
-	 * The Framework will move to the requested start level. This method will
-	 * return immediately to the caller and the start level change will occur
-	 * asynchronously on another thread.
-	 * 
-	 * <p>
-	 * If the specified start level is higher than the active start level, the
-	 * Framework will continue to increase the start level until the Framework
-	 * has reached the specified start level, starting bundles at each start
-	 * level which are persistently marked to be started as described in the
-	 * <code>Bundle.start</code> method.
-	 * 
-	 * 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>Start bundles at the intermediate start level in ascending order by
-	 * <code>Bundle.getBundleId</code>.
-	 * </ol>
-	 * When this process completes after the specified start level is reached,
-	 * the Framework will broadcast a Framework event of type
-	 * <code>FrameworkEvent.STARTLEVEL_CHANGED</code> to announce it has moved to
-	 * the specified start level.
-	 * 
-	 * <p>
-	 * If the specified start level is lower than the active start level, the
-	 * Framework will continue to decrease the start level until the Framework
-	 * has reached the specified start level stopping bundles at each start
-	 * level as described in the <code>Bundle.stop</code> method except that their
-	 * persistently recorded state indicates that they must be restarted in the
-	 * future.
-	 * 
-	 * At each intermediate start level value on the way to and including the
-	 * specified start level, the framework must:
-	 * <ol>
-	 * <li>Stop bundles at the intermediate start level in descending order by
-	 * <code>Bundle.getBundleId</code>.
-	 * <li>Change the active start level to the intermediate start level value.
-	 * </ol>
-	 * When this process completes after the specified start level is reached,
-	 * the Framework will broadcast a Framework event of type
-	 * <code>FrameworkEvent.STARTLEVEL_CHANGED</code> to announce it has moved to
-	 * the specified start level.
-	 * 
-	 * <p>
-	 * If the specified start level is equal to the active start level, then no
-	 * bundles are started or stopped, however, the Framework must broadcast a
-	 * Framework event of type <code>FrameworkEvent.STARTLEVEL_CHANGED</code> to
-	 * announce it has finished moving to the specified start level. This event
-	 * may arrive before the this method return.
-	 * 
-	 * @param startlevel The requested start level for the Framework.
-	 * @throws IllegalArgumentException If the specified start level is less
-	 *         than or equal to zero.
-	 * @throws SecurityException If the caller does not have the
-	 *         <code>AdminPermission</code> and the Java runtime environment
-	 *         supports permissions.
-	 */
-	public abstract void setStartLevel(int startlevel);
-
-	/**
-	 * Return the assigned start level value for the specified Bundle.
-	 * 
-	 * @param bundle The target bundle.
-	 * @return The start level value of the specified Bundle.
-	 * @exception java.lang.IllegalArgumentException If the specified bundle has
-	 *            been uninstalled.
-	 */
-	public abstract int getBundleStartLevel(Bundle bundle);
-
-	/**
-	 * Assign a start level value to the specified Bundle.
-	 * 
-	 * <p>
-	 * The specified bundle will be assigned the specified start level. The
-	 * start level value assigned to the bundle will be persistently recorded by
-	 * the Framework.
-	 * 
-	 * If the new start level for the bundle is lower than or equal to the
-	 * active start level of the Framework, the Framework will start the
-	 * specified bundle as described in the <code>Bundle.start</code> method if
-	 * the bundle is persistently marked to be started. The actual starting of
-	 * this bundle must occur asynchronously.
-	 * 
-	 * If the new start level for the bundle is higher than the active start
-	 * level of the Framework, the Framework will stop the specified bundle as
-	 * described in the <code>Bundle.stop</code> method except that the
-	 * persistently recorded state for the bundle indicates that the bundle must
-	 * be restarted in the future. The actual stopping of this bundle must occur
-	 * asynchronously.
-	 * 
-	 * @param bundle The target bundle.
-	 * @param startlevel The new start level for the specified Bundle.
-	 * @throws IllegalArgumentException If the specified bundle has been
-	 *         uninstalled or if the specified start level is less than or equal
-	 *         to zero, or the specified bundle is the system bundle.
-	 * @throws SecurityException if the caller does not have the
-	 *         <code>AdminPermission</code> and the Java runtime environment
-	 *         supports permissions.
-	 */
-	public abstract void setBundleStartLevel(Bundle bundle, int startlevel);
-
-	/**
-	 * Return the initial start level value that is assigned to a Bundle when it
-	 * is first installed.
-	 * 
-	 * @return The initial start level value for Bundles.
-	 * @see #setInitialBundleStartLevel
-	 */
-	public abstract int getInitialBundleStartLevel();
-
-	/**
-	 * Set the initial start level value that is assigned to a Bundle when it is
-	 * first installed.
-	 * 
-	 * <p>
-	 * The initial bundle start level will be set to the specified start level.
-	 * The initial bundle start level value will be persistently recorded by the
-	 * Framework.
-	 * 
-	 * <p>
-	 * When a Bundle is installed via <code>BundleContext.installBundle</code>,
-	 * it is assigned the initial bundle start level value.
-	 * 
-	 * <p>
-	 * The default initial bundle start level value is 1 unless this method has
-	 * been called to assign a different initial bundle start level value.
-	 * 
-	 * <p>
-	 * Thie method does not change the start level values of installed bundles.
-	 * 
-	 * @param startlevel The initial start level for newly installed bundles.
-	 * @throws IllegalArgumentException If the specified start level is less
-	 *         than or equal to zero.
-	 * @throws SecurityException if the caller does not have the
-	 *         <code>AdminPermission</code> and the Java runtime environment
-	 *         supports permissions.
-	 */
-	public abstract void setInitialBundleStartLevel(int startlevel);
-
-	/**
-	 * Return the persistent state of the specified bundle.
-	 * 
-	 * <p>
-	 * This method returns the persistent state of a bundle. The persistent
-	 * state of a bundle indicates whether a bundle is persistently marked to be
-	 * started when it's start level is reached.
-	 * 
-	 * @return <code>true</code> if the bundle is persistently marked to be
-	 *         started, <code>false</code> if the bundle is not persistently
-	 *         marked to be started.
-	 * @exception java.lang.IllegalArgumentException If the specified bundle has
-	 *            been uninstalled.
-	 */
-	public abstract boolean isBundlePersistentlyStarted(Bundle bundle);
+/*
+ * $Header: /cvshome/build/org.osgi.service.startlevel/src/org/osgi/service/startlevel/StartLevel.java,v 1.12 2006/03/14 01:21:38 hargrave Exp $
+ * 
+ * Copyright (c) OSGi Alliance (2002, 2005). 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.service.startlevel;
+
+import org.osgi.framework.Bundle;
+
+/**
+ * The StartLevel service allows management agents to manage a start level
+ * assigned to each bundle and the active start level of the Framework. There is
+ * at most one StartLevel service present in the OSGi environment.
+ * 
+ * <p>
+ * A start level is defined to be a state of execution in which the Framework
+ * exists. StartLevel 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. e.g. 2 is a
+ * higher start level than 1.
+ * <p>
+ * Access to the StartLevel service is protected by corresponding
+ * <code>ServicePermission</code>. In addition <code>AdminPermission</code>
+ * is required to actually modify start level information.
+ * <p>
+ * Start Level support in the Framework includes the ability to control the
+ * beginning start level of the Framework, to modify the active start level of
+ * the Framework and to assign a specific start level to a bundle. How the
+ * beginning start level of a Framework is specified is implementation
+ * dependent. It may be a command line argument when invoking the Framework
+ * implementation.
+ * <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 are persistently marked
+ * to be started are started as described in the <code>Bundle.start</code>
+ * method. Within a start level, bundles are started in ascending order by
+ * <code>Bundle.getBundleId</code>. 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
+ * <code>FrameworkEvent.STARTED</code> to announce it has completed its
+ * launch.
+ * 
+ * <p>
+ * The StartLevel service can be used by management bundles to alter the active
+ * start level of the framework.
+ * 
+ * @version $Revision: 1.12 $
+ */
+public interface StartLevel {
+	/**
+	 * Return the active start level value of the Framework.
+	 * 
+	 * If the Framework is in the process of changing the start level this
+	 * method must return the active start level if this differs from the
+	 * requested start level.
+	 * 
+	 * @return The active start level value of the Framework.
+	 */
+	public int getStartLevel();
+
+	/**
+	 * Modify the active start level of the Framework.
+	 * 
+	 * <p>
+	 * The Framework will move to the requested start level. This method will
+	 * return immediately to the caller and the start level change will occur
+	 * asynchronously on another thread.
+	 * 
+	 * <p>
+	 * If the specified start level is higher than the active start level, the
+	 * Framework will continue to increase the start level until the Framework
+	 * has reached the specified start level, starting bundles at each start
+	 * level which are persistently marked to be started as described in the
+	 * <code>Bundle.start</code> method.
+	 * 
+	 * 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>Start bundles at the intermediate start level in ascending order by
+	 * <code>Bundle.getBundleId</code>.
+	 * </ol>
+	 * When this process completes after the specified start level is reached,
+	 * the Framework will fire a Framework event of type
+	 * <code>FrameworkEvent.STARTLEVEL_CHANGED</code> to announce it has moved
+	 * to the specified start level.
+	 * 
+	 * <p>
+	 * If the specified start level is lower than the active start level, the
+	 * Framework will continue to decrease the start level until the Framework
+	 * has reached the specified start level stopping bundles at each start
+	 * level as described in the <code>Bundle.stop</code> method except that
+	 * their persistently recorded state indicates that they must be restarted
+	 * in the future.
+	 * 
+	 * At each intermediate start level value on the way to and including the
+	 * specified start level, the framework must:
+	 * <ol>
+	 * <li>Stop bundles at the intermediate start level in descending order by
+	 * <code>Bundle.getBundleId</code>.
+	 * <li>Change the active start level to the intermediate start level value.
+	 * </ol>
+	 * When this process completes after the specified start level is reached,
+	 * the Framework will fire a Framework event of type
+	 * <code>FrameworkEvent.STARTLEVEL_CHANGED</code> to announce it has moved
+	 * to the specified start level.
+	 * 
+	 * <p>
+	 * If the specified start level is equal to the active start level, then no
+	 * bundles are started or stopped, however, the Framework must fire a
+	 * Framework event of type <code>FrameworkEvent.STARTLEVEL_CHANGED</code>
+	 * to announce it has finished moving to the specified start level. This
+	 * event may arrive before the this method return.
+	 * 
+	 * @param startlevel The requested start level for the Framework.
+	 * @throws IllegalArgumentException If the specified start level is less
+	 *         than or equal to zero.
+	 * @throws SecurityException If the caller does not have
+	 *         <code>AdminPermission[System Bundle,STARTLEVEL]</code> and the Java runtime
+	 *         environment supports permissions.
+	 */
+	public void setStartLevel(int startlevel);
+
+	/**
+	 * Return the assigned start level value for the specified Bundle.
+	 * 
+	 * @param bundle The target bundle.
+	 * @return The start level value of the specified Bundle.
+	 * @throws java.lang.IllegalArgumentException If the specified bundle has
+	 *         been uninstalled.
+	 */
+	public int getBundleStartLevel(Bundle bundle);
+
+	/**
+	 * Assign a start level value to the specified Bundle.
+	 * 
+	 * <p>
+	 * The specified bundle will be assigned the specified start level. The
+	 * start level value assigned to the bundle will be persistently recorded by
+	 * the Framework.
+	 * 
+	 * If the new start level for the bundle is lower than or equal to the
+	 * active start level of the Framework, the Framework will start the
+	 * specified bundle as described in the <code>Bundle.start</code> method
+	 * if the bundle is persistently marked to be started. The actual starting
+	 * of this bundle must occur asynchronously.
+	 * 
+	 * If the new start level for the bundle is higher than the active start
+	 * level of the Framework, the Framework will stop the specified bundle as
+	 * described in the <code>Bundle.stop</code> method except that the
+	 * persistently recorded state for the bundle indicates that the bundle must
+	 * be restarted in the future. The actual stopping of this bundle must occur
+	 * asynchronously.
+	 * 
+	 * @param bundle The target bundle.
+	 * @param startlevel The new start level for the specified Bundle.
+	 * @throws IllegalArgumentException If the specified bundle has been
+	 *         uninstalled or if the specified start level is less than or equal
+	 *         to zero, or the specified bundle is the system bundle.
+	 * @throws SecurityException If the caller does not have 
+	 *         <code>AdminPermission[bundle,EXECUTE]</code> and the Java runtime
+	 *         environment supports permissions.
+	 */
+	public void setBundleStartLevel(Bundle bundle, int startlevel);
+
+	/**
+	 * Return the initial start level value that is assigned to a Bundle when it
+	 * is first installed.
+	 * 
+	 * @return The initial start level value for Bundles.
+	 * @see #setInitialBundleStartLevel
+	 */
+	public int getInitialBundleStartLevel();
+
+	/**
+	 * Set the initial start level value that is assigned to a Bundle when it is
+	 * first installed.
+	 * 
+	 * <p>
+	 * The initial bundle start level will be set to the specified start level.
+	 * The initial bundle start level value will be persistently recorded by the
+	 * Framework.
+	 * 
+	 * <p>
+	 * When a Bundle is installed via <code>BundleContext.installBundle</code>,
+	 * it is assigned the initial bundle start level value.
+	 * 
+	 * <p>
+	 * The default initial bundle start level value is 1 unless this method has
+	 * been called to assign a different initial bundle start level value.
+	 * 
+	 * <p>
+	 * Thie method does not change the start level values of installed bundles.
+	 * 
+	 * @param startlevel The initial start level for newly installed bundles.
+	 * @throws IllegalArgumentException If the specified start level is less
+	 *         than or equal to zero.
+	 * @throws SecurityException If the caller does not have
+	 *         <code>AdminPermission[System Bundle,STARTLEVEL]</code> and the Java runtime
+	 *         environment supports permissions.
+	 */
+	public void setInitialBundleStartLevel(int startlevel);
+
+	/**
+	 * Return the persistent state of the specified bundle.
+	 * 
+	 * <p>
+	 * This method returns the persistent state of a bundle. The persistent
+	 * state of a bundle indicates whether a bundle is persistently marked to be
+	 * started when it's start level is reached.
+	 * 
+	 * @param bundle The bundle for which to return the persistently started state.
+	 * @return <code>true</code> if the bundle is persistently marked to be
+	 *         started, <code>false</code> if the bundle is not persistently
+	 *         marked to be started.
+	 * @throws java.lang.IllegalArgumentException If the specified bundle has
+	 *         been uninstalled.
+	 */
+	public boolean isBundlePersistentlyStarted(Bundle bundle);
 }

Modified: incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java?rev=386363&r1=386362&r2=386363&view=diff
==============================================================================
--- incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java (original)
+++ incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/AbstractURLStreamHandlerService.java Thu Mar 16 07:57:37 2006
@@ -1,142 +1,150 @@
-/*
- * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/AbstractURLStreamHandlerService.java,v 1.6 2005/05/13 20:32:35 hargrave Exp $
- * 
- * Copyright (c) OSGi Alliance (2002, 2005). All Rights Reserved.
- * 
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this 
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
- */
-
-package org.osgi.service.url;
-
-import java.net.*;
-
-/**
- * Abstract implementation of the <code>URLStreamHandlerService</code> interface.
- * All the methods simply invoke the corresponding methods on
- * <code>java.net.URLStreamHandler</code> except for <code>parseURL</code> and
- * <code>setURL</code>, which use the <code>URLStreamHandlerSetter</code>
- * parameter. Subclasses of this abstract class should not need to override the
- * <code>setURL</code> and <code>parseURL(URLStreamHandlerSetter,...)</code>
- * methods.
- * 
- * @version $Revision: 1.6 $
- */
-public abstract class AbstractURLStreamHandlerService extends URLStreamHandler
-		implements URLStreamHandlerService {
-	/**
-	 * @see "java.net.URLStreamHandler.openConnection"
-	 */
-	public abstract URLConnection openConnection(URL u)
-			throws java.io.IOException;
-
-	/**
-	 * The <code>URLStreamHandlerSetter</code> object passed to the parseURL
-	 * method.
-	 */
-	protected URLStreamHandlerSetter	realHandler;
-
-	/**
-	 * Parse a URL using the <code>URLStreamHandlerSetter</code> object. This
-	 * method sets the <code>realHandler</code> field with the specified
-	 * <code>URLStreamHandlerSetter</code> object and then calls
-	 * <code>parseURL(URL,String,int,int)</code>.
-	 * 
-	 * @param realHandler The object on which the <code>setURL</code> method must
-	 *        be invoked for the specified URL.
-	 * @see "java.net.URLStreamHandler.parseURL"
-	 */
-	public void parseURL(URLStreamHandlerSetter realHandler, URL u,
-			String spec, int start, int limit) {
-		this.realHandler = realHandler;
-		parseURL(u, spec, start, limit);
-	}
-
-	/**
-	 * This method calls <code>super.toExternalForm</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.toExternalForm"
-	 */
-	public String toExternalForm(URL u) {
-		return super.toExternalForm(u);
-	}
-
-	/**
-	 * This method calls <code>super.equals(URL,URL)</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.equals(URL,URL)"
-	 */
-	public boolean equals(URL u1, URL u2) {
-		return super.equals(u1, u2);
-	}
-
-	/**
-	 * This method calls <code>super.getDefaultPort</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.getDefaultPort"
-	 */
-	public int getDefaultPort() {
-		return super.getDefaultPort();
-	}
-
-	/**
-	 * This method calls <code>super.getHostAddress</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.getHostAddress"
-	 */
-	public InetAddress getHostAddress(URL u) {
-		return super.getHostAddress(u);
-	}
-
-	/**
-	 * This method calls <code>super.hashCode(URL)</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.hashCode(URL)"
-	 */
-	public int hashCode(URL u) {
-		return super.hashCode(u);
-	}
-
-	/**
-	 * This method calls <code>super.hostsEqual</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.hostsEqual"
-	 */
-	public boolean hostsEqual(URL u1, URL u2) {
-		return super.hostsEqual(u1, u2);
-	}
-
-	/**
-	 * This method calls <code>super.sameFile</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.sameFile"
-	 */
-	public boolean sameFile(URL u1, URL u2) {
-		return super.sameFile(u1, u2);
-	}
-
-	/**
-	 * This method calls
-	 * <code>realHandler.setURL(URL,String,String,int,String,String)</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String)"
-	 * @deprecated This method is only for compatibility with handlers written
-	 *             for JDK 1.1.
-	 */
-	protected void setURL(URL u, String proto, String host, int port,
-			String file, String ref) {
-		realHandler.setURL(u, proto, host, port, file, ref);
-	}
-
-	/**
-	 * This method calls
-	 * <code>realHandler.setURL(URL,String,String,int,String,String,String,String)</code>.
-	 * 
-	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String,String,String)"
-	 */
-	protected void setURL(URL u, String proto, String host, int port,
-			String auth, String user, String path, String query, String ref) {
-		realHandler.setURL(u, proto, host, port, auth, user, path, query, ref);
-	}
+/*
+ * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/AbstractURLStreamHandlerService.java,v 1.7 2006/03/14 01:21:36 hargrave Exp $
+ * 
+ * Copyright (c) OSGi Alliance (2002, 2005). 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.service.url;
+
+import java.net.*;
+
+/**
+ * Abstract implementation of the <code>URLStreamHandlerService</code> interface.
+ * All the methods simply invoke the corresponding methods on
+ * <code>java.net.URLStreamHandler</code> except for <code>parseURL</code> and
+ * <code>setURL</code>, which use the <code>URLStreamHandlerSetter</code>
+ * parameter. Subclasses of this abstract class should not need to override the
+ * <code>setURL</code> and <code>parseURL(URLStreamHandlerSetter,...)</code>
+ * methods.
+ * 
+ * @version $Revision: 1.7 $
+ */
+public abstract class AbstractURLStreamHandlerService extends URLStreamHandler
+		implements URLStreamHandlerService {
+	/**
+	 * @see "java.net.URLStreamHandler.openConnection"
+	 */
+	public abstract URLConnection openConnection(URL u)
+			throws java.io.IOException;
+
+	/**
+	 * The <code>URLStreamHandlerSetter</code> object passed to the parseURL
+	 * method.
+	 */
+	protected URLStreamHandlerSetter	realHandler;
+
+	/**
+	 * Parse a URL using the <code>URLStreamHandlerSetter</code> object. This
+	 * method sets the <code>realHandler</code> field with the specified
+	 * <code>URLStreamHandlerSetter</code> object and then calls
+	 * <code>parseURL(URL,String,int,int)</code>.
+	 * 
+	 * @param realHandler The object on which the <code>setURL</code> method must
+	 *        be invoked for the specified URL.
+	 * @see "java.net.URLStreamHandler.parseURL"
+	 */
+	public void parseURL(URLStreamHandlerSetter realHandler, URL u,
+			String spec, int start, int limit) {
+		this.realHandler = realHandler;
+		parseURL(u, spec, start, limit);
+	}
+
+	/**
+	 * This method calls <code>super.toExternalForm</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.toExternalForm"
+	 */
+	public String toExternalForm(URL u) {
+		return super.toExternalForm(u);
+	}
+
+	/**
+	 * This method calls <code>super.equals(URL,URL)</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.equals(URL,URL)"
+	 */
+	public boolean equals(URL u1, URL u2) {
+		return super.equals(u1, u2);
+	}
+
+	/**
+	 * This method calls <code>super.getDefaultPort</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.getDefaultPort"
+	 */
+	public int getDefaultPort() {
+		return super.getDefaultPort();
+	}
+
+	/**
+	 * This method calls <code>super.getHostAddress</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.getHostAddress"
+	 */
+	public InetAddress getHostAddress(URL u) {
+		return super.getHostAddress(u);
+	}
+
+	/**
+	 * This method calls <code>super.hashCode(URL)</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.hashCode(URL)"
+	 */
+	public int hashCode(URL u) {
+		return super.hashCode(u);
+	}
+
+	/**
+	 * This method calls <code>super.hostsEqual</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.hostsEqual"
+	 */
+	public boolean hostsEqual(URL u1, URL u2) {
+		return super.hostsEqual(u1, u2);
+	}
+
+	/**
+	 * This method calls <code>super.sameFile</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.sameFile"
+	 */
+	public boolean sameFile(URL u1, URL u2) {
+		return super.sameFile(u1, u2);
+	}
+
+	/**
+	 * This method calls
+	 * <code>realHandler.setURL(URL,String,String,int,String,String)</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String)"
+	 * @deprecated This method is only for compatibility with handlers written
+	 *             for JDK 1.1.
+	 */
+	protected void setURL(URL u, String proto, String host, int port,
+			String file, String ref) {
+		realHandler.setURL(u, proto, host, port, file, ref);
+	}
+
+	/**
+	 * This method calls
+	 * <code>realHandler.setURL(URL,String,String,int,String,String,String,String)</code>.
+	 * 
+	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String,String,String)"
+	 */
+	protected void setURL(URL u, String proto, String host, int port,
+			String auth, String user, String path, String query, String ref) {
+		realHandler.setURL(u, proto, host, port, auth, user, path, query, ref);
+	}
 }

Modified: incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLConstants.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLConstants.java?rev=386363&r1=386362&r2=386363&view=diff
==============================================================================
--- incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLConstants.java (original)
+++ incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLConstants.java Thu Mar 16 07:57:37 2006
@@ -1,36 +1,44 @@
-/*
- * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/URLConstants.java,v 1.6 2005/05/13 20:32:35 hargrave Exp $
- * 
- * Copyright (c) OSGi Alliance (2002, 2005). All Rights Reserved.
- * 
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this 
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
- */
-
-package org.osgi.service.url;
-
-/**
- * Defines standard names for property keys associated with
- * {@link URLStreamHandlerService}and <code>java.net.ContentHandler</code>
- * services.
- * 
- * <p>
- * The values associated with these keys are of type <code>java.lang.String[]</code>,
- * unless otherwise indicated.
- * 
- * @version $Revision: 1.6 $
- */
-public interface URLConstants {
-	/**
-	 * Service property naming the protocols serviced by a
-	 * URLStreamHandlerService. The property's value is an array of protocol
-	 * names.
-	 */
-	public static final String	URL_HANDLER_PROTOCOL	= "url.handler.protocol";
-	/**
-	 * Service property naming the MIME types serviced by a
-	 * java.net.ContentHandler. The property's value is an array of MIME types.
-	 */
-	public static final String	URL_CONTENT_MIMETYPE	= "url.content.mimetype";
+/*
+ * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/URLConstants.java,v 1.7 2006/03/14 01:21:36 hargrave Exp $
+ * 
+ * Copyright (c) OSGi Alliance (2002, 2005). 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.service.url;
+
+/**
+ * Defines standard names for property keys associated with
+ * {@link URLStreamHandlerService}and <code>java.net.ContentHandler</code>
+ * services.
+ * 
+ * <p>
+ * The values associated with these keys are of type <code>java.lang.String[]</code>,
+ * unless otherwise indicated.
+ * 
+ * @version $Revision: 1.7 $
+ */
+public interface URLConstants {
+	/**
+	 * Service property naming the protocols serviced by a
+	 * URLStreamHandlerService. The property's value is an array of protocol
+	 * names.
+	 */
+	public static final String	URL_HANDLER_PROTOCOL	= "url.handler.protocol";
+	/**
+	 * Service property naming the MIME types serviced by a
+	 * java.net.ContentHandler. The property's value is an array of MIME types.
+	 */
+	public static final String	URL_CONTENT_MIMETYPE	= "url.content.mimetype";
 }

Modified: incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerService.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerService.java?rev=386363&r1=386362&r2=386363&view=diff
==============================================================================
--- incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerService.java (original)
+++ incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerService.java Thu Mar 16 07:57:37 2006
@@ -1,84 +1,92 @@
-/*
- * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/URLStreamHandlerService.java,v 1.6 2005/05/13 20:32:35 hargrave Exp $
- * 
- * Copyright (c) OSGi Alliance (2002, 2005). All Rights Reserved.
- * 
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this 
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
- */
-
-package org.osgi.service.url;
-
-import java.net.*;
-
-/**
- * Service interface with public versions of the protected
- * <code>java.net.URLStreamHandler</code> methods.
- * <p>
- * The important differences between this interface and the
- * <code>URLStreamHandler</code> class are that the <code>setURL</code> method is
- * absent and the <code>parseURL</code> method takes a
- * {@link URLStreamHandlerSetter}object as the first argument. Classes
- * implementing this interface must call the <code>setURL</code> method on the
- * <code>URLStreamHandlerSetter</code> object received in the <code>parseURL</code>
- * method instead of <code>URLStreamHandler.setURL</code> to avoid a
- * <code>SecurityException</code>.
- * 
- * @see AbstractURLStreamHandlerService
- * 
- * @version $Revision: 1.6 $
- */
-public interface URLStreamHandlerService {
-	/**
-	 * @see "java.net.URLStreamHandler.openConnection"
-	 */
-	public URLConnection openConnection(URL u) throws java.io.IOException;
-
-	/**
-	 * Parse a URL. This method is called by the <code>URLStreamHandler</code>
-	 * proxy, instead of <code>java.net.URLStreamHandler.parseURL</code>, passing
-	 * a <code>URLStreamHandlerSetter</code> object.
-	 * 
-	 * @param realHandler The object on which <code>setURL</code> must be invoked
-	 *        for this URL.
-	 * @see "java.net.URLStreamHandler.parseURL"
-	 */
-	public void parseURL(URLStreamHandlerSetter realHandler, URL u,
-			String spec, int start, int limit);
-
-	/**
-	 * @see "java.net.URLStreamHandler.toExternalForm"
-	 */
-	public String toExternalForm(URL u);
-
-	/**
-	 * @see "java.net.URLStreamHandler.equals(URL, URL)"
-	 */
-	public boolean equals(URL u1, URL u2);
-
-	/**
-	 * @see "java.net.URLStreamHandler.getDefaultPort"
-	 */
-	public int getDefaultPort();
-
-	/**
-	 * @see "java.net.URLStreamHandler.getHostAddress"
-	 */
-	public InetAddress getHostAddress(URL u);
-
-	/**
-	 * @see "java.net.URLStreamHandler.hashCode(URL)"
-	 */
-	public int hashCode(URL u);
-
-	/**
-	 * @see "java.net.URLStreamHandler.hostsEqual"
-	 */
-	public boolean hostsEqual(URL u1, URL u2);
-
-	/**
-	 * @see "java.net.URLStreamHandler.sameFile"
-	 */
-	public boolean sameFile(URL u1, URL u2);
+/*
+ * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/URLStreamHandlerService.java,v 1.7 2006/03/14 01:21:36 hargrave Exp $
+ * 
+ * Copyright (c) OSGi Alliance (2002, 2005). 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.service.url;
+
+import java.net.*;
+
+/**
+ * Service interface with public versions of the protected
+ * <code>java.net.URLStreamHandler</code> methods.
+ * <p>
+ * The important differences between this interface and the
+ * <code>URLStreamHandler</code> class are that the <code>setURL</code> method is
+ * absent and the <code>parseURL</code> method takes a
+ * {@link URLStreamHandlerSetter}object as the first argument. Classes
+ * implementing this interface must call the <code>setURL</code> method on the
+ * <code>URLStreamHandlerSetter</code> object received in the <code>parseURL</code>
+ * method instead of <code>URLStreamHandler.setURL</code> to avoid a
+ * <code>SecurityException</code>.
+ * 
+ * @see AbstractURLStreamHandlerService
+ * 
+ * @version $Revision: 1.7 $
+ */
+public interface URLStreamHandlerService {
+	/**
+	 * @see "java.net.URLStreamHandler.openConnection"
+	 */
+	public URLConnection openConnection(URL u) throws java.io.IOException;
+
+	/**
+	 * Parse a URL. This method is called by the <code>URLStreamHandler</code>
+	 * proxy, instead of <code>java.net.URLStreamHandler.parseURL</code>, passing
+	 * a <code>URLStreamHandlerSetter</code> object.
+	 * 
+	 * @param realHandler The object on which <code>setURL</code> must be invoked
+	 *        for this URL.
+	 * @see "java.net.URLStreamHandler.parseURL"
+	 */
+	public void parseURL(URLStreamHandlerSetter realHandler, URL u,
+			String spec, int start, int limit);
+
+	/**
+	 * @see "java.net.URLStreamHandler.toExternalForm"
+	 */
+	public String toExternalForm(URL u);
+
+	/**
+	 * @see "java.net.URLStreamHandler.equals(URL, URL)"
+	 */
+	public boolean equals(URL u1, URL u2);
+
+	/**
+	 * @see "java.net.URLStreamHandler.getDefaultPort"
+	 */
+	public int getDefaultPort();
+
+	/**
+	 * @see "java.net.URLStreamHandler.getHostAddress"
+	 */
+	public InetAddress getHostAddress(URL u);
+
+	/**
+	 * @see "java.net.URLStreamHandler.hashCode(URL)"
+	 */
+	public int hashCode(URL u);
+
+	/**
+	 * @see "java.net.URLStreamHandler.hostsEqual"
+	 */
+	public boolean hostsEqual(URL u1, URL u2);
+
+	/**
+	 * @see "java.net.URLStreamHandler.sameFile"
+	 */
+	public boolean sameFile(URL u1, URL u2);
 }

Modified: incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerSetter.java
URL: http://svn.apache.org/viewcvs/incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerSetter.java?rev=386363&r1=386362&r2=386363&view=diff
==============================================================================
--- incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerSetter.java (original)
+++ incubator/felix/trunk/org.osgi/src/main/java/org/osgi/service/url/URLStreamHandlerSetter.java Thu Mar 16 07:57:37 2006
@@ -1,44 +1,52 @@
-/*
- * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/URLStreamHandlerSetter.java,v 1.6 2005/05/13 20:32:35 hargrave Exp $
- * 
- * Copyright (c) OSGi Alliance (2002, 2005). All Rights Reserved.
- * 
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this 
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
- */
-
-package org.osgi.service.url;
-
-import java.net.URL;
-
-/**
- * Interface used by <code>URLStreamHandlerService</code> objects to call the
- * <code>setURL</code> method on the proxy <code>URLStreamHandler</code> object.
- * 
- * <p>
- * Objects of this type are passed to the
- * {@link URLStreamHandlerService#parseURL}method. Invoking the <code>setURL</code>
- * method on the <code>URLStreamHandlerSetter</code> object will invoke the
- * <code>setURL</code> method on the proxy <code>URLStreamHandler</code> object that
- * is actually registered with <code>java.net.URL</code> for the protocol.
- * 
- * @version $Revision: 1.6 $
- */
-public interface URLStreamHandlerSetter {
-	/**
-	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String)"
-	 * 
-	 * @deprecated This method is only for compatibility with handlers written
-	 *             for JDK 1.1.
-	 */
-	public void setURL(URL u, String protocol, String host, int port,
-			String file, String ref);
-
-	/**
-	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String,String,String)"
-	 */
-	public void setURL(URL u, String protocol, String host, int port,
-			String authority, String userInfo, String path, String query,
-			String ref);
+/*
+ * $Header: /cvshome/build/org.osgi.service.url/src/org/osgi/service/url/URLStreamHandlerSetter.java,v 1.7 2006/03/14 01:21:36 hargrave Exp $
+ * 
+ * Copyright (c) OSGi Alliance (2002, 2005). 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.service.url;
+
+import java.net.URL;
+
+/**
+ * Interface used by <code>URLStreamHandlerService</code> objects to call the
+ * <code>setURL</code> method on the proxy <code>URLStreamHandler</code> object.
+ * 
+ * <p>
+ * Objects of this type are passed to the
+ * {@link URLStreamHandlerService#parseURL}method. Invoking the <code>setURL</code>
+ * method on the <code>URLStreamHandlerSetter</code> object will invoke the
+ * <code>setURL</code> method on the proxy <code>URLStreamHandler</code> object that
+ * is actually registered with <code>java.net.URL</code> for the protocol.
+ * 
+ * @version $Revision: 1.7 $
+ */
+public interface URLStreamHandlerSetter {
+	/**
+	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String)"
+	 * 
+	 * @deprecated This method is only for compatibility with handlers written
+	 *             for JDK 1.1.
+	 */
+	public void setURL(URL u, String protocol, String host, int port,
+			String file, String ref);
+
+	/**
+	 * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String,String,String)"
+	 */
+	public void setURL(URL u, String protocol, String host, int port,
+			String authority, String userInfo, String path, String query,
+			String ref);
 }