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 2009/07/24 19:06:44 UTC
svn commit: r797561 [5/9] - in /felix/trunk: org.osgi.compendium/
org.osgi.compendium/src/main/java/info/dmtree/
org.osgi.compendium/src/main/java/info/dmtree/notification/
org.osgi.compendium/src/main/java/info/dmtree/notification/spi/
org.osgi.compen...
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/TopicPermission.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/TopicPermission.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/TopicPermission.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/TopicPermission.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.event/src/org/osgi/service/event/TopicPermission.java,v 1.11 2006/06/16 16:31:48 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2005, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2009). 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.
@@ -33,25 +31,26 @@
* For example:
*
* <pre>
- * org/osgi/service/foo/FooEvent/ACTION
+ * org / osgi / service / foo / FooEvent / ACTION
* </pre>
*
* <p>
* <code>TopicPermission</code> has two actions: <code>publish</code> and
* <code>subscribe</code>.
*
- * @version $Revision: 1.11 $
+ * @ThreadSafe
+ * @version $Revision: 6381 $
*/
public final class TopicPermission extends Permission {
static final long serialVersionUID = -5855563886961618300L;
/**
* The action string <code>publish</code>.
*/
- public final static String PUBLISH = "publish"; //$NON-NLS-1$
+ public final static String PUBLISH = "publish";
/**
* The action string <code>subscribe</code>.
*/
- public final static String SUBSCRIBE = "subscribe"; //$NON-NLS-1$
+ public final static String SUBSCRIBE = "subscribe";
private final static int ACTION_PUBLISH = 0x00000001;
private final static int ACTION_SUBSCRIBE = 0x00000002;
private final static int ACTION_ALL = ACTION_PUBLISH
@@ -60,19 +59,19 @@
/**
* The actions mask.
*/
- private transient int action_mask = ACTION_NONE;
+ private transient int action_mask;
/**
* prefix if the name is wildcarded.
*/
- private transient String prefix;
+ private transient volatile String prefix;
/**
* The actions in canonical form.
*
* @serial
*/
- private String actions = null;
+ private volatile String actions = null;
/**
* Defines the authority to publich and/or subscribe to a topic within the
@@ -95,11 +94,11 @@
* <p>
*
* @param name Topic name.
- * @param actions <code>publish</code>,<code>subscribe</code>
- * (canonical order).
+ * @param actions <code>publish</code>,<code>subscribe</code> (canonical
+ * order).
*/
public TopicPermission(String name, String actions) {
- this(name, getMask(actions));
+ this(name, parseActions(actions));
}
/**
@@ -110,7 +109,7 @@
*/
TopicPermission(String name, int mask) {
super(name);
- init(name, mask);
+ setTransients(mask);
}
/**
@@ -119,26 +118,39 @@
* @param name topic name
* @param mask action mask
*/
- private void init(String name, int mask) {
+ private synchronized void setTransients(final int mask) {
+ final String name = getName();
if ((name == null) || name.length() == 0) {
- throw new IllegalArgumentException("invalid name"); //$NON-NLS-1$
+ throw new IllegalArgumentException("invalid name");
}
+ if ((mask == ACTION_NONE) || ((mask & ACTION_ALL) != mask)) {
+ throw new IllegalArgumentException("invalid action string");
+ }
+ action_mask = mask;
+
if (name.equals("*")) {
prefix = "";
}
- else
+ else {
if (name.endsWith("/*")) {
prefix = name.substring(0, name.length() - 1);
}
else {
prefix = null;
}
-
- if ((mask == ACTION_NONE) || ((mask & ACTION_ALL) != mask)) {
- throw new IllegalArgumentException("invalid action string"); //$NON-NLS-1$
}
- action_mask = mask;
+ }
+
+ /**
+ * Returns the current action mask.
+ * <p>
+ * Used by the TopicPermissionCollection class.
+ *
+ * @return Current action mask.
+ */
+ synchronized int getActionsMask() {
+ return action_mask;
}
/**
@@ -147,7 +159,7 @@
* @param actions Action string.
* @return action mask.
*/
- private static int getMask(String actions) {
+ private static int parseActions(final String actions) {
boolean seencomma = false;
int mask = ACTION_NONE;
if (actions == null) {
@@ -191,7 +203,7 @@
}
else {
// parse error
- throw new IllegalArgumentException("invalid permission: " //$NON-NLS-1$
+ throw new IllegalArgumentException("invalid permission: "
+ actions);
}
// make sure we didn't just match the tail of a word
@@ -201,7 +213,7 @@
switch (a[i - matchlen]) {
case ',' :
seencomma = true;
- /* FALLTHROUGH */
+ /* FALLTHROUGH */
case ' ' :
case '\r' :
case '\n' :
@@ -210,7 +222,7 @@
break;
default :
throw new IllegalArgumentException(
- "invalid permission: " + actions); //$NON-NLS-1$
+ "invalid permission: " + actions);
}
i--;
}
@@ -218,7 +230,7 @@
i -= matchlen;
}
if (seencomma) {
- throw new IllegalArgumentException("invalid permission: " + actions); //$NON-NLS-1$
+ throw new IllegalArgumentException("invalid permission: " + actions);
}
return mask;
}
@@ -245,13 +257,16 @@
*/
public boolean implies(Permission p) {
if (p instanceof TopicPermission) {
- TopicPermission target = (TopicPermission) p;
- if ((action_mask & target.action_mask) == target.action_mask) {
- if (prefix != null) {
- return target.getName().startsWith(prefix);
+ TopicPermission requested = (TopicPermission) p;
+ int requestedMask = requested.getActionsMask();
+ if ((getActionsMask() & requestedMask) == requestedMask) {
+ String requestedName = requested.getName();
+ String pre = prefix;
+ if (pre != null) {
+ return requestedName.startsWith(pre);
}
- return target.getName().equals(getName());
+ return requestedName.equals(getName());
}
}
return false;
@@ -269,21 +284,23 @@
* <code>TopicPermission</code> actions.
*/
public String getActions() {
- if (actions == null) {
+ String result = actions;
+ if (result == null) {
StringBuffer sb = new StringBuffer();
boolean comma = false;
- if ((action_mask & ACTION_PUBLISH) == ACTION_PUBLISH) {
+ int mask = getActionsMask();
+ if ((mask & ACTION_PUBLISH) == ACTION_PUBLISH) {
sb.append(PUBLISH);
comma = true;
}
- if ((action_mask & ACTION_SUBSCRIBE) == ACTION_SUBSCRIBE) {
+ if ((mask & ACTION_SUBSCRIBE) == ACTION_SUBSCRIBE) {
if (comma)
sb.append(',');
sb.append(SUBSCRIBE);
}
- actions = sb.toString();
+ actions = result = sb.toString();
}
- return actions;
+ return result;
}
/**
@@ -299,9 +316,8 @@
/**
* Determines the equality of two <code>TopicPermission</code> objects.
*
- * This method checks that specified <code>TopicPermission</code> has the same topic name and
- * actions as this
- * <code>TopicPermission</code> object.
+ * This method checks that specified <code>TopicPermission</code> has the
+ * same topic name and actions as this <code>TopicPermission</code> object.
*
* @param obj The object to test for equality with this
* <code>TopicPermission</code> object.
@@ -317,8 +333,9 @@
if (!(obj instanceof TopicPermission)) {
return false;
}
- TopicPermission p = (TopicPermission) obj;
- return (action_mask == p.action_mask) && getName().equals(p.getName());
+ TopicPermission tp = (TopicPermission) obj;
+ return (getActionsMask() == tp.getActionsMask())
+ && getName().equals(tp.getName());
}
/**
@@ -327,18 +344,9 @@
* @return A hash code value for this object.
*/
public int hashCode() {
- return getName().hashCode() ^ getActions().hashCode();
- }
-
- /**
- * Returns the current action mask.
- * <p>
- * Used by the TopicPermissionCollection class.
- *
- * @return Current action mask.
- */
- int getMask() {
- return action_mask;
+ int h = 31 * 17 + getName().hashCode();
+ h = 31 * h + getActions().hashCode();
+ return h;
}
/**
@@ -363,7 +371,7 @@
throws IOException, ClassNotFoundException {
// Read in the action, then initialize the rest
s.defaultReadObject();
- init(getName(), getMask(actions));
+ setTransients(parseActions(actions));
}
}
@@ -375,19 +383,21 @@
* @see java.security.PermissionCollection
*/
final class TopicPermissionCollection extends PermissionCollection {
- static final long serialVersionUID = -614647783533924048L;
+ static final long serialVersionUID = -614647783533924048L;
/**
* Table of permissions.
*
* @serial
+ * @GuardedBy this
*/
- private Hashtable permissions;
+ private final Hashtable permissions;
/**
* Boolean saying if "*" is in the collection.
*
* @serial
+ * @GuardedBy this
*/
- private boolean all_allowed;
+ private boolean all_allowed;
/**
* Create an empty TopicPermissions object.
@@ -405,36 +415,41 @@
* @param permission The <code>TopicPermission</code> object to add.
*
* @throws IllegalArgumentException If the permission is not a
- * <code>TopicPermission</code> instance.
+ * <code>TopicPermission</code> instance.
*
- * @throws SecurityException If this
- * <code>TopicPermissionCollection</code> object has been
- * marked read-only.
- */
- public void add(Permission permission) {
- if (!(permission instanceof TopicPermission))
- throw new IllegalArgumentException("invalid permission: " //$NON-NLS-1$
+ * @throws SecurityException If this <code>TopicPermissionCollection</code>
+ * object has been marked read-only.
+ */
+ public void add(final Permission permission) {
+ if (!(permission instanceof TopicPermission)) {
+ throw new IllegalArgumentException("invalid permission: "
+ permission);
- if (isReadOnly())
- throw new SecurityException("attempt to add a Permission to a " //$NON-NLS-1$
- + "readonly PermissionCollection"); //$NON-NLS-1$
- TopicPermission pp = (TopicPermission) permission;
- String name = pp.getName();
- TopicPermission existing = (TopicPermission) permissions.get(name);
- if (existing != null) {
- int oldMask = existing.getMask();
- int newMask = pp.getMask();
- if (oldMask != newMask) {
- permissions.put(name, new TopicPermission(name, oldMask
- | newMask));
- }
}
- else {
- permissions.put(name, permission);
- }
- if (!all_allowed) {
- if (name.equals("*")) //$NON-NLS-1$
- all_allowed = true;
+ if (isReadOnly()) {
+ throw new SecurityException("attempt to add a Permission to a "
+ + "readonly PermissionCollection");
+ }
+ final TopicPermission tp = (TopicPermission) permission;
+ final String name = tp.getName();
+ final int newMask = tp.getActionsMask();
+
+ synchronized (this) {
+ final TopicPermission existing = (TopicPermission) permissions
+ .get(name);
+ if (existing != null) {
+ final int oldMask = existing.getActionsMask();
+ if (oldMask != newMask) {
+ permissions.put(name, new TopicPermission(name, oldMask
+ | newMask));
+ }
+ }
+ else {
+ permissions.put(name, tp);
+ }
+ if (!all_allowed) {
+ if (name.equals("*"))
+ all_allowed = true;
+ }
}
}
@@ -445,47 +460,55 @@
* @param permission The Permission object to compare with this
* <code>TopicPermission</code> object.
*
- * @return <code>true</code> if <code>permission</code> is a proper
- * subset of a permission in the set; <code>false</code>
- * otherwise.
+ * @return <code>true</code> if <code>permission</code> is a proper subset
+ * of a permission in the set; <code>false</code> otherwise.
*/
- public boolean implies(Permission permission) {
- if (!(permission instanceof TopicPermission))
+ public boolean implies(final Permission permission) {
+ if (!(permission instanceof TopicPermission)) {
return false;
- TopicPermission pp = (TopicPermission) permission;
- TopicPermission x;
- int desired = pp.getMask();
+ }
+ final TopicPermission requested = (TopicPermission) permission;
+ String name = requested.getName();
+ final int desired = requested.getActionsMask();
int effective = 0;
+
+ TopicPermission x;
// short circuit if the "*" Permission was added
- if (all_allowed) {
- x = (TopicPermission) permissions.get("*"); //$NON-NLS-1$
- if (x != null) {
- effective |= x.getMask();
- if ((effective & desired) == desired)
- return true;
+ synchronized (this) {
+ if (all_allowed) {
+ x = (TopicPermission) permissions.get("*");
+ if (x != null) {
+ effective |= x.getActionsMask();
+ if ((effective & desired) == desired) {
+ return true;
+ }
+ }
}
+ x = (TopicPermission) permissions.get(name);
}
// strategy:
// Check for full match first. Then work our way up the
// name looking for matches on a/b/*
- String name = pp.getName();
- x = (TopicPermission) permissions.get(name);
if (x != null) {
// we have a direct hit!
- effective |= x.getMask();
- if ((effective & desired) == desired)
+ effective |= x.getActionsMask();
+ if ((effective & desired) == desired) {
return true;
+ }
}
// work our way up the tree...
- int last, offset;
- offset = name.length() - 1;
- while ((last = name.lastIndexOf("/", offset)) != -1) { //$NON-NLS-1$
- name = name.substring(0, last + 1) + "*"; //$NON-NLS-1$
- x = (TopicPermission) permissions.get(name);
+ int last;
+ int offset = name.length() - 1;
+ while ((last = name.lastIndexOf("/", offset)) != -1) {
+ name = name.substring(0, last + 1) + "*";
+ synchronized (this) {
+ x = (TopicPermission) permissions.get(name);
+ }
if (x != null) {
- effective |= x.getMask();
- if ((effective & desired) == desired)
+ effective |= x.getActionsMask();
+ if ((effective & desired) == desired) {
return true;
+ }
}
offset = last - 1;
}
@@ -495,8 +518,8 @@
}
/**
- * Returns an enumeration of all <code>TopicPermission</code> objects in
- * the container.
+ * Returns an enumeration of all <code>TopicPermission</code> objects in the
+ * container.
*
* @return Enumeration of all <code>TopicPermission</code> objects.
*/
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,10 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>Event Admin 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.service.event; version="[1.2,2.0)"
+</pre>
+</BODY>
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/event/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.2
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpContext.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpContext.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpContext.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpContext.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.http/src/org/osgi/service/http/HttpContext.java,v 1.12 2006/07/12 21:22:13 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2008). 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.
@@ -37,7 +35,7 @@
* <p>
* This interface is implemented by users of the <code>HttpService</code>.
*
- * @version $Revision: 1.12 $
+ * @version $Revision: 5673 $
*/
public interface HttpContext {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpService.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpService.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpService.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/HttpService.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.http/src/org/osgi/service/http/HttpService.java,v 1.13 2006/07/12 21:22:13 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,7 +25,7 @@
* register resources and servlets into the URI namespace of Http Service. A
* bundle may later unregister its resources or servlets.
*
- * @version $Revision: 1.13 $
+ * @version $Revision: 5673 $
* @see HttpContext
*/
public interface HttpService {
@@ -90,9 +88,10 @@
* the registration will be mapped. An alias must begin with slash ('/') and
* must not end with slash ('/'), with the exception that an alias of the
* form "/" is used to denote the root alias. The name parameter
- * must also not end with slash ('/'). See the specification text for
- * details on how HTTP requests are mapped to servlet and resource
- * registrations.
+ * must also not end with slash ('/') with the exception that a name of the
+ * form "/" is used to denote the root of the bundle. See the
+ * specification text for details on how HTTP requests are mapped to servlet
+ * and resource registrations.
* <p>
* For example, suppose the resource name /tmp is registered to the alias
* /files. A request for /files/foo.txt will map to the resource name
@@ -104,20 +103,20 @@
*
* The Http Service will call the <code>HttpContext</code> argument to map
* resource names to URLs and MIME types and to handle security for
- * requests. If the <code>HttpContext</code> argument is <code>null</code>, a
- * default <code>HttpContext</code> is used (see
+ * requests. If the <code>HttpContext</code> argument is <code>null</code>,
+ * a default <code>HttpContext</code> is used (see
* {@link #createDefaultHttpContext}).
*
* @param alias name in the URI namespace at which the resources are
* registered
* @param name the base name of the resources that will be registered
* @param context the <code>HttpContext</code> object for the registered
- * resources, or <code>null</code> if a default <code>HttpContext</code>
- * is to be created and used.
- * @throws NamespaceException if the registration fails because the alias
- * is already in use.
- * @throws java.lang.IllegalArgumentException if any of the parameters
- * are invalid
+ * resources, or <code>null</code> if a default
+ * <code>HttpContext</code> is to be created and used.
+ * @throws NamespaceException if the registration fails because the alias is
+ * already in use.
+ * @throws java.lang.IllegalArgumentException if any of the parameters are
+ * invalid
*/
public void registerResources(String alias, String name,
HttpContext context) throws NamespaceException;
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/NamespaceException.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/NamespaceException.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/NamespaceException.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/NamespaceException.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.http/src/org/osgi/service/http/NamespaceException.java,v 1.11 2006/07/11 13:15:56 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2008). 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.
@@ -22,15 +20,11 @@
* to register a servlet or resources into the URI namespace of the Http
* Service. This exception indicates that the requested alias already is in use.
*
- * @version $Revision: 1.11 $
+ * @version $Revision: 6083 $
*/
public class NamespaceException extends Exception {
static final long serialVersionUID = 7235606031147877747L;
- /**
- * Nested exception.
- */
- private final Throwable cause;
-
+
/**
* Construct a <code>NamespaceException</code> object with a detail message.
*
@@ -38,7 +32,6 @@
*/
public NamespaceException(String message) {
super(message);
- cause = null;
}
/**
@@ -49,47 +42,47 @@
* @param cause The nested exception.
*/
public NamespaceException(String message, Throwable cause) {
- super(message);
- this.cause = cause;
+ super(message, cause);
}
/**
* Returns the nested exception.
- *
- * <p>This method predates the general purpose exception chaining mechanism.
- * The {@link #getCause()} method is now the preferred means of
- * obtaining this information.
*
- * @return the nested exception or <code>null</code> if there is no nested
- * exception.
+ * <p>
+ * This method predates the general purpose exception chaining mechanism.
+ * The <code>getCause()</code> method is now the preferred means of
+ * obtaining this information.
+ *
+ * @return The result of calling <code>getCause()</code>.
*/
public Throwable getException() {
- return cause;
+ return getCause();
}
-
+
/**
- * Returns the cause of this exception or <code>null</code> if no
- * cause was specified when this exception was created.
- *
- * @return The cause of this exception or <code>null</code> if no
- * cause was specified.
- * @since 1.2
+ * Returns the cause of this exception or <code>null</code> if no cause was
+ * set.
+ *
+ * @return The cause of this exception or <code>null</code> if no cause was
+ * set.
+ * @since 1.2
*/
public Throwable getCause() {
- return cause;
+ return super.getCause();
}
/**
- * The cause of this exception can only be set when constructed.
- *
- * @param cause Cause of the exception.
- * @return This object.
- * @throws java.lang.IllegalStateException
- * This method will always throw an <code>IllegalStateException</code>
- * since the cause of this exception can only be set when constructed.
- * @since 1.2
+ * Initializes the cause of this exception to the specified value.
+ *
+ * @param cause The cause of this exception.
+ * @return This exception.
+ * @throws IllegalArgumentException If the specified cause is this
+ * exception.
+ * @throws IllegalStateException If the cause of this exception has already
+ * been set.
+ * @since 1.2
*/
public Throwable initCause(Throwable cause) {
- throw new IllegalStateException();
+ return super.initCause(cause);
}
}
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,10 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>Http Service 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.service.http; version="[1.2,2.0)"
+</pre>
+</BODY>
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/http/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.2.1
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectionFactory.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectionFactory.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectionFactory.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectionFactory.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.io/src/org/osgi/service/io/ConnectionFactory.java,v 1.9 2006/07/12 21:22:12 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2002, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2008). 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.
@@ -34,7 +32,7 @@
* Factory will then be called to create the actual <code>Connection</code>
* object.
*
- * @version $Revision: 1.9 $
+ * @version $Revision: 7337 $
*/
public interface ConnectionFactory {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectorService.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectorService.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectorService.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/ConnectorService.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.io/src/org/osgi/service/io/ConnectorService.java,v 1.9 2006/07/12 21:22:12 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2002, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2008). 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.
@@ -42,7 +40,7 @@
* first, is called. This is the same algorithm used by
* <code>BundleContext.getServiceReference</code>.
*
- * @version $Revision: 1.9 $
+ * @version $Revision: 5673 $
*/
public interface ConnectorService {
/**
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,10 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>IO Connector 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.
+For example:
+<pre>
+Import-Package: org.osgi.service.io; version="[1.0,2.0)", javax.microedition.io
+</pre>
+</BODY>
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/io/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.0
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogEntry.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogEntry.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogEntry.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogEntry.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.log/src/org/osgi/service/log/LogEntry.java,v 1.9 2006/06/16 16:31:49 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2008). 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 +27,8 @@
* <code>LogReaderService.getLog</code> method or by registering a
* <code>LogListener</code> object.
*
- * @version $Revision: 1.9 $
+ * @ThreadSafe
+ * @version $Revision: 5654 $
* @see LogReaderService#getLog
* @see LogListener
*/
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogListener.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogListener.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogListener.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogListener.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.log/src/org/osgi/service/log/LogListener.java,v 1.9 2006/06/16 16:31:49 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,7 +28,8 @@
* unregistered by calling the <code>LogReaderService.removeLogListener</code>
* method.
*
- * @version $Revision: 1.9 $
+ * @ThreadSafe
+ * @version $Revision: 5654 $
* @see LogReaderService
* @see LogEntry
* @see LogReaderService#addLogListener(LogListener)
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogReaderService.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogReaderService.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogReaderService.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogReaderService.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.log/src/org/osgi/service/log/LogReaderService.java,v 1.10 2006/06/16 16:31:49 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,7 +29,8 @@
* method can be called which will return an <code>Enumeration</code> of all
* <code>LogEntry</code> objects in the log.
*
- * @version $Revision: 1.10 $
+ * @ThreadSafe
+ * @version $Revision: 5654 $
* @see LogEntry
* @see LogListener
* @see LogListener#logged(LogEntry)
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogService.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogService.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogService.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/LogService.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.log/src/org/osgi/service/log/LogService.java,v 1.9 2006/06/16 16:31:49 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2008). 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.
@@ -36,7 +34,8 @@
* <li>{@link #LOG_DEBUG}
* </ol>
*
- * @version $Revision: 1.9 $
+ * @ThreadSafe
+ * @version $Revision: 5654 $
*/
public interface LogService {
/**
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,11 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>Log Service Package Version 1.3.
+<p>Bundles wishing to use this package must list the package
+in the Import-Package header of the bundle's manifest.
+For example:
+<pre>
+Import-Package: org.osgi.service.log; version="[1.3,2.0)"
+</pre>
+</BODY>
+
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/log/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.3
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/AttributeDefinition.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/AttributeDefinition.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/AttributeDefinition.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/AttributeDefinition.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.metatype/src/org/osgi/service/metatype/AttributeDefinition.java,v 1.13 2006/06/16 16:31:23 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2001, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2001, 2008). 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.
@@ -24,7 +22,7 @@
* An <code>AttributeDefinition</code> object defines a description of the data
* type of a property/attribute.
*
- * @version $Revision: 1.13 $
+ * @version $Revision: 5673 $
*/
public interface AttributeDefinition {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeInformation.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeInformation.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeInformation.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeInformation.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.metatype/src/org/osgi/service/metatype/MetaTypeInformation.java,v 1.8 2006/06/16 16:31:23 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2005, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,7 +21,7 @@
* A MetaType Information object is created by the MetaTypeService to return
* meta type information for a specific bundle.
*
- * @version $Revision: 1.8 $
+ * @version $Revision: 5673 $
* @since 1.1
*/
public interface MetaTypeInformation extends MetaTypeProvider {
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeProvider.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeProvider.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeProvider.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeProvider.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.metatype/src/org/osgi/service/metatype/MetaTypeProvider.java,v 1.11 2006/06/16 16:31:23 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2001, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2001, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,7 +18,7 @@
/**
* Provides access to metatypes.
*
- * @version $Revision: 1.11 $
+ * @version $Revision: 5673 $
*/
public interface MetaTypeProvider {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeService.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeService.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeService.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/MetaTypeService.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.metatype/src/org/osgi/service/metatype/MetaTypeService.java,v 1.10 2006/06/16 16:31:23 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2005, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2008). 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.
@@ -33,7 +31,7 @@
* retrieve meta type information for bundles which contain a meta type
* documents or which provide their own <code>MetaTypeProvider</code> objects.
*
- * @version $Revision: 1.10 $
+ * @version $Revision: 5673 $
* @since 1.1
*/
public interface MetaTypeService {
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/ObjectClassDefinition.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/ObjectClassDefinition.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/ObjectClassDefinition.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/ObjectClassDefinition.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.metatype/src/org/osgi/service/metatype/ObjectClassDefinition.java,v 1.11 2006/06/16 16:31:23 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2001, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2001, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,7 +21,7 @@
/**
* Description for the data type information of an objectclass.
*
- * @version $Revision: 1.11 $
+ * @version $Revision: 5673 $
*/
public interface ObjectClassDefinition {
/**
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,11 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>Metatype Package Version 1.1.
+<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.service.metatype; version="[1.1,2.0)"
+</pre>
+</BODY>
+
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/metatype/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.1
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorAdmin.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorAdmin.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorAdmin.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorAdmin.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.monitor/src/org/osgi/service/monitor/MonitorAdmin.java,v 1.25 2006/06/16 16:31:25 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2004, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2004, 2008). 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,14 +27,14 @@
* <code>Monitorable</code> services from the service registry and then query
* the list of <code>StatusVariable</code> names from the
* <code>Monitorable</code> services. This way all services which publish
- * <code>StatusVariable</code>s will be returned regardless of whether they
- * do or do not hold the necessary <code>MonitorPermission</code> for
- * publishing <code>StatusVariable</code>s. By using the
- * <code>MonitorAdmin</code> to obtain the <code>StatusVariable</code>s it
- * is guaranteed that only those <code>Monitorable</code> services will be
- * accessed who are authorized to publish <code>StatusVariable</code>s. It is
- * the responsibility of the <code>MonitorAdmin</code> implementation to check
- * the required permissions and show only those variables which pass this check.
+ * <code>StatusVariable</code>s will be returned regardless of whether they do
+ * or do not hold the necessary <code>MonitorPermission</code> for publishing
+ * <code>StatusVariable</code>s. By using the <code>MonitorAdmin</code> to
+ * obtain the <code>StatusVariable</code>s it is guaranteed that only those
+ * <code>Monitorable</code> services will be accessed who are authorized to
+ * publish <code>StatusVariable</code>s. It is the responsibility of the
+ * <code>MonitorAdmin</code> implementation to check the required permissions
+ * and show only those variables which pass this check.
* <p>
* The events posted by <code>MonitorAdmin</code> contain the following
* properties:
@@ -53,11 +51,13 @@
* </ul>
* <p>
* Most of the methods require either a Monitorable ID or a Status Variable path
- * parameter, the latter in [Monitorable_ID]/[StatusVariable_ID] format. These
+ * parameter, the latter in [Monitorable_ID]/[StatusVariable_ID] format. These
* parameters must not be <code>null</code>, and the IDs they contain must
* conform to their respective definitions in {@link Monitorable} and
- * {@link StatusVariable}. If any of the restrictions are violated, the method
+ * {@link StatusVariable}. If any of the restrictions are violated, the method
* must throw an <code>IllegalArgumentException</code>.
+ *
+ * @version $Revision: 5673 $
*/
public interface MonitorAdmin {
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorListener.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorListener.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorListener.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorListener.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.monitor/src/org/osgi/service/monitor/MonitorListener.java,v 1.11 2006/06/16 16:31:25 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2004, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2004, 2008). 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,11 +17,13 @@
package org.osgi.service.monitor;
/**
- * The <code>MonitorListener</code> is used by <code>Monitorable</code>
- * services to send notifications when a <code>StatusVariable</code> value is
- * changed. The <code>MonitorListener</code> should register itself as a
- * service at the OSGi Service Registry. This interface must (only) be
- * implemented by the Monitor Admin component.
+ * The <code>MonitorListener</code> is used by <code>Monitorable</code> services
+ * to send notifications when a <code>StatusVariable</code> value is changed.
+ * The <code>MonitorListener</code> should register itself as a service at the
+ * OSGi Service Registry. This interface must (only) be implemented by the
+ * Monitor Admin component.
+ *
+ * @version $Revision: 5673 $
*/
public interface MonitorListener {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorPermission.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorPermission.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorPermission.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitorPermission.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.monitor/src/org/osgi/service/monitor/MonitorPermission.java,v 1.17 2006/06/21 15:17:16 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2005, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2008). 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.
@@ -24,18 +22,20 @@
/**
* Indicates the callers authority to publish, read or reset
- * <code>StatusVariable</code>s, to switch event sending on or off or to
- * start monitoring jobs. The target of the permission is the identifier of the
+ * <code>StatusVariable</code>s, to switch event sending on or off or to start
+ * monitoring jobs. The target of the permission is the identifier of the
* <code>StatusVariable</code>, the action can be <code>read</code>,
* <code>publish</code>, <code>reset</code>, <code>startjob</code>,
- * <code>switchevents</code>, or the combination of these separated by
- * commas. Action names are interpreted case-insensitively, but the canonical
- * action string returned by {@link #getActions} uses the forms defined by the
- * action constants.
+ * <code>switchevents</code>, or the combination of these separated by commas.
+ * Action names are interpreted case-insensitively, but the canonical action
+ * string returned by {@link #getActions} uses the forms defined by the action
+ * constants.
* <p>
- * If the wildcard <code>*</code> appears in the actions field, all legal
- * monitoring commands are allowed on the designated target(s) by the owner of
+ * If the wildcard <code>*</code> appears in the actions field, all legal
+ * monitoring commands are allowed on the designated target(s) by the owner of
* the permission.
+ *
+ * @version $Revision: 5673 $
*/
public class MonitorPermission extends Permission {
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/Monitorable.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/Monitorable.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/Monitorable.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/Monitorable.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.monitor/src/org/osgi/service/monitor/Monitorable.java,v 1.17 2006/06/16 16:31:25 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2004, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2004, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,11 +18,11 @@
/**
* A <code>Monitorable</code> can provide information about itself in the form
- * of <code>StatusVariables</code>. Instances of this interface should
- * register themselves at the OSGi Service Registry. The
- * <code>MonitorAdmin</code> listens to the registration of
- * <code>Monitorable</code> services, and makes the information they provide
- * available also through the Device Management Tree (DMT) for remote access.
+ * of <code>StatusVariables</code>. Instances of this interface should register
+ * themselves at the OSGi Service Registry. The <code>MonitorAdmin</code>
+ * listens to the registration of <code>Monitorable</code> services, and makes
+ * the information they provide available also through the Device Management
+ * Tree (DMT) for remote access.
* <p>
* The monitorable service is identified by its PID string which must be a non-
* <code>null</code>, non-empty string that conforms to the "symbolic-name"
@@ -32,17 +30,19 @@
* characters [-_.a-zA-Z0-9] may be used. The length of the PID must not exceed
* 20 characters.
* <p>
- * A <code>Monitorable</code> may optionally support sending notifications
- * when the status of its <code>StatusVariables</code> change. Support for
- * change notifications can be defined per <code>StatusVariable</code>.
+ * A <code>Monitorable</code> may optionally support sending notifications when
+ * the status of its <code>StatusVariables</code> change. Support for change
+ * notifications can be defined per <code>StatusVariable</code>.
* <p>
* Publishing <code>StatusVariables</code> requires the presence of the
- * <code>MonitorPermission</code> with the <code>publish</code> action
- * string. This permission, however, is not checked during registration of the
+ * <code>MonitorPermission</code> with the <code>publish</code> action string.
+ * This permission, however, is not checked during registration of the
* <code>Monitorable</code> service. Instead, the <code>MonitorAdmin</code>
* implemenatation must make sure that when a <code>StatusVariable</code> is
* queried, it is shown only if the <code>Monitorable</code> is authorized to
* publish the given <code>StatusVariable</code>.
+ *
+ * @version $Revision: 5673 $
*/
public interface Monitorable {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitoringJob.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitoringJob.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitoringJob.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/MonitoringJob.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.monitor/src/org/osgi/service/monitor/MonitoringJob.java,v 1.14 2006/06/16 16:31:25 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2004, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2004, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,28 +18,29 @@
/**
* A Monitoring Job is a request for scheduled or event based notifications on
- * update of a set of <code>StatusVariable</code>s. The job is a data
- * structure that holds a non-empty list of <code>StatusVariable</code> names,
- * an identification of the initiator of the job, and the sampling parameters.
+ * update of a set of <code>StatusVariable</code>s. The job is a data structure
+ * that holds a non-empty list of <code>StatusVariable</code> names, an
+ * identification of the initiator of the job, and the sampling parameters.
* There are two kinds of monitoring jobs: time based and change based. Time
- * based jobs take samples of all <code>StatusVariable</code>s with a
- * specified frequency. The number of samples to be taken before the job
- * finishes may be specified. Change based jobs are only interested in the
- * changes of the monitored <code>StatusVariable</code>s. In this case, the
- * number of changes that must take place between two notifications can be
- * specified.
+ * based jobs take samples of all <code>StatusVariable</code>s with a specified
+ * frequency. The number of samples to be taken before the job finishes may be
+ * specified. Change based jobs are only interested in the changes of the
+ * monitored <code>StatusVariable</code>s. In this case, the number of changes
+ * that must take place between two notifications can be specified.
* <p>
* The job can be started on the <code>MonitorAdmin</code> interface. Running
- * the job (querying the <code>StatusVariable</code>s, listening to changes,
- * and sending out notifications on updates) is the task of the
+ * the job (querying the <code>StatusVariable</code>s, listening to changes, and
+ * sending out notifications on updates) is the task of the
* <code>MonitorAdmin</code> implementation.
* <p>
* Whether a monitoring job keeps track dynamically of the
- * <code>StatusVariable</code>s it monitors is not specified. This means that
- * if we monitor a <code>StatusVariable</code> of a <code>Monitorable</code>
+ * <code>StatusVariable</code>s it monitors is not specified. This means that if
+ * we monitor a <code>StatusVariable</code> of a <code>Monitorable</code>
* service which disappears and later reappears then it is implementation
* specific whether we still receive updates of the <code>StatusVariable</code>
* changes or not.
+ *
+ * @version $Revision: 5673 $
*/
public interface MonitoringJob {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/StatusVariable.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/StatusVariable.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/StatusVariable.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/StatusVariable.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.monitor/src/org/osgi/service/monitor/StatusVariable.java,v 1.14 2006/06/16 16:31:25 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2004, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2004, 2008). 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.
@@ -33,6 +31,8 @@
* definition in the OSGi core specification. This means that only the
* characters [-_.a-zA-Z0-9] may be used. The length of the ID must not exceed
* 32 bytes when UTF-8 encoded.
+ *
+ * @version $Revision: 5673 $
*/
public final class StatusVariable {
//----- Public constants -----//
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,10 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>Monitor Admin 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.
+For example:
+<pre>
+Import-Package: org.osgi.service.monitor; version="[1.0,2.0)"
+</pre>
+</BODY>
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/monitor/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.0
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/BackingStoreException.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/BackingStoreException.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/BackingStoreException.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/BackingStoreException.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.prefs/src/org/osgi/service/prefs/BackingStoreException.java,v 1.12 2006/07/11 13:15:55 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2001, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2001, 2008). 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.
@@ -21,63 +19,57 @@
* Thrown to indicate that a preferences operation could not complete because of
* a failure in the backing store, or a failure to contact the backing store.
*
- * @version $Revision: 1.12 $
+ * @version $Revision: 6083 $
*/
public class BackingStoreException extends Exception {
static final long serialVersionUID = -1415637364122829574L;
- /**
- * Nested exception.
- */
- private final Throwable cause;
/**
* Constructs a <code>BackingStoreException</code> with the specified detail
* message.
*
- * @param s The detail message.
+ * @param message The detail message.
*/
- public BackingStoreException(String s) {
- super(s);
- this.cause = null;
+ public BackingStoreException(String message) {
+ super(message);
}
/**
* Constructs a <code>BackingStoreException</code> with the specified detail
* message.
*
- * @param s The detail message.
+ * @param message The detail message.
* @param cause The cause of the exception. May be <code>null</code>.
* @since 1.1
*/
- public BackingStoreException(String s, Throwable cause) {
- super(s);
- this.cause = cause;
+ public BackingStoreException(String message, Throwable cause) {
+ super(message, cause);
}
-
+
/**
* Returns the cause of this exception or <code>null</code> if no cause was
- * specified when this exception was created.
+ * set.
*
* @return The cause of this exception or <code>null</code> if no cause was
- * specified.
- * @since 1.1
+ * set.
+ * @since 1.1
*/
public Throwable getCause() {
- return cause;
+ return super.getCause();
}
/**
- * The cause of this exception can only be set when constructed.
+ * Initializes the cause of this exception to the specified value.
*
- * @param cause Cause of the exception.
- * @return This object.
- * @throws java.lang.IllegalStateException This method will always throw an
- * <code>IllegalStateException</code> since the cause of this
- * exception can only be set when constructed.
- * @since 1.1
+ * @param cause The cause of this exception.
+ * @return This exception.
+ * @throws IllegalArgumentException If the specified cause is this
+ * exception.
+ * @throws IllegalStateException If the cause of this exception has already
+ * been set.
+ * @since 1.1
*/
public Throwable initCause(Throwable cause) {
- throw new IllegalStateException();
+ return super.initCause(cause);
}
-
}
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/Preferences.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/Preferences.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/Preferences.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/Preferences.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.prefs/src/org/osgi/service/prefs/Preferences.java,v 1.11 2006/07/11 00:54:04 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2001, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2001, 2008). 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.
@@ -110,7 +108,7 @@
* preference data.
*
*
- * @version $Revision: 1.11 $
+ * @version $Revision: 5673 $
*/
public interface Preferences {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/PreferencesService.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/PreferencesService.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/PreferencesService.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/PreferencesService.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.prefs/src/org/osgi/service/prefs/PreferencesService.java,v 1.10 2006/06/16 16:31:30 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2001, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2001, 2008). 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.
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,11 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>Preferences Service Package Version 1.1.
+<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.service.prefs; version="[1.1,2.0)"
+</pre>
+</BODY>
+
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/prefs/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.1.1
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/ProvisioningService.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/ProvisioningService.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/ProvisioningService.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/ProvisioningService.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.provisioning/src/org/osgi/service/provisioning/ProvisioningService.java,v 1.11 2006/07/12 21:21:31 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2002, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2008). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,14 +29,15 @@
* these bundles to exchange information. It also provides a means for the
* initial Management Bundle to get its initial configuration information.
* <p>
- * The provisioning information is collected in a <code>Dictionary</code> object,
- * called the Provisioning Dictionary. Any bundle that can access the service
- * can get a reference to this object and read and update provisioning
- * information. The key of the dictionary is a <code>String</code> object and the
- * value is a <code>String</code> or <code>byte[]</code> object. The single
- * exception is the PROVISIONING_UPDATE_COUNT value which is an Integer. The
- * <code>provisioning</code> prefix is reserved for keys defined by OSGi, other
- * key names may be used for implementation dependent provisioning systems.
+ * The provisioning information is collected in a <code>Dictionary</code>
+ * object, called the Provisioning Dictionary. Any bundle that can access the
+ * service can get a reference to this object and read and update provisioning
+ * information. The key of the dictionary is a <code>String</code> object and
+ * the value is a <code>String</code> or <code>byte[]</code> object. The
+ * single exception is the PROVISIONING_UPDATE_COUNT value which is an Integer.
+ * The <code>provisioning</code> prefix is reserved for keys defined by OSGi,
+ * other key names may be used for implementation dependent provisioning
+ * systems.
* <p>
* Any changes to the provisioning information will be reflected immediately in
* all the dictionary objects obtained from the Provisioning Service.
@@ -54,11 +53,11 @@
* drastic consequences. Thus, only trusted bundles should be allowed to
* register and get the Provisioning Service. The <code>ServicePermission</code>
* is used to limit the bundles that can gain access to the Provisioning
- * Service. There is no check of <code>Permission</code> objects to read or modify
- * the provisioning information, so care must be taken not to leak the
+ * Service. There is no check of <code>Permission</code> objects to read or
+ * modify the provisioning information, so care must be taken not to leak the
* Provisioning Dictionary received from <code>getInformation</code> method.
*
- * @version $Revision: 1.11 $
+ * @version $Revision: 7347 $
*/
public interface ProvisioningService {
/**
@@ -66,17 +65,20 @@
* Service Platform. The value must be of type <code>String</code>.
*/
public final static String PROVISIONING_SPID = "provisioning.spid";
+
/**
* The key to the provisioning information that contains the location of the
* provision data provider. The value must be of type <code>String</code>.
*/
public final static String PROVISIONING_REFERENCE = "provisioning.reference";
+
/**
* The key to the provisioning information that contains the initial
* configuration information of the initial Management Agent. The value will
* be of type <code>byte[]</code>.
*/
public final static String PROVISIONING_AGENT_CONFIG = "provisioning.agent.config";
+
/**
* The key to the provisioning information that contains the update count of
* the info data. Each set of changes to the provisioning information must
@@ -85,39 +87,59 @@
* properties of the ProvisioningService in the service registry.
*/
public final static String PROVISIONING_UPDATE_COUNT = "provisioning.update.count";
+
/**
* The key to the provisioning information that contains the location of the
- * bundle to start with <code>AllPermission</code>. The bundle must have be
- * previously installed for this entry to have any effect.
+ * bundle to start with <code>AllPermission</code>. The bundle must have
+ * be previously installed for this entry to have any effect.
*/
public final static String PROVISIONING_START_BUNDLE = "provisioning.start.bundle";
+
/**
* The key to the provisioning information that contains the root X509
- * certificate used to esatblish trust with operator when using HTTPS.
+ * certificate used to establish trust with operator when using HTTPS.
*/
public final static String PROVISIONING_ROOTX509 = "provisioning.rootx509";
+
/**
* The key to the provisioning information that contains the shared secret
* used in conjunction with the RSH protocol.
*/
public final static String PROVISIONING_RSH_SECRET = "provisioning.rsh.secret";
+
/**
- * MIME type to be stored in the extra field of a <code>ZipEntry</code> object
- * for String data.
+ * MIME type to be stored in the extra field of a <code>ZipEntry</code>
+ * object for String data.
*/
public final static String MIME_STRING = "text/plain;charset=utf-8";
+
/**
- * MIME type to be stored in the extra field of a <code>ZipEntry</code> object
- * for <code>byte[]</code> data.
+ * MIME type to be stored stored in the extra field of a
+ * <code>ZipEntry</code> object for <code>byte[]</code> data.
*/
public final static String MIME_BYTE_ARRAY = "application/octet-stream";
+
/**
- * MIME type to be stored in the extra field of a <code>ZipEntry</code> object
- * for an installable bundle file. Zip entries of this type will be
+ * MIME type to be stored in the extra field of a <code>ZipEntry</code>
+ * object for an installable bundle file. Zip entries of this type will be
* installed in the framework, but not started. The entry will also not be
* put into the information dictionary.
*/
- public final static String MIME_BUNDLE = "application/x-osgi-bundle";
+ public final static String MIME_BUNDLE = "application/vnd.osgi.bundle";
+
+ /**
+ * Alternative MIME type to be stored in the extra field of a
+ * <code>ZipEntry</code> object for an installable bundle file. Zip entries
+ * of this type will be installed in the framework, but not started. The
+ * entry will also not be put into the information dictionary. This
+ * alternative entry is only for backward compatibility, new applications
+ * are recommended to use <code>MIME_BUNDLE</code>, which is an official
+ * IANA MIME type.
+ *
+ * @since 1.2
+ */
+ public final static String MIME_BUNDLE_ALT = "application/x-osgi-bundle";
+
/**
* MIME type to be stored in the extra field of a ZipEntry for a String that
* represents a URL for a bundle. Zip entries of this type will be used to
@@ -127,20 +149,30 @@
public final static String MIME_BUNDLE_URL = "text/x-osgi-bundle-url";
/**
+ * Name of the header that specifies the type information for the ZIP file
+ * entries.
+ *
+ * @since 1.2
+ */
+ public final static String INITIALPROVISIONING_ENTRIES = "InitialProvisioning-Entries";
+
+ /**
* Returns a reference to the Provisioning Dictionary. Any change operations
* (put and remove) to the dictionary will cause an
- * <code>UnsupportedOperationException</code> to be thrown. Changes must be
- * done using the <code>setInformation</code> and <code>addInformation</code>
- * methods of this service.
+ * <code>UnsupportedOperationException</code> to be thrown. Changes must
+ * be done using the <code>setInformation</code> and
+ * <code>addInformation</code> methods of this service.
+ *
* @return A reference to the Provisioning Dictionary.
*/
public Dictionary getInformation();
/**
* Replaces the Provisioning Information dictionary with the key/value pairs
- * contained in <code>info</code>. Any key/value pairs not in <code>info</code>
- * will be removed from the Provisioning Information dictionary. This method
- * causes the <code>PROVISIONING_UPDATE_COUNT</code> to be incremented.
+ * contained in <code>info</code>. Any key/value pairs not in
+ * <code>info</code> will be removed from the Provisioning Information
+ * dictionary. This method causes the <code>PROVISIONING_UPDATE_COUNT</code>
+ * to be incremented.
*
* @param info the new set of Provisioning Information key/value pairs. Any
* keys are values that are of an invalid type will be silently
@@ -149,8 +181,8 @@
public void setInformation(Dictionary info);
/**
- * Adds the key/value pairs contained in <code>info</code> to the Provisioning
- * Information dictionary. This method causes the
+ * Adds the key/value pairs contained in <code>info</code> to the
+ * Provisioning Information dictionary. This method causes the
* <code>PROVISIONING_UPDATE_COUNT</code> to be incremented.
*
* @param info the set of Provisioning Information key/value pairs to add to
@@ -160,22 +192,22 @@
public void addInformation(Dictionary info);
/**
- * Processes the <code>ZipInputStream</code> and extracts information to add
- * to the Provisioning Information dictionary, as well as, install/update
- * and start bundles. This method causes the
+ * Processes the <code>ZipInputStream</code> and extracts information to
+ * add to the Provisioning Information dictionary, as well as,
+ * install/update and start bundles. This method causes the
* <code>PROVISIONING_UPDATE_COUNT</code> to be incremented.
*
* @param zis the <code>ZipInputStream</code> that will be used to add
* key/value pairs to the Provisioning Information dictionary and
- * install and start bundles. If a <code>ZipEntry</code> does not have
- * an <code>Extra</code> field that corresponds to one of the four
- * defined MIME types (<code>MIME_STRING</code>,
+ * install and start bundles. If a <code>ZipEntry</code> does not
+ * have an <code>Extra</code> field that corresponds to one of the
+ * four defined MIME types (<code>MIME_STRING</code>,
* <code>MIME_BYTE_ARRAY</code>,<code>MIME_BUNDLE</code>, and
* <code>MIME_BUNDLE_URL</code>) in will be silently ignored.
* @throws IOException if an error occurs while processing the
- * ZipInputStream. No additions will be made to the Provisioning
- * Information dictionary and no bundles must be started or
- * installed.
+ * ZipInputStream. No additions will be made to the Provisioning
+ * Information dictionary and no bundles must be started or
+ * installed.
*/
public void addInformation(ZipInputStream zis) throws IOException;
}
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/package.html
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/package.html?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/package.html (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/package.html Fri Jul 24 17:06:37 2009
@@ -0,0 +1,10 @@
+<!-- $Revision: 6204 $ -->
+<BODY>
+<p>Provisioning 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.service.provisioning; version="[1.2,2.0)"
+</pre>
+</BODY>
Added: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/packageinfo
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/packageinfo?rev=797561&view=auto
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/packageinfo (added)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/provisioning/packageinfo Fri Jul 24 17:06:37 2009
@@ -0,0 +1 @@
+version 1.2
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPAction.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPAction.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPAction.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPAction.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.upnp/src/org/osgi/service/upnp/UPnPAction.java,v 1.10 2006/06/16 16:31:46 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2002, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2008). 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.
@@ -24,7 +22,8 @@
*
* Each UPnP service contains zero or more actions. Each action may have zero or
* more UPnP state variables as arguments.
- *
+ *
+ * @version $Revision: 5673 $
*/
public interface UPnPAction {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPDevice.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPDevice.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPDevice.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPDevice.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.upnp/src/org/osgi/service/upnp/UPnPDevice.java,v 1.9 2006/06/16 16:31:46 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2002, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2008). 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.
@@ -36,7 +34,8 @@
* <p>
* If an application wants to query for a set of localized property values, it
* has to use the method <code>UPnPDevice.getDescriptions(String locale)</code>.
- *
+ *
+ * @version $Revision: 5673 $
*/
public interface UPnPDevice {
/*
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPEventListener.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPEventListener.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPEventListener.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPEventListener.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.upnp/src/org/osgi/service/upnp/UPnPEventListener.java,v 1.8 2006/06/16 16:31:46 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2002, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2008). 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.
@@ -25,9 +23,9 @@
* generated by a particular UPnP Device registers a service extending this
* interface.
* <p>
- * The notification call from the UPnP Service to any <code>UPnPEventListener</code>
- * object must be done asynchronous with respect to the originator (in a
- * separate thread).
+ * The notification call from the UPnP Service to any
+ * <code>UPnPEventListener</code> object must be done asynchronous with respect
+ * to the originator (in a separate thread).
* <p>
* Upon registration of the UPnP Event Listener service with the Framework, the
* service is notified for each variable which it listens for with an initial
@@ -56,6 +54,8 @@
* <li><code>UPnPService.ID</code>-- The ID of a specific service to listen for
* events.</li>
* </ul>
+ *
+ * @version $Revision: 5673 $
*/
public interface UPnPEventListener {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPException.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPException.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPException.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPException.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.upnp/src/org/osgi/service/upnp/UPnPException.java,v 1.14 2006/07/12 21:21:34 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2005, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2008). 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,12 +15,12 @@
*/
package org.osgi.service.upnp;
-
/**
* There are several defined error situations describing UPnP problems while a
* control point invokes actions to UPnPDevices.
*
* @since 1.1
+ * @version $Revision: 5673 $
*/
public class UPnPException extends Exception {
static final long serialVersionUID = -262013318122195146L;
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPIcon.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPIcon.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPIcon.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPIcon.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.upnp/src/org/osgi/service/upnp/UPnPIcon.java,v 1.12 2006/07/12 21:21:34 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2002, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2002, 2008). 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.
@@ -24,6 +22,8 @@
* A UPnP icon representation.
*
* Each UPnP device can contain zero or more icons.
+ *
+ * @version $Revision: 5673 $
*/
public interface UPnPIcon {
/**
Modified: felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPLocalStateVariable.java
URL: http://svn.apache.org/viewvc/felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPLocalStateVariable.java?rev=797561&r1=797560&r2=797561&view=diff
==============================================================================
--- felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPLocalStateVariable.java (original)
+++ felix/trunk/org.osgi.compendium/src/main/java/org/osgi/service/upnp/UPnPLocalStateVariable.java Fri Jul 24 17:06:37 2009
@@ -1,7 +1,5 @@
/*
- * $Header: /cvshome/build/org.osgi.service.upnp/src/org/osgi/service/upnp/UPnPLocalStateVariable.java,v 1.12 2006/06/16 16:31:46 hargrave Exp $
- *
- * Copyright (c) OSGi Alliance (2005, 2006). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2008). 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,6 +27,8 @@
* be queried.
*
* @since 1.1
+ *
+ * @version $Revision: 5673 $
*/
public interface UPnPLocalStateVariable extends UPnPStateVariable {
/**