diff --git a/org.osgi.jmx/src/org/osgi/jmx/Item.java b/org.osgi.jmx/src/org/osgi/jmx/Item.java
deleted file mode 100644
index 62c393f..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/Item.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (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.
- * 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.jmx;
-
-import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.Set;
-
-import javax.management.openmbean.ArrayType;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.OpenDataException;
-import javax.management.openmbean.OpenType;
-import javax.management.openmbean.TabularType;
-
-/**
- * The item class enables the definition of open types in the appropriate
- * interfaces.
- *
- * This class contains a number of methods that make it possible to create open
- * types for {@link CompositeType}, {@link TabularType}, and {@link ArrayType}.
- * The normal creation throws a checked exception, making it impossible to use
- * them in a static initializer. The constructors are also not very suitable
- * for static construction.
- *
- *
- * An Item instance describes an item in a Composite Type. It groups the triplet
- * of name, description, and Open Type. These Item instances allows the
- * definitions of an item to stay together.
- *
- * @version $Revision: 8482 $
- * @Immutable
- */
-public class Item {
-
- /**
- * The name of this item.
- */
- private final String name;
-
- /**
- * The description of this item.
- */
- private final String description;
-
- /**
- * The type of this item.
- */
- private final OpenType type;
-
- /**
- * Create a triple of name, description, and type. This triplet is used in
- * the creation of a Composite Type.
- *
- * @param name
- * The name of the item.
- * @param description
- * The description of the item.
- * @param type
- * The Open Type of this item.
- * @param restrictions
- * Ignored, contains list of restrictions
- */
- public Item(String name, String description, OpenType type,
- String... restrictions) {
- this.name = name;
- this.description = description;
- this.type = type;
- }
-
- /**
- * Create a Tabular Type.
- *
- * @param name
- * The name of the Tabular Type.
- * @param description
- * The description of the Tabular Type.
- * @param rowType
- * The Open Type for a row
- * @param index
- * The names of the items that form the index .
- * @return A new Tabular Type composed from the parameters.
- * @throws RuntimeException
- * when the Tabular Type throws an OpenDataException
- */
- static public TabularType tabularType(String name, String description,
- CompositeType rowType, String... index) {
- try {
- return new TabularType(name, description, rowType, index);
- } catch (OpenDataException e) {
- throw new RuntimeException(e);
- }
- }
-
- /**
- * Create a Composite Type
- *
- * @param name
- * The name of the Tabular Type.
- * @param description
- * The description of the Tabular Type.
- * @param items
- * The items that describe the composite type.
- * @return a new Composite Type
- * @throws RuntimeException
- * when the Tabular Type throws an OpenDataException
- */
- static public CompositeType compositeType(String name, String description,
- Item... items) {
- return extend(null, name, description, items);
- }
-
- /**
- * Return a new Array Type.
- *
- * @param dim
- * The dimension
- * @param elementType
- * The element type
- * @return A new Array Type
- */
- public static ArrayType arrayType(int dim, OpenType elementType) {
- try {
- return new ArrayType(dim, elementType);
- } catch (OpenDataException e) {
- throw new RuntimeException(e);
- }
- }
-
- /**
- * Extend a Composite Type by adding new items. Items can override items in
- * the parent type.
- *
- * @param parent
- * The parent type, can be <code>null</code>
- * @param name
- * The name of the type
- * @param description
- * The description of the type
- * @param items
- * The items that should be added/override to the parent type
- * @return A new Composite Type that extends the parent type
- * @throws RuntimeException
- * when an OpenDataException is thrown
- */
- public static CompositeType extend(CompositeType parent, String name,
- String description, Item... items) {
- Set<Item> all = new LinkedHashSet<Item>();
-
- if (parent != null) {
- for (Object nm : parent.keySet()) {
- String key = (String) nm;
- all.add(new Item(key, parent.getDescription(key),
- parent.getType(key)));
- }
- }
-
- Collections.addAll(all, items);
-
- int size = all.size();
- String names[] = new String[size];
- String descriptions[] = new String[size];
- OpenType types[] = new OpenType[size];
-
- int m = 0;
- for (Item item : all) {
- names[m] = item.name;
- descriptions[m] = item.description;
- types[m] = item.type;
- m++;
- }
-
- try {
- return new CompositeType(name, description, names, descriptions,
- types);
- } catch (OpenDataException e) {
- throw new RuntimeException(e);
- }
- }
-
-}
diff --git a/org.osgi.jmx/src/org/osgi/jmx/JmxConstants.java b/org.osgi.jmx/src/org/osgi/jmx/JmxConstants.java
deleted file mode 100644
index 70b98f3..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/JmxConstants.java
+++ /dev/null
@@ -1,312 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import javax.management.openmbean.ArrayType;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.SimpleType;
-import javax.management.openmbean.TabularType;
-
-/**
- * Constants for OSGi JMX Specification.
- *
- * Additionally, this class contains a number of utility types that are used in
- * different places in the specification. These are {@link #LONG_ARRAY_TYPE},
- * {@link #STRING_ARRAY_TYPE}, and {@link #PROPERTIES_TYPE}.
- *
- * @version $Revision: 8512 $
- * @Immutable
- */
-public class JmxConstants {
-
- /*
- * Empty constructor to make sure this is not used as an object.
- */
- private JmxConstants() {
- // empty
- }
-
- /**
- * The MBean Open type for an array of strings
- */
- public static final ArrayType STRING_ARRAY_TYPE = Item
- .arrayType(
- 1,
- SimpleType.STRING);
- /**
- * The MBean Open type for an array of longs
- */
- public static final ArrayType LONG_ARRAY_TYPE = Item
- .arrayType(
- 1,
- SimpleType.LONG);
-
- /**
- * For an encoded array we need to start with ARRAY_OF. This must be
- * followed by one of the names in {@link #SCALAR}.
- *
- */
- public final static String ARRAY_OF = "Array of ";
-
- /**
- * For an encoded vector we need to start with ARRAY_OF. This must be
- * followed by one of the names in {@link #SCALAR}.
- */
- public final static String VECTOR_OF = "Vector of ";
-
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.String}
- */
- public static final String STRING = "String";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Integer}
- */
- public static final String INTEGER = "Integer";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Long}
- */
- public static final String LONG = "Long";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Float}
- */
- public static final String FLOAT = "Float";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Double}
- */
- public static final String DOUBLE = "Double";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Byte}
- */
- public static final String BYTE = "Byte";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Short}
- */
- public static final String SHORT = "Short";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Character}
- */
- public static final String CHARACTER = "Character";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.lang.Boolean}
- */
- public static final String BOOLEAN = "Boolean";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.math.BigDecimal}
- */
- public static final String BIGDECIMAL = "BigDecimal";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * {@link java.math.BigInteger}
- */
- public static final String BIGINTEGER = "BigInteger";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>double</code> primitive type.
- */
- public static final String P_DOUBLE = "double";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>float</code> primitive type.
- */
- public static final String P_FLOAT = "float";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>long</code> primitive type.
- */
- public static final String P_LONG = "long";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>int</code> primitive type.
- */
- public static final String P_INT = "int";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>short</code> primitive type.
- */
- public static final String P_SHORT = "short";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>byte</code> primitive type.
- */
- public static final String P_BYTE = "byte";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>char</code> primitive type.
- */
- public static final String P_CHAR = "char";
- /**
- * Value for {@link #PROPERTY_TYPE} value in the case of
- * the <code>boolean</code> primitive type.
- */
- public static final String P_BOOLEAN = "boolean";
-
- /**
- * A set of all scalars that can be used in the {@link #TYPE} property of a
- * {@link #PROPERTIES_TYPE}. This contains the following names:
- * <ul>
- * <li>{@link #BIGDECIMAL}</li>
- * <li>{@link #BIGINTEGER}</li>
- * <li>{@link #BOOLEAN}</li>
- * <li>{@link #BYTE}</li>
- * <li>{@link #CHARACTER}</li>
- * <li>{@link #DOUBLE}</li>
- * <li>{@link #FLOAT}</li>
- * <li>{@link #INTEGER}</li>
- * <li>{@link #LONG}</li>
- * <li>{@link #SHORT}</li>
- * <li>{@link #STRING}</li>
- * <li>{@link #P_BYTE}</li>
- * <li>{@link #P_CHAR}</li>
- * <li>{@link #P_DOUBLE}</li>
- * <li>{@link #P_FLOAT}</li>
- * <li>{@link #P_INT}</li>
- * <li>{@link #P_LONG}</li>
- * <li>{@link #P_SHORT}</li>
- */
- public final static List<String> SCALAR = Collections
- .unmodifiableList(Arrays
- .asList(
- STRING,
- INTEGER,
- LONG,
- FLOAT,
- DOUBLE,
- BYTE,
- SHORT,
- CHARACTER,
- BOOLEAN,
- BIGDECIMAL,
- BIGINTEGER,
- P_BYTE,
- P_CHAR,
- P_SHORT,
- P_INT,
- P_LONG,
- P_DOUBLE,
- P_FLOAT));
- /**
- * The key KEY.
- */
- public static final String KEY = "Key";
- /**
- * The key of a property. The key is {@link #KEY} and the type is
- * {@link SimpleType#STRING}.
- */
- public static final Item KEY_ITEM = new Item(
- KEY,
- "The key of the property",
- SimpleType.STRING);
-
- /**
- * The key VALUE.
- */
- public static final String VALUE = "Value";
-
- /**
- * The value of a property. The key is {@link #VALUE} and the type is
- * {@link SimpleType#STRING}. A value will be encoded by the string given in
- * {@link #TYPE}. The syntax for this type is given in {@link #TYPE_ITEM}.
- */
- public static final Item VALUE_ITEM = new Item(
- VALUE,
- "The value of the property",
- SimpleType.STRING);
-
- /**
- * The key TYPE.
- */
- public static final String TYPE = "Type";
-
- /**
- * The type of the property. The key is {@link #TYPE} and the type is
- * {@link SimpleType#STRING}. This string must follow the following syntax:
- *
- * TYPE ::= ( 'Array of ' | 'Vector of ' )? {@link #SCALAR}
- *
- */
- public static final Item TYPE_ITEM = new Item(
- TYPE,
- "The type of the property",
- SimpleType.STRING,
- STRING,
- INTEGER,
- LONG,
- FLOAT,
- DOUBLE,
- BYTE,
- SHORT,
- CHARACTER,
- BOOLEAN,
- BIGDECIMAL,
- BIGINTEGER,
- P_DOUBLE,
- P_FLOAT,
- P_LONG,
- P_INT,
- P_SHORT,
- P_CHAR,
- P_BYTE,
- P_BOOLEAN);
-
- /**
- * A Composite Type describing a a single property. A property consists of
- * the following items {@link #KEY_ITEM}, {@link #VALUE_ITEM}, and
- * {@link #TYPE_ITEM}.
- */
- public static final CompositeType PROPERTY_TYPE = Item
- .compositeType(
- "PROPERTY",
- "This type encapsulates a key/value pair with a type identifier",
- KEY_ITEM,
- VALUE_ITEM,
- TYPE_ITEM);
-
- /**
- * Describes a map with properties. The row type is {@link #PROPERTY_TYPE}.
- * The index is defined to the {@link #KEY} of the property.
- */
- public static final TabularType PROPERTIES_TYPE = Item
- .tabularType(
- "PROPERTIES",
- "A table of PROPERTY",
- PROPERTY_TYPE,
- KEY);
-
- /**
- * The domain name of the core OSGi MBeans
- */
- public static final String OSGI_CORE = "osgi.core";
-
- /**
- * The domain name of the selected OSGi compendium MBeans
- */
- public static final String OSGI_COMPENDIUM = "osgi.compendium";
-}
diff --git a/org.osgi.jmx/src/org/osgi/jmx/framework/BundleStateMBean.java b/org.osgi.jmx/src/org/osgi/jmx/framework/BundleStateMBean.java
deleted file mode 100644
index c077f5d..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/framework/BundleStateMBean.java
+++ /dev/null
@@ -1,692 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.framework;
-
-import java.io.IOException;
-
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.SimpleType;
-import javax.management.openmbean.TabularData;
-import javax.management.openmbean.TabularType;
-
-import org.osgi.jmx.Item;
-import org.osgi.jmx.JmxConstants;
-
-/**
- * This MBean represents the Bundle state of the framework. This MBean also
- * emits events that clients can use to get notified of the changes in the
- * bundle state of the framework.
- *
- * @version $Revision: 8803 $
- * @ThreadSafe
- */
-public interface BundleStateMBean {
- /**
- * The Object Name for a Bundle State MBean.
- */
- String OBJECTNAME = JmxConstants.OSGI_CORE
- + ":type=bundleState,version=1.5";
-
- /**
- * The key KEY, used in {@link #KEY_ITEM}.
- */
- String KEY = "Key";
-
- /**
- * The item describing the key of a bundle header entry. The key is
- * {@link #KEY} and the type is {@link SimpleType#STRING}.
- */
- Item KEY_ITEM = new Item(KEY, "The bundle header key", SimpleType.STRING);
- /**
- * The key VALUE, used in {@link #VALUE_ITEM}.
- */
- String VALUE = "Value";
- /**
- * The item describing the value of a bundle header entry. The key is
- * {@link #VALUE} and the type is {@link SimpleType#STRING}.
- */
- Item VALUE_ITEM = new Item(VALUE, "The bundle header value",
- SimpleType.STRING);
-
- /**
- * The Composite Type describing an entry in bundle headers. It consists of
- * {@link #KEY_ITEM} and {@link #VALUE_ITEM}.
- */
- CompositeType HEADER_TYPE = Item.compositeType("HEADER",
- "This type encapsulates OSGi bundle header key/value pairs",
- KEY_ITEM, VALUE_ITEM);
-
- /**
- * The Tabular Type describing the type of the Tabular Data value that is
- * returned from {@link #getHeaders(long)} method. The primary item is
- * {@link #KEY_ITEM}.
- */
- TabularType HEADERS_TYPE = Item.tabularType("HEADERS",
- "The table of bundle headers",
- HEADER_TYPE,
- KEY);
-
- /**
- * The key LOCATION, used in {@link #LOCATION_ITEM}.
- */
- String LOCATION = "Location";
- /**
- * The item containing the bundle location in {@link #BUNDLE_TYPE}. The key
- * is {@link #LOCATION} and the the type is {@link SimpleType#STRING}.
- */
- Item LOCATION_ITEM = new Item(LOCATION, "The location of the bundle",
- SimpleType.STRING);
-
- /**
- * The key IDENTIFIER, used in {@link #IDENTIFIER_ITEM}.
- */
- String IDENTIFIER = "Identifier";
-
- /**
- * The item containing the bundle identifier in {@link #BUNDLE_TYPE}. The
- * key is {@link #IDENTIFIER} and the the type is {@link SimpleType#LONG}.
- */
- Item IDENTIFIER_ITEM = new Item(IDENTIFIER, "The id of the bundle",
- SimpleType.LONG);
- /**
- * The key SYMBOLIC_NAME, used in {@link #SYMBOLIC_NAME_ITEM}.
- */
- String SYMBOLIC_NAME = "SymbolicName";
-
- /**
- * The item containing the symbolic name in {@link #BUNDLE_TYPE}. The key is
- * {@link #SYMBOLIC_NAME} and the the type is {@link SimpleType#STRING}.
- */
- Item SYMBOLIC_NAME_ITEM = new Item(SYMBOLIC_NAME,
- "The symbolic name of the bundle", SimpleType.STRING);
- /**
- * The key VERSION, used in {@link #VERSION_ITEM}.
- */
- String VERSION = "Version";
-
- /**
- * The item containing the symbolic name in {@link #BUNDLE_TYPE}. The key is
- * {@link #SYMBOLIC_NAME} and the the type is {@link SimpleType#STRING}.
- */
- Item VERSION_ITEM = new Item(VERSION, "The version of the bundle",
- SimpleType.STRING);
- /**
- * The key START_LEVEL, used in {@link #START_LEVEL_ITEM}.
- */
- String START_LEVEL = "StartLevel";
-
- /**
- * The item containing the start level in {@link #BUNDLE_TYPE}. The key is
- * {@link #START_LEVEL} and the the type is {@link SimpleType#INTEGER}.
- */
- Item START_LEVEL_ITEM = new Item(START_LEVEL,
- "The start level of the bundle", SimpleType.INTEGER);
- /**
- * The key STATE, used in {@link #STATE_ITEM}.
- */
- String STATE = "State";
-
- /**
- * Constant INSTALLED for the {@link #STATE}
- */
- String INSTALLED = "INSTALLED";
- /**
- * Constant RESOLVED for the {@link #STATE}
- */
- String RESOLVED = "RESOLVED";
- /**
- * Constant STARTING for the {@link #STATE}
- */
- String STARTING = "STARTING";
- /**
- * Constant ACTIVE for the {@link #STATE}
- */
- String ACTIVE = "ACTIVE";
- /**
- * Constant STOPPING for the {@link #STATE}
- */
- String STOPPING = "STOPPING";
- /**
- * Constant UNINSTALLED for the {@link #STATE}
- */
- String UNINSTALLED = "UNINSTALLED";
- /**
- * Constant UNKNOWN for the {@link #STATE}
- */
- String UNKNOWN = "UNKNOWN";
- /**
- * The item containing the bundle state in {@link #BUNDLE_TYPE}. The key is
- * {@link #STATE} and the the type is {@link SimpleType#STRING}. The
- * returned values must be one of the following strings:
- * <ul>
- * <li>{@link #INSTALLED}</li>
- * <li>{@link #RESOLVED}</li>
- * <li>{@link #STARTING}</li>
- * <li>{@link #ACTIVE}</li>
- * <li>{@link #STOPPING}</li>
- * <li>{@link #UNINSTALLED}</li>
- * <li>{@link #UNKNOWN}</li>
- * </ul>
- */
- Item STATE_ITEM = new Item(STATE, "The state of the bundle",
- SimpleType.STRING, INSTALLED, RESOLVED, STARTING, ACTIVE, STOPPING,
- UNINSTALLED, UNKNOWN);
- /**
- * The key LAST_MODIFIED, used in {@link #LAST_MODIFIED_ITEM}.
- */
- String LAST_MODIFIED = "LastModified";
-
- /**
- * The item containing the last modified time in the {@link #BUNDLE_TYPE}.
- * The key is {@link #LAST_MODIFIED} and the the type is
- * {@link SimpleType#LONG}.
- */
- Item LAST_MODIFIED_ITEM = new Item(LAST_MODIFIED,
- "The last modification time of the bundle", SimpleType.LONG);
- /**
- * The key PERSISTENTLY_STARTED, used in {@link #PERSISTENTLY_STARTED_ITEM}.
- */
- String PERSISTENTLY_STARTED = "PersistentlyStarted";
-
- /**
- * The item containing the indication of persistently started in
- * {@link #BUNDLE_TYPE}. The key is {@link #PERSISTENTLY_STARTED} and the
- * the type is {@link SimpleType#BOOLEAN}.
- */
- Item PERSISTENTLY_STARTED_ITEM = new Item(PERSISTENTLY_STARTED,
- "Whether the bundle is persistently started", SimpleType.BOOLEAN);
- /**
- * The key REMOVAL_PENDING, used in {@link #REMOVAL_PENDING_ITEM}.
- */
- String REMOVAL_PENDING = "RemovalPending";
-
- /**
- * The item containing the indication of removal pending in
- * {@link #BUNDLE_TYPE}. The key is {@link #REMOVAL_PENDING} and the type is
- * {@link SimpleType#BOOLEAN}.
- */
- Item REMOVAL_PENDING_ITEM = new Item(REMOVAL_PENDING,
- "Whether the bundle is pending removal", SimpleType.BOOLEAN);
- /**
- * The key REQUIRED, used in {@link #REQUIRED_ITEM}.
- */
- String REQUIRED = "Required";
-
- /**
- * The item containing the required status in {@link #BUNDLE_TYPE}. The key
- * is {@link #REQUIRED} and the the type is {@link SimpleType#BOOLEAN}.
- */
- Item REQUIRED_ITEM = new Item(REQUIRED, "Whether the bundle is required",
- SimpleType.BOOLEAN);
- /**
- * The key FRAGMENT, used in {@link #FRAGMENT_ITEM}.
- */
- String FRAGMENT = "Fragment";
-
- /**
- * The item containing the fragment status in {@link #BUNDLE_TYPE}. The key
- * is {@link #FRAGMENT} and the the type is {@link SimpleType#BOOLEAN}.
- */
- Item FRAGMENT_ITEM = new Item(FRAGMENT, "Whether the bundle is a fragment",
- SimpleType.BOOLEAN);
- /**
- * The key REGISTERED_SERVICES, used in {@link #REGISTERED_SERVICES_ITEM}.
- */
- String REGISTERED_SERVICES = "RegisteredServices";
-
- /**
- * The item containing the registered services of the bundle in
- * {@link #BUNDLE_TYPE}. The key is {@link #REGISTERED_SERVICES} and the the
- * type is {@link JmxConstants#LONG_ARRAY_TYPE}.
- */
- Item REGISTERED_SERVICES_ITEM = new Item(REGISTERED_SERVICES,
- "The registered services of the bundle",
- JmxConstants.LONG_ARRAY_TYPE);
- /**
- * The key SERVICES_IN_USE, used in {@link #SERVICES_IN_USE_ITEM}.
- */
- String SERVICES_IN_USE = "ServicesInUse";
-
- /**
- * The item containing the services in use by this bundle in
- * {@link #BUNDLE_TYPE}. The key is {@link #SERVICES_IN_USE} and the the
- * type is {@link JmxConstants#LONG_ARRAY_TYPE}.
- */
- Item SERVICES_IN_USE_ITEM = new Item(SERVICES_IN_USE,
- "The services in use by the bundle", JmxConstants.LONG_ARRAY_TYPE);
- /**
- * The key HEADERS, used in {@link #HEADERS_ITEM}.
- */
- String HEADERS = "Headers";
-
- /**
- * The item containing the bundle headers in {@link #BUNDLE_TYPE}. The key
- * is {@link #HEADERS} and the the type is {@link #HEADERS_TYPE}.
- */
- Item HEADERS_ITEM = new Item(HEADERS, "The headers of the bundle",
- HEADERS_TYPE);
-
- /**
- * The key EXPORTED_PACKAGES, used in {@link #EXPORTED_PACKAGES_ITEM}.
- */
- String EXPORTED_PACKAGES = "ExportedPackages";
-
- /**
- * The item containing the exported package names in {@link #BUNDLE_TYPE}
- * .The key is {@link #EXPORTED_PACKAGES} and the the type is
- * {@link JmxConstants#STRING_ARRAY_TYPE}.
- */
- Item EXPORTED_PACKAGES_ITEM = new Item(EXPORTED_PACKAGES,
- "The exported packages of the bundle",
- JmxConstants.STRING_ARRAY_TYPE);
- /**
- * The key IMPORTED_PACKAGES, used in {@link #EXPORTED_PACKAGES_ITEM}.
- */
- String IMPORTED_PACKAGES = "ImportedPackages";
-
- /**
- * The item containing the imported package names in {@link #BUNDLE_TYPE}
- * .The key is {@link #IMPORTED_PACKAGES} and the the type is
- * {@link JmxConstants#STRING_ARRAY_TYPE}.
- */
- Item IMPORTED_PACKAGES_ITEM = new Item(IMPORTED_PACKAGES,
- "The imported packages of the bundle",
- JmxConstants.STRING_ARRAY_TYPE);
- /**
- * The key FRAGMENTS, used in {@link #FRAGMENTS_ITEM}.
- */
- String FRAGMENTS = "Fragments";
-
- /**
- * The item containing the list of fragments the bundle is host to in
- * {@link #BUNDLE_TYPE}. The key is {@link #FRAGMENTS} and the type is
- * {@link JmxConstants#LONG_ARRAY_TYPE}.
- */
- Item FRAGMENTS_ITEM = new Item(FRAGMENTS,
- "The fragments of which the bundle is host",
- JmxConstants.LONG_ARRAY_TYPE);
- /**
- * The key HOSTS, used in {@link #HOSTS_ITEM}.
- */
- String HOSTS = "Hosts";
-
- /**
- * The item containing the bundle identifiers representing the hosts in
- * {@link #BUNDLE_TYPE}. The key is {@link #HOSTS} and the type is
- * {@link JmxConstants#LONG_ARRAY_TYPE}
- */
- Item HOSTS_ITEM = new Item(HOSTS,
- "The fragments of which the bundle is host",
- JmxConstants.LONG_ARRAY_TYPE);
- /**
- * The key REQUIRED_BUNDLES, used in {@link #REQUIRED_BUNDLES_ITEM}.
- */
- String REQUIRED_BUNDLES = "RequiredBundles";
-
- /**
- * The item containing the required bundles in {@link #BUNDLE_TYPE}. The key
- * is {@link #REQUIRED_BUNDLES} and the type is
- * {@link JmxConstants#LONG_ARRAY_TYPE}
- */
- Item REQUIRED_BUNDLES_ITEM = new Item(REQUIRED_BUNDLES,
- "The required bundles the bundle", JmxConstants.LONG_ARRAY_TYPE);
- /**
- * The key REQUIRING_BUNDLES, used in {@link #REQUIRING_BUNDLES_ITEM}.
- */
- String REQUIRING_BUNDLES = "RequiringBundles";
-
- /**
- * The item containing the bundles requiring this bundle in
- * {@link #BUNDLE_TYPE}. The key is {@link #REQUIRING_BUNDLES} and the type
- * is {@link JmxConstants#LONG_ARRAY_TYPE}
- */
- Item REQUIRING_BUNDLES_ITEM = new Item(REQUIRING_BUNDLES,
- "The bundles requiring the bundle", JmxConstants.LONG_ARRAY_TYPE);
-
- /**
- * The key EVENT, used in {@link #EVENT_ITEM}.
- */
- String EVENT = "BundleEvent";
-
- /**
- * The item containing the event type. The key is {@link #EVENT} and the type is {@link SimpleType#INTEGER}
- */
- Item EVENT_ITEM = new Item(
- EVENT,
- "The type of the event: {INSTALLED=1, STARTED=2, STOPPED=4, UPDATED=8, UNINSTALLED=16}",
- SimpleType.INTEGER);
-
- /**
- * The Composite Type that represents a bundle event. This composite consists of:
- * <ul>
- * <li>{@link #IDENTIFIER}</li>
- * <li>{@link #LOCATION}</li>
- * <li>{@link #SYMBOLIC_NAME}</li>
- * <li>{@link #EVENT}</li>
- * </ul>
- */
- CompositeType BUNDLE_EVENT_TYPE = Item.compositeType("BUNDLE_EVENT",
- "This type encapsulates OSGi bundle events", IDENTIFIER_ITEM,
- LOCATION_ITEM, SYMBOLIC_NAME_ITEM, EVENT_ITEM);
-
- /**
- * The Composite Type that represents a bundle. This composite consist of:
- * <ul>
- * <li>{@link #EXPORTED_PACKAGES}</li>
- * <li>{@link #FRAGMENT}</li>
- * <li>{@link #FRAGMENTS}</li>
- * <li>{@link #HEADERS}</li>
- * <li>{@link #HOSTS}</li>
- * <li>{@link #IDENTIFIER}</li>
- * <li>{@link #IMPORTED_PACKAGES}</li>
- * <li>{@link #LAST_MODIFIED}</li>
- * <li>{@link #LOCATION}</li>
- * <li>{@link #PERSISTENTLY_STARTED}</li>
- * <li>{@link #REGISTERED_SERVICES}</li>
- * <li>{@link #REMOVAL_PENDING}</li>
- * <li>{@link #REQUIRED}</li>
- * <li>{@link #REQUIRED_BUNDLES}</li>
- * <li>{@link #REQUIRING_BUNDLES}</li>
- * <li>{@link #START_LEVEL}</li>
- * <li>{@link #STATE}</li>
- * <li>{@link #SERVICES_IN_USE}</li>
- * <li>{@link #SYMBOLIC_NAME}</li>
- * <li>{@link #VERSION}</li>
- * </ul>
- * It is used by {@link #BUNDLES_TYPE}.
- */
- CompositeType BUNDLE_TYPE = Item.compositeType("BUNDLE",
- "This type encapsulates OSGi bundles", EXPORTED_PACKAGES_ITEM,
- FRAGMENT_ITEM, FRAGMENTS_ITEM, HEADERS_ITEM, HOSTS_ITEM,
- IDENTIFIER_ITEM, IMPORTED_PACKAGES_ITEM, LAST_MODIFIED_ITEM,
- LOCATION_ITEM, PERSISTENTLY_STARTED_ITEM, REGISTERED_SERVICES_ITEM,
- REMOVAL_PENDING_ITEM, REQUIRED_ITEM, REQUIRED_BUNDLES_ITEM,
- REQUIRING_BUNDLES_ITEM, START_LEVEL_ITEM, STATE_ITEM,
- SERVICES_IN_USE_ITEM, SYMBOLIC_NAME_ITEM, VERSION_ITEM);
-
- /**
- * The Tabular Type for a list of bundles. The row type is
- * {@link #BUNDLE_TYPE} and the index is {@link #IDENTIFIER}.
- */
- TabularType BUNDLES_TYPE = Item.tabularType("BUNDLES", "A list of bundles",
- BUNDLE_TYPE,
- IDENTIFIER);
-
- /**
- * Answer the list of identifiers of the bundles this bundle depends upon
- *
- * @param bundleIdentifier
- * the bundle identifier
- * @return the list of bundle identifiers
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- long[] getRequiredBundles(long bundleIdentifier) throws IOException;
-
- /**
- * Answer the bundle state of the system in tabular form.
- *
- * Each row of the returned table represents a single bundle. The Tabular
- * Data consists of Composite Data that is type by {@link #BUNDLES_TYPE}.
- *
- * @return the tabular representation of the bundle state
- * @throws IOException
- */
- TabularData listBundles() throws IOException;
-
- /**
- * Answer the list of exported packages for this bundle.
- *
- * @param bundleId
- * @return the array of package names, combined with their version in the
- * format <packageName;version>
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- String[] getExportedPackages(long bundleId) throws IOException;
-
- /**
- * Answer the list of the bundle ids of the fragments associated with this
- * bundle
- *
- * @param bundleId
- * @return the array of bundle identifiers
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- long[] getFragments(long bundleId) throws IOException;
-
- /**
- * Answer the headers for the bundle uniquely identified by the bundle id.
- * The Tabular Data is typed by the {@link #HEADERS_TYPE}.
- *
- * @param bundleId
- * the unique identifier of the bundle
- * @return the table of associated header key and values
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- TabularData getHeaders(long bundleId) throws IOException;
-
- /**
- * Answer the list of bundle ids of the bundles which host a fragment
- *
- * @param fragment
- * the bundle id of the fragment
- * @return the array of bundle identifiers
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- long[] getHosts(long fragment) throws IOException;
-
- /**
- * Answer the array of the packages imported by this bundle
- *
- * @param bundleId
- * the bundle identifier
- * @return the array of package names, combined with their version in the
- * format <packageName;version>
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- String[] getImportedPackages(long bundleId) throws IOException;
-
- /**
- * Answer the last modified time of a bundle
- *
- * @param bundleId
- * the unique identifier of a bundle
- * @return the last modified time
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- long getLastModified(long bundleId) throws IOException;
-
- /**
- * Answer the list of service identifiers representing the services this
- * bundle exports
- *
- * @param bundleId
- * the bundle identifier
- * @return the list of service identifiers
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- long[] getRegisteredServices(long bundleId) throws IOException;
-
- /**
- * Answer the list of identifiers of the bundles which require this bundle
- *
- * @param bundleIdentifier
- * the bundle identifier
- * @return the list of bundle identifiers
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- long[] getRequiringBundles(long bundleIdentifier) throws IOException;
-
- /**
- * Answer the list of service identifiers which refer to the the services
- * this bundle is using
- *
- * @param bundleIdentifier
- * the bundle identifier
- * @return the list of service identifiers
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- long[] getServicesInUse(long bundleIdentifier) throws IOException;
-
- /**
- * Answer the start level of the bundle
- *
- * @param bundleId
- * the identifier of the bundle
- * @return the start level
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- int getStartLevel(long bundleId) throws IOException;
-
- /**
- * Answer the symbolic name of the state of the bundle
- *
- * @param bundleId
- * the identifier of the bundle
- * @return the string name of the bundle state
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- String getState(long bundleId) throws IOException;
-
- /**
- * Answer the symbolic name of the bundle
- *
- * @param bundleId
- * the identifier of the bundle
- * @return the symbolic name
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- String getSymbolicName(long bundleId) throws IOException;
-
- /**
- * Answer if the bundle is persistently started when its start level is
- * reached
- *
- * @param bundleId
- * the identifier of the bundle
- * @return true if the bundle is persistently started
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- boolean isPersistentlyStarted(long bundleId) throws IOException;
-
- /**
- * Answer whether the bundle is a fragment or not
- *
- * @param bundleId
- * the identifier of the bundle
- * @return true if the bundle is a fragment
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- boolean isFragment(long bundleId) throws IOException;
-
- /**
- * Answer true if the bundle is pending removal
- *
- * @param bundleId
- * the identifier of the bundle
- * @return true if the bundle is pending removal
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- boolean isRemovalPending(long bundleId) throws IOException;
-
- /**
- * Answer true if the bundle is required by another bundle
- *
- * @param bundleId
- * the identifier of the bundle
- * @return true if the bundle is required by another bundle
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- boolean isRequired(long bundleId) throws IOException;
-
- /**
- * Answer the location of the bundle.
- *
- * @param bundleId
- * the identifier of the bundle
- * @return The location string of this bundle
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- String getLocation(long bundleId) throws IOException;
-
- /**
- * Answer the location of the bundle.
- *
- * @param bundleId
- * the identifier of the bundle
- * @return The location string of this bundle
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the bundle indicated does not exist
- */
- String getVersion(long bundleId) throws IOException;
-
-}
diff --git a/org.osgi.jmx/src/org/osgi/jmx/framework/FrameworkMBean.java b/org.osgi.jmx/src/org/osgi/jmx/framework/FrameworkMBean.java
deleted file mode 100644
index 94bb7e5..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/framework/FrameworkMBean.java
+++ /dev/null
@@ -1,488 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.framework;
-
-import java.io.IOException;
-
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.SimpleType;
-
-import org.osgi.jmx.Item;
-import org.osgi.jmx.JmxConstants;
-
-/**
- * The FrameworkMbean provides mechanisms to exert control over the framework.
- * For many operations, it provides a batch mechanism to avoid excessive message
- * passing when interacting remotely.
- *
- * @version $Revision: 9080 $
- * @ThreadSafe
- */
-public interface FrameworkMBean {
- /**
- * The fully qualified object name of this mbean.
- */
- String OBJECTNAME = JmxConstants.OSGI_CORE
- + ":type=framework,version=1.5";
-
- /**
- * The SUCCESS, used in {@link #SUCCESS_ITEM}.
- */
- String SUCCESS = "Success";
-
- /**
- * The item that indicates if this operation was successful. The key is
- * {@link #SUCCESS} and the type is {@link SimpleType#BOOLEAN}. It is used
- * in {@link #BATCH_ACTION_RESULT_TYPE} and
- * {@link #BATCH_INSTALL_RESULT_TYPE}.
- */
- Item SUCCESS_ITEM = new Item(
- SUCCESS,
- "Whether the operation was successful",
- SimpleType.BOOLEAN);
-
- /**
- * The key ERROR, used in {@link #ERROR_ITEM}.
- */
- String ERROR = "Error";
-
- /**
- * The item containing the error message of the batch operation. The key is
- * {@link #ERROR} and the type is {@link SimpleType#STRING}. It is used in
- * {@link #BATCH_ACTION_RESULT_TYPE} and {@link #BATCH_INSTALL_RESULT_TYPE}.
- */
- Item ERROR_ITEM = new Item(
- ERROR,
- "The error message if unsuccessful",
- SimpleType.STRING);
-
- /**
- * The key COMPLETED, used in {@link #COMPLETED_ITEM}.
- */
- String COMPLETED = "Completed";
-
- /**
- * The item containing the list of bundles completing the batch operation.
- * The key is {@link #COMPLETED} and the type is
- * {@link JmxConstants#LONG_ARRAY_TYPE}. It is used in
- * {@link #BATCH_ACTION_RESULT_TYPE} and {@link #BATCH_INSTALL_RESULT_TYPE}.
- */
- Item COMPLETED_ITEM = new Item(
- COMPLETED,
- "The bundle ids of the successfully completed installs",
- JmxConstants.LONG_ARRAY_TYPE);
-
- /**
- * The key for BUNDLE_IN_ERROR. This key is used with two different items:
- * {@link #BUNDLE_IN_ERROR_ID_ITEM} and
- * {@link #BUNDLE_IN_ERROR_LOCATION_ITEM} that each have a different type
- * for this key. It is used in {@link #BATCH_ACTION_RESULT_TYPE} and
- * {@link #BATCH_INSTALL_RESULT_TYPE}.
- */
- String BUNDLE_IN_ERROR = "BundleInError";
-
- /**
- * The item containing the bundle which caused the error during the batch
- * operation. This item describes the bundle in error as an id. The key is
- * {@link #BUNDLE_IN_ERROR} and the type is {@link SimpleType#LONG}. It is
- * used in {@link #BATCH_ACTION_RESULT_TYPE}.
- *
- * @see #BUNDLE_IN_ERROR_LOCATION_ITEM BUNDLE_IN_ERROR_LOCATION_ITEM for the
- * item that has a location for the bundle in error.
- */
- Item BUNDLE_IN_ERROR_ID_ITEM = new Item(
- BUNDLE_IN_ERROR,
- "The id of the bundle causing the error",
- SimpleType.LONG);
-
- /**
- * The key REMAINING, used in {@link #REMAINING_ID_ITEM} and
- * {@link #REMAINING_LOCATION_ITEM}.
- */
- String REMAINING = "Remaining";
-
- /**
- * The item containing the list of remaining bundles unprocessed by the
- * failing batch operation. The key is {@link #REMAINING} and the type is
- * {@link JmxConstants#LONG_ARRAY_TYPE}. It is used in
- * {@link #BATCH_ACTION_RESULT_TYPE} and {@link #BATCH_INSTALL_RESULT_TYPE}.
- */
- Item REMAINING_ID_ITEM = new Item(
- REMAINING,
- "The ids of the remaining bundles",
- JmxConstants.LONG_ARRAY_TYPE);
-
- /**
- * The Composite Type for a batch action result.
- * {@link #refreshBundle(long)} and {@link #refreshBundles(long[])}.
- * Notice that a batch action result returns uses an id for the
- * {@link #BUNDLE_IN_ERROR} while the {@link #BATCH_INSTALL_RESULT_TYPE}
- * uses a location.
- *
- * This Composite Type consists of the following items:
- * <ul>
- * <li>{@link #BUNDLE_IN_ERROR_ID_ITEM}</li>
- * <li>{@link #COMPLETED_ITEM}</li>
- * <li>{@link #ERROR_ITEM}</li>
- * <li>{@link #REMAINING_ID_ITEM}</li>
- * <li>{@link #SUCCESS_ITEM}</li>
- * </ul>
- */
- CompositeType BATCH_ACTION_RESULT_TYPE = Item
- .compositeType(
- "BUNDLE_ACTION_RESULT",
- "This type encapsulates a bundle batch install action result",
- BUNDLE_IN_ERROR_ID_ITEM,
- COMPLETED_ITEM,
- ERROR_ITEM,
- REMAINING_ID_ITEM,
- SUCCESS_ITEM //
- );
-
- /**
- * The item containing the bundle which caused the error during the batch
- * operation. This item describes the bundle in error as a location. The key
- * is {@link #BUNDLE_IN_ERROR} and the type is {@link SimpleType#STRING}. It
- * is used in {@link #BATCH_INSTALL_RESULT_TYPE}.
- *
- * @see #BUNDLE_IN_ERROR_ID_ITEM BUNDLE_IN_ERROR_ID_ITEM for the item that
- * has the id for the bundle in error.
- */
- Item BUNDLE_IN_ERROR_LOCATION_ITEM = new Item(
- BUNDLE_IN_ERROR,
- "The location of the bundle causing the error",
- SimpleType.STRING);
-
- /**
- * The item containing the list of remaining bundles unprocessed by the
- * failing batch operation. The key is {@link #REMAINING} and the type is
- * {@link JmxConstants#STRING_ARRAY_TYPE}. It is used in
- * {@link #BATCH_ACTION_RESULT_TYPE} and {@link #BATCH_INSTALL_RESULT_TYPE}.
- */
- Item REMAINING_LOCATION_ITEM = new Item(
- REMAINING,
- "The locations of the remaining bundles",
- JmxConstants.STRING_ARRAY_TYPE);
-
- /**
- * The Composite Type which represents the result of a batch install
- * operation. It is used in {@link #installBundles(String[])} and
- * {@link #installBundlesFromURL(String[], String[])}.
- *
- * This Composite Type consists of the following items:
- * <ul>
- * <li>{@link #BUNDLE_IN_ERROR_LOCATION_ITEM}</li>
- * <li>{@link #COMPLETED_ITEM}</li>
- * <li>{@link #ERROR_ITEM}</li>
- * <li>{@link #REMAINING_LOCATION_ITEM P }</li>
- * <li>{@link #SUCCESS_ITEM}</li>
- * </ul>
- */
- CompositeType BATCH_INSTALL_RESULT_TYPE = Item
- .compositeType(
- "BATCH_INSTALL_RESULT",
- "This type encapsulates a bundle batch install action result",
- BUNDLE_IN_ERROR_LOCATION_ITEM,
- COMPLETED_ITEM,
- ERROR_ITEM,
- REMAINING_LOCATION_ITEM,
- SUCCESS_ITEM //
- );
-
- /**
- * Retrieve the framework start level
- *
- * @return the framework start level
- * @throws IOException if the operation failed
- */
- int getFrameworkStartLevel() throws IOException;
-
- /**
- * Answer the initial start level assigned to a bundle when it is first
- * started
- *
- * @return the start level
- * @throws IOException if the operation failed
- */
- int getInitialBundleStartLevel() throws IOException;
-
- /**
- * Install the bundle indicated by the bundleLocations
- *
- * @param location the location of the bundle to install
- * @return the bundle id the installed bundle
- * @throws IOException if the operation does not succeed
- */
- long installBundle(String location) throws IOException;
-
- /**
- * Install the bundle indicated by the bundleLocations
- *
- * @param location the location to assign to the bundle
- * @param url the URL which will supply the bytes for the bundle
- * @return the bundle id the installed bundle
- * @throws IOException if the operation does not succeed
- */
- long installBundleFromURL(String location, String url) throws IOException;
-
- /**
- * Batch install the bundles indicated by the list of bundleLocationUrls
- *
- * @see #BATCH_INSTALL_RESULT_TYPE BATCH_INSTALL_RESULT_TYPE for the precise
- * specification of the CompositeData type representing the returned
- * result.
- *
- * @param locations the array of locations of the bundles to install
- * @return the resulting state from executing the operation
- * @throws IOException if the operation does not succeed
- */
- CompositeData installBundles(String[] locations) throws IOException;
-
- /**
- * Batch install the bundles indicated by the list of bundleLocationUrls
- *
- * @see #BATCH_INSTALL_RESULT_TYPE BATCH_INSTALL_RESULT_TYPE
- * BatchBundleResult for the precise specification of the CompositeData
- * type representing the returned result.
- *
- * @param locations the array of locations to assign to the installed
- * bundles
- * @param urls the array of urls which supply the bundle bytes
- * @return the resulting state from executing the operation
- * @throws IOException if the operation does not succeed
- */
- CompositeData installBundlesFromURL(String[] locations, String[] urls)
- throws IOException;
-
- /**
- * Force the update, replacement or removal of the packages identified by
- * the specified bundle.
- *
- * @param bundleIdentifier the bundle identifier
- * @throws IOException if the operation failed
- */
- void refreshBundle(long bundleIdentifier) throws IOException;
-
- /**
- * Force the update, replacement or removal of the packages identified by
- * the list of bundles.
- *
- * @param bundleIdentifiers The identifiers of the bundles to refresh, or
- * <code>null</code> for all bundles with packages pending removal.
- * @throws IOException if the operation failed
- */
- void refreshBundles(long[] bundleIdentifiers) throws IOException;
-
- /**
- * Resolve the bundle indicated by the unique symbolic name and version
- *
- * @param bundleIdentifier the bundle identifier
- * @return <code>true</code> if the bundle was resolved, false otherwise
- * @throws IOException if the operation does not succeed
- * @throws IllegalArgumentException if the bundle indicated does not exist
- */
- boolean resolveBundle(long bundleIdentifier) throws IOException;
-
- /**
- * Batch resolve the bundles indicated by the list of bundle identifiers
- *
- * @param bundleIdentifiers The identifiers of the bundles to resolve, or
- * <code>null</code> to resolve all unresolved bundles.
- * @return <code>true</code> if the bundles were resolved, false otherwise
- * @throws IOException if the operation does not succeed
- */
- boolean resolveBundles(long[] bundleIdentifiers) throws IOException;
-
- /**
- * Restart the framework by updating the system bundle
- *
- * @throws IOException if the operation failed
- */
- void restartFramework() throws IOException;
-
- /**
- * Set the start level for the bundle identifier
- *
- * @param bundleIdentifier the bundle identifier
- * @param newlevel the new start level for the bundle
- * @throws IOException if the operation failed
- */
- void setBundleStartLevel(long bundleIdentifier, int newlevel)
- throws IOException;
-
- /**
- * Set the start levels for the list of bundles.
- *
- * @see #BATCH_ACTION_RESULT_TYPE BATCH_ACTION_RESULT_TYPE for the precise
- * specification of the CompositeData type representing the returned
- * result.
- *
- * @param bundleIdentifiers the array of bundle identifiers
- * @param newlevels the array of new start level for the bundles
- * @return the resulting state from executing the operation
- * @throws IOException if the operation failed
- */
- CompositeData setBundleStartLevels(long[] bundleIdentifiers, int[] newlevels)
- throws IOException;
-
- /**
- * Set the start level for the framework
- *
- * @param newlevel the new start level
- * @throws IOException if the operation failed
- */
- void setFrameworkStartLevel(int newlevel) throws IOException;
-
- /**
- * Set the initial start level assigned to a bundle when it is first started
- *
- * @param newlevel the new start level
- * @throws IOException if the operation failed
- */
- void setInitialBundleStartLevel(int newlevel) throws IOException;
-
- /**
- * Shutdown the framework by stopping the system bundle
- *
- * @throws IOException if the operation failed
- */
- void shutdownFramework() throws IOException;
-
- /**
- * Start the bundle indicated by the bundle identifier
- *
- * @param bundleIdentifier the bundle identifier
- * @throws IOException if the operation does not succeed
- * @throws IllegalArgumentException if the bundle indicated does not exist
- */
- void startBundle(long bundleIdentifier) throws IOException;
-
- /**
- * Batch start the bundles indicated by the list of bundle identifier
- *
- * @see #BATCH_ACTION_RESULT_TYPE BATCH_ACTION_RESULT_TYPE for the precise
- * specification of the CompositeData type representing the returned
- * result.
- *
- * @param bundleIdentifiers the array of bundle identifiers
- * @return the resulting state from executing the operation
- * @throws IOException if the operation does not succeed
- */
- CompositeData startBundles(long[] bundleIdentifiers) throws IOException;
-
- /**
- * Stop the bundle indicated by the bundle identifier
- *
- * @param bundleIdentifier the bundle identifier
- * @throws IOException if the operation does not succeed
- * @throws IllegalArgumentException if the bundle indicated does not exist
- */
- void stopBundle(long bundleIdentifier) throws IOException;
-
- /**
- * Batch stop the bundles indicated by the list of bundle identifier
- *
- * @see #BATCH_ACTION_RESULT_TYPE BATCH_ACTION_RESULT_TYPE for the precise
- * specification of the CompositeData type representing the returned
- * result.
- *
- * @param bundleIdentifiers the array of bundle identifiers
- * @return the resulting state from executing the operation
- * @throws IOException if the operation does not succeed
- */
- CompositeData stopBundles(long[] bundleIdentifiers) throws IOException;
-
- /**
- * Uninstall the bundle indicated by the bundle identifier
- *
- * @param bundleIdentifier the bundle identifier
- * @throws IOException if the operation does not succeed
- * @throws IllegalArgumentException if the bundle indicated does not exist
- */
- void uninstallBundle(long bundleIdentifier) throws IOException;
-
- /**
- * Batch uninstall the bundles indicated by the list of bundle identifiers
- *
- * @see #BATCH_ACTION_RESULT_TYPE BATCH_ACTION_RESULT_TYPE for the precise
- * specification of the CompositeData type representing the returned
- * result.
- *
- * @param bundleIdentifiers the array of bundle identifiers
- * @return the resulting state from executing the operation
- * @throws IOException if the operation does not succeed
- */
- CompositeData uninstallBundles(long[] bundleIdentifiers) throws IOException;
-
- /**
- * Update the bundle indicated by the bundle identifier
- *
- * @param bundleIdentifier the bundle identifier
- * @throws IOException if the operation does not succeed
- * @throws IllegalArgumentException if the bundle indicated does not exist
- */
- void updateBundle(long bundleIdentifier) throws IOException;
-
- /**
- * Update the bundle identified by the bundle identifier
- *
- * @param bundleIdentifier the bundle identifier
- * @param url the URL to use to update the bundle
- * @throws IOException if the operation does not succeed
- * @throws IllegalArgumentException if the bundle indicated does not exist
- */
- void updateBundleFromURL(long bundleIdentifier, String url) throws IOException;
-
- /**
- * Batch update the bundles indicated by the list of bundle identifier.
- *
- * @see #BATCH_ACTION_RESULT_TYPE BATCH_ACTION_RESULT_TYPE for the precise
- * specification of the CompositeData type representing the returned
- * result.
- *
- * @param bundleIdentifiers the array of bundle identifiers
- * @return the resulting state from executing the operation
- * @throws IOException if the operation does not succeed
- */
- CompositeData updateBundles(long[] bundleIdentifiers) throws IOException;
-
- /**
- * Update the bundle uniquely identified by the bundle symbolic name and
- * version using the contents of the supplied urls.
- *
- * @see #BATCH_ACTION_RESULT_TYPE BATCH_ACTION_RESULT_TYPE for the precise
- * specification of the CompositeData type representing the returned
- * result.
- *
- * @param bundleIdentifiers the array of bundle identifiers
- * @param urls the array of URLs to use to update the bundles
- * @return the resulting state from executing the operation
- * @throws IOException if the operation does not succeed
- * @throws IllegalArgumentException if the bundle indicated does not exist
- */
- CompositeData updateBundlesFromURL(long[] bundleIdentifiers, String[] urls)
- throws IOException;
-
- /**
- * Update the framework by updating the system bundle.
- *
- * @throws IOException if the operation failed
- */
- void updateFramework() throws IOException;
-
- }
\ No newline at end of file
diff --git a/org.osgi.jmx/src/org/osgi/jmx/framework/PackageStateMBean.java b/org.osgi.jmx/src/org/osgi/jmx/framework/PackageStateMBean.java
deleted file mode 100644
index 5525fce..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/framework/PackageStateMBean.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.framework;
-
-import java.io.IOException;
-
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.SimpleType;
-import javax.management.openmbean.TabularData;
-import javax.management.openmbean.TabularType;
-
-import org.osgi.jmx.Item;
-import org.osgi.jmx.JmxConstants;
-
-/**
- * This MBean provides information about the package state of the framework.
- *
- * @version $Revision: 8513 $
- * @ThreadSafe
- */
-public interface PackageStateMBean {
- /**
- * The fully qualified object name of this MBean.
- */
- String OBJECTNAME = JmxConstants.OSGI_CORE
- + ":type=packageState,version=1.5";
-
- /**
- * The key EXPORTING_BUNDLE, used in {@link #EXPORTING_BUNDLES_ITEM}.
- */
- String EXPORTING_BUNDLES = "ExportingBundles";
-
- /**
- * The item containing the bundle identifier in {@link #PACKAGE_TYPE}. The
- * key is {@link #EXPORTING_BUNDLES} and the type is
- * {@link JmxConstants#LONG_ARRAY_TYPE}.
- */
- Item EXPORTING_BUNDLES_ITEM = new Item(
- EXPORTING_BUNDLES,
- "The bundles the package belongs to",
- JmxConstants.LONG_ARRAY_TYPE);
-
- /**
- * The key IMPORTING_BUNDLES, used in {@link #IMPORTING_BUNDLES_ITEM}.
- */
- String IMPORTING_BUNDLES = "ImportingBundles";
-
- /**
- * The item containing the bundle identifier in {@link #PACKAGE_TYPE}. The
- * key is {@link #IMPORTING_BUNDLES} and the type is {@link JmxConstants#LONG_ARRAY_TYPE}.
- */
- Item IMPORTING_BUNDLES_ITEM = new Item(
- IMPORTING_BUNDLES,
- "The importing bundles of the package",
- JmxConstants.LONG_ARRAY_TYPE);
-
-
- /**
- * The key NAME, used in {@link #NAME_ITEM}.
- */
- String NAME = "Name";
-
- /**
- * The item containing the name of the package in {@link #PACKAGE_TYPE}.
- * The key is {@link #NAME} and the type is {@link SimpleType#LONG}.
- */
- Item NAME_ITEM = new Item(NAME,
- "The package name",
- SimpleType.STRING);
-
- /**
- * The name of the item containing the pending removal status of the package
- * in the CompositeData. Used
- */
- String REMOVAL_PENDING = "RemovalPending";
- /**
- * The item representing the removal pending status of a package. The key is
- * {@link #REMOVAL_PENDING} and the type is {@link SimpleType#BOOLEAN}.
- */
- Item REMOVAL_PENDING_ITEM = new Item(
- REMOVAL_PENDING,
- "Whether the package is pending removal",
- SimpleType.BOOLEAN);
-
- /**
- * The name of the item containing the package version in the CompositeData.
- * Used in {@link #VERSION_ITEM}.
- */
- String VERSION = "Version";
-
- /**
- * The item containing the version of the package in {@link #PACKAGE_TYPE}.
- * The key is {@link #VERSION} and the type is {@link SimpleType#STRING}.
- */
- Item VERSION_ITEM = new Item(
- VERSION,
- "The identifier of the bundle the service belongs to",
- SimpleType.STRING);
-
- /**
- * The Composite Type for a CompositeData representing a package. This type
- * consists of:
- * <ul>
- * <li>{@link #EXPORTING_BUNDLES_ITEM}</li>
- * <li>{@link #IMPORTING_BUNDLES_ITEM}</li>
- * <li>{@link #NAME_ITEM}</li>
- * <li>{@link #REMOVAL_PENDING_ITEM}</li>
- * <li>{@link #VERSION_ITEM}</li>
- * </ul>
- * The key is defined as {@link #NAME} and {@link #EXPORTING_BUNDLES}
- */
- CompositeType PACKAGE_TYPE = Item
- .compositeType(
- "PACKAGE",
- "This type encapsulates an OSGi package",
- EXPORTING_BUNDLES_ITEM,
- IMPORTING_BUNDLES_ITEM,
- NAME_ITEM,
- REMOVAL_PENDING_ITEM,
- VERSION_ITEM);
-
- /**
- * The Tabular Type used in {@link #listPackages()}. They key is
- * {@link #NAME}, {@link #VERSION}, and {@link #EXPORTING_BUNDLES}.
- */
- TabularType PACKAGES_TYPE = Item.tabularType("PACKAGES",
- "A table of packages",
- PACKAGE_TYPE, NAME,
- VERSION, EXPORTING_BUNDLES);
-
- /**
- * Answer the identifier of the bundle exporting the package
- *
- * @param packageName - the package name
- * @param version - the version of the package
- * @return the bundle identifiers exporting such a package
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the package indicated does not exist
- */
- long[] getExportingBundles(String packageName, String version)
- throws IOException;
-
- /**
- * Answer the list of identifiers of the bundles importing the package
- *
- * @param packageName The package name
- * @param version The version of the package
- * @param exportingBundle The exporting bundle for the given package
- * @return the list of bundle identifiers
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the package indicated does not exist
- *
- */
- long[] getImportingBundles(String packageName, String version,
- long exportingBundle) throws IOException;
-
- /**
- * Answer the package state of the system in tabular form
- *
- * The Tabular Data is typed by {@link #PACKAGES_TYPE}, which has
- * {@link #PACKAGE_TYPE} as its Composite Type.
- *
- * @return the tabular representation of the package state
- * @throws IOException When fails
- */
- TabularData listPackages() throws IOException;
-
- /**
- * Answer if this package is exported by a bundle which has been updated or
- * uninstalled
- *
- * @param packageName The package name
- * @param version The version of the package
- * @param exportingBundle The bundle exporting the package
- * @return true if this package is being exported by a bundle that has been
- * updated or uninstalled.
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the package indicated does not exist
- */
- boolean isRemovalPending(String packageName, String version, long exportingBundle)
- throws IOException;
-
-}
diff --git a/org.osgi.jmx/src/org/osgi/jmx/framework/ServiceStateMBean.java b/org.osgi.jmx/src/org/osgi/jmx/framework/ServiceStateMBean.java
deleted file mode 100644
index 15ec6e5..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/framework/ServiceStateMBean.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.framework;
-
-import java.io.IOException;
-
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.SimpleType;
-import javax.management.openmbean.TabularData;
-import javax.management.openmbean.TabularType;
-
-import org.osgi.jmx.Item;
-import org.osgi.jmx.JmxConstants;
-
-/**
- * This MBean represents the Service state of the framework. This MBean also
- * emits events that clients can use to get notified of the changes in the
- * service state of the framework.
- *
- * @version $Revision: 9080 $
- * @ThreadSafe
- */
-public interface ServiceStateMBean {
- /**
- * The fully qualified object name of this mbean.
- */
- String OBJECTNAME = JmxConstants.OSGI_CORE
- + ":type=serviceState,version=1.5";
- /**
- * The key BUNDLE_IDENTIFIER, used in {@link #BUNDLE_IDENTIFIER_ITEM}.
- */
- String BUNDLE_IDENTIFIER = "BundleIdentifier";
- /**
- * The item containing the bundle identifier in {@link #SERVICE_TYPE}. The
- * key is {@link #BUNDLE_IDENTIFIER} and the type is {@link SimpleType#LONG}
- * .
- */
- Item BUNDLE_IDENTIFIER_ITEM = new Item(BUNDLE_IDENTIFIER,
- "The identifier of the bundle the service belongs to",
- SimpleType.LONG);
-
- /**
- * The key OBJECT_CLASS, used {@link #OBJECT_CLASS_ITEM}.
- */
- String OBJECT_CLASS = "objectClass";
-
- /**
- * The item containing the interfaces of the service in
- * {@link #SERVICE_TYPE}. The key is {@link #OBJECT_CLASS} and the type is
- * {@link JmxConstants#STRING_ARRAY_TYPE}.
- */
- Item OBJECT_CLASS_ITEM = new Item(
- OBJECT_CLASS,
- "An string array containing the interfaces under which the service has been registered",
- JmxConstants.STRING_ARRAY_TYPE);
-
- /**
- * The key IDENTIFIER, used {@link #IDENTIFIER_ITEM}.
- */
- String IDENTIFIER = "Identifier";
-
- /**
- * The item containing the service identifier in {@link #SERVICE_TYPE}. The
- * key is {@link #IDENTIFIER} and the type is {@link SimpleType#LONG}.
- */
- Item IDENTIFIER_ITEM = new Item(IDENTIFIER,
- "The identifier of the service", SimpleType.LONG);
-
- /**
- * The key USING_BUNDLES, used in {@link #USING_BUNDLES_ITEM}.
- */
- String USING_BUNDLES = "UsingBundles";
-
- /**
- * The item containing the bundles using the service in
- * {@link #SERVICE_TYPE}. The key is {@link #USING_BUNDLES} and the type is
- * {@link JmxConstants#LONG_ARRAY_TYPE}.
- */
- Item USING_BUNDLES_ITEM = new Item(USING_BUNDLES,
- "The bundles using the service", JmxConstants.LONG_ARRAY_TYPE);
-
- /**
- * The Composite Type for a CompositeData representing a service. This type
- * consists of:
- * <ul>
- * <li>{@link #BUNDLE_IDENTIFIER}</li>
- * <li>{@link #IDENTIFIER}</li>
- * <li>{@link #OBJECT_CLASS}</li>
- * <li>{@link #USING_BUNDLES}</li>
- * </ul>
- */
- CompositeType SERVICE_TYPE = Item.compositeType("SERVICE",
- "This type encapsulates an OSGi service", BUNDLE_IDENTIFIER_ITEM,
- IDENTIFIER_ITEM, OBJECT_CLASS_ITEM,
- USING_BUNDLES_ITEM);
-
- /**
- * The Tabular Type for a Service table. The rows consists of
- * {@link #SERVICE_TYPE} Composite Data and the index is {@link #IDENTIFIER}
- * .
- */
- TabularType SERVICES_TYPE = Item.tabularType("SERVICES",
- "The table of all services", SERVICE_TYPE, IDENTIFIER);
-
- /**
- * The key BUNDLE_LOCATION, used in {@link #SERVICE_EVENT_TYPE}.
- */
- String BUNDLE_LOCATION = "BundleLocation";
- /**
- * The item containing the bundle location in {@link #EVENT_ITEM}. The key
- * is {@link #BUNDLE_LOCATION} and the the type is {@link SimpleType#STRING}
- * .
- */
- Item BUNDLE_LOCATION_ITEM = new Item(BUNDLE_LOCATION,
- "The location of the bundle", SimpleType.STRING);
- /**
- * The key BUNDLE_SYMBOLIC_NAME, used in {@link #SERVICE_EVENT_TYPE}.
- */
- String BUNDLE_SYMBOLIC_NAME = "BundleSymbolicName";
-
- /**
- * The item containing the symbolic name in {@link #EVENT}. The key is
- * {@link #BUNDLE_SYMBOLIC_NAME} and the the type is
- * {@link SimpleType#STRING}.
- */
- Item BUNDLE_SYMBOLIC_NAME_ITEM = new Item(BUNDLE_SYMBOLIC_NAME,
- "The symbolic name of the bundle", SimpleType.STRING);
-
- /**
- * The key EVENT, used in {@link #EVENT_ITEM}.
- */
- String EVENT = "ServiceEvent";
-
- /**
- * The item containing the event type. The key is {@link #EVENT} and the
- * type is {@link SimpleType#INTEGER}
- */
- Item EVENT_ITEM = new Item(
- EVENT,
- "The eventType of the event: {REGISTERED=1, MODIFIED=2 UNREGISTERING=3}",
- SimpleType.INTEGER);
-
- /**
- * The Composite Type that represents a service event. This composite
- * consists of:
- * <ul>
- * <li>{@link #IDENTIFIER}</li>
- * <li>{@link #OBJECT_CLASS}</li>
- * <li>{@link #BUNDLE_LOCATION}</li>
- * <li>{@link #BUNDLE_SYMBOLIC_NAME}</li>
- * <li>{@link #EVENT}</li>
- * </ul>
- */
- CompositeType SERVICE_EVENT_TYPE = Item.compositeType("SERVICE_EVENT",
- "This type encapsulates OSGi service events", IDENTIFIER_ITEM,
- OBJECT_CLASS_ITEM, BUNDLE_IDENTIFIER_ITEM, BUNDLE_LOCATION_ITEM,
- BUNDLE_SYMBOLIC_NAME_ITEM, EVENT_ITEM);
-
- /**
- * Answer the list of interfaces that this service implements
- *
- * @param serviceId
- * the identifier of the service
- * @return the list of interfaces
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the service indicated does not exist
- */
- public String[] getObjectClass(long serviceId) throws IOException;
-
- /**
- * Answer the bundle identifier of the bundle which registered the service
- *
- * @param serviceId
- * the identifier of the service
- * @return the identifier for the bundle
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the service indicated does not exist
- */
- long getBundleIdentifier(long serviceId) throws IOException;
-
- /**
- * Answer the map of properties associated with this service
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for the
- * details of the TabularType
- *
- * @param serviceId the identifier of the service
- * @return the table of properties. These include the standard mandatory
- * service.id and objectClass properties as defined in the
- * <code>org.osgi.framework.Constants</code> interface
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the service indicated does not exist
- */
- TabularData getProperties(long serviceId) throws IOException;
-
- /**
- * Answer the service state of the system in tabular form.
- *
- * @see #SERVICES_TYPE SERVICES_TYPE for the details of the TabularType
- *
- * @return the tabular representation of the service state
- * @throws IOException If the operation fails
- * @throws IllegalArgumentException if the service indicated does not exist
- */
- TabularData listServices() throws IOException;
-
- /**
- * Answer the list of identifiers of the bundles that use the service
- *
- * @param serviceId
- * the identifier of the service
- * @return the list of bundle identifiers
- * @throws IOException
- * if the operation fails
- * @throws IllegalArgumentException
- * if the service indicated does not exist
- */
- long[] getUsingBundles(long serviceId) throws IOException;
-
-}
diff --git a/org.osgi.jmx/src/org/osgi/jmx/framework/package.html b/org.osgi.jmx/src/org/osgi/jmx/framework/package.html
deleted file mode 100644
index 6c82637..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/framework/package.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!-- $Revision: 8212 $ -->
-<BODY>
-<p>OSGi JMX Framework Package Version 1.5.</p>
-<p>Bundles wishing to use this package must list the package
-in the Import-Package header of the bundle's manifest.
-For example:</p>
-<pre>
-Import-Package: org.osgi.jmx.framework; version="[1.5,2.0)"
-</pre>
-</BODY>
-
diff --git a/org.osgi.jmx/src/org/osgi/jmx/framework/packageinfo b/org.osgi.jmx/src/org/osgi/jmx/framework/packageinfo
deleted file mode 100644
index 3055417..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/framework/packageinfo
+++ /dev/null
@@ -1 +0,0 @@
-version 1.5
diff --git a/org.osgi.jmx/src/org/osgi/jmx/package.html b/org.osgi.jmx/src/org/osgi/jmx/package.html
deleted file mode 100644
index b9825d9..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/package.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!-- $Revision: 8212 $ -->
-<BODY>
-<p>OSGi JMX Package Version 1.0.</p>
-<p>Bundles wishing to use this package must list the package
-in the Import-Package header of the bundle's manifest.
-For example:</p>
-<pre>
-Import-Package: org.osgi.jmx; version="[1.0,2.0)"
-</pre>
-</BODY>
-
diff --git a/org.osgi.jmx/src/org/osgi/jmx/packageinfo b/org.osgi.jmx/src/org/osgi/jmx/packageinfo
deleted file mode 100644
index e4c5c0c..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/packageinfo
+++ /dev/null
@@ -1 +0,0 @@
-version 1.0
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/cm/ConfigurationAdminMBean.java b/org.osgi.jmx/src/org/osgi/jmx/service/cm/ConfigurationAdminMBean.java
deleted file mode 100644
index 14a5e36..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/cm/ConfigurationAdminMBean.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.service.cm;
-
-import java.io.IOException;
-
-import javax.management.openmbean.TabularData;
-
-import org.osgi.jmx.JmxConstants;
-
-/**
- * This MBean provides the management interface to the OSGi Configuration
- * Administration Service.
- *
- * @version $Revision: 9080 $
- * @ThreadSafe
- */
-public interface ConfigurationAdminMBean {
- /**
- * The object name for this mbean.
- */
- String OBJECTNAME = JmxConstants.OSGI_COMPENDIUM+":service=cm,version=1.3";
-
- /**
- * Create a new configuration instance for the supplied persistent id of the
- * factory, answering the PID of the created configuration
- *
- * @param factoryPid the persistent id of the factory
- * @return the PID of the created configuration
- * @throws IOException if the operation failed
- */
- String createFactoryConfiguration(String factoryPid) throws IOException;
-
- /**
- * Create a factory configuration for the supplied persistent id of the
- * factory and the bundle location bound to bind the created configuration
- * to, answering the PID of the created configuration
- *
- * @param factoryPid the persistent id of the factory
- * @param location the bundle location
- * @return the pid of the created configuation
- * @throws IOException if the operation failed
- */
- String createFactoryConfigurationForLocation(String factoryPid, String location)
- throws IOException;
-
- /**
- * Delete the configuration
- *
- * @param pid the persistent identifier of the configuration
- * @throws IOException if the operation fails
- */
- void delete(String pid) throws IOException;
-
- /**
- * Delete the configuration
- *
- * @param pid the persistent identifier of the configuration
- * @param location the bundle location
- * @throws IOException if the operation fails
- */
- void deleteForLocation(String pid, String location) throws IOException;
-
- /**
- * Delete the configurations matching the filter specification.
- *
- * @param filter the string representation of the
- * <code>org.osgi.framework.Filter</code>
- * @throws IOException if the operation failed
- * @throws IllegalArgumentException if the filter is invalid
- */
- void deleteConfigurations(String filter) throws IOException;
-
- /**
- * Answer the bundle location the configuration is bound to
- *
- * @param pid the persistent identifier of the configuration
- * @return the bundle location
- * @throws IOException if the operation fails
- */
- String getBundleLocation(String pid) throws IOException;
-
- /**
- * Answer the factory PID if the configuration is a factory configuration,
- * null otherwise.
- *
- * @param pid the persistent identifier of the configuration
- * @return the factory PID
- * @throws IOException if the operation fails
- */
- String getFactoryPid(String pid) throws IOException;
-
- /**
- * Answer the factory PID if the configuration is a factory configuration,
- * null otherwise.
- *
- * @param pid the persistent identifier of the configuration
- * @param location the bundle location
- * @return the factory PID
- * @throws IOException if the operation fails
- */
- String getFactoryPidForLocation(String pid, String location) throws IOException;
-
- /**
- * Answer the contents of the configuration.
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for the
- * details of the TabularType
- *
- * @param pid the persistent identifier of the configuration
- * @return the table of contents
- * @throws IOException if the operation fails
- */
-
- TabularData getProperties(String pid) throws IOException;
-
- /**
- * Answer the contents of the configuration.
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for the
- * details of the TabularType
- *
- * @param pid the persistent identifier of the configuration
- * @param location the bundle location
- * @return the table of contents
- * @throws IOException if the operation fails
- */
- TabularData getPropertiesForLocation(String pid, String location) throws IOException;
-
- /**
- * Answer the list of PID/Location pairs of the configurations managed by
- * this service
- *
- * @param filter the string representation of the
- * <code>org.osgi.framework.Filter</code>
- * @return the list of configuration PID/Location pairs
- * @throws IOException if the operation failed
- * @throws IllegalArgumentException if the filter is invalid
- */
- String[][] getConfigurations(String filter) throws IOException;
-
- /**
- * Set the bundle location the configuration is bound to
- *
- * @param pid the persistent identifier of the configuration
- * @param location the bundle location
- * @throws IOException if the operation fails
- */
- void setBundleLocation(String pid, String location) throws IOException;
-
- /**
- * Update the configuration with the supplied properties For each property
- * entry, the following row is supplied.
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for the
- * details of the TabularType
- *
- * @param pid the persistent identifier of the configuration
- * @param properties the table of properties
- * @throws IOException if the operation fails
- */
- void update(String pid, TabularData properties) throws IOException;
-
- /**
- * Update the configuration with the supplied properties For each property
- * entry, the following row is supplied.
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for the
- * details of the TabularType
- *
- * @param pid the persistent identifier of the configuration
- * @param location the bundle location
- * @param properties the table of properties
- * @throws IOException if the operation fails
- */
- void updateForLocation(String pid, String location, TabularData properties)
- throws IOException;
-}
\ No newline at end of file
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/cm/package.html b/org.osgi.jmx/src/org/osgi/jmx/service/cm/package.html
deleted file mode 100644
index 536d80b..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/cm/package.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!-- $Revision: 8212 $ -->
-<BODY>
-<p>OSGi JMX CM Package Version 1.3.</p>
-<p>Bundles wishing to use this package must list the package
-in the Import-Package header of the bundle's manifest.
-For example:</p>
-<pre>
-Import-Package: org.osgi.jmx.service.cm; version="[1.3,2.0)"
-</pre>
-</BODY>
-
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/cm/packageinfo b/org.osgi.jmx/src/org/osgi/jmx/service/cm/packageinfo
deleted file mode 100644
index d571167..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/cm/packageinfo
+++ /dev/null
@@ -1 +0,0 @@
-version 1.3
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/PermissionAdminMBean.java b/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/PermissionAdminMBean.java
deleted file mode 100644
index 5145527..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/PermissionAdminMBean.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.service.permissionadmin;
-
-import java.io.IOException;
-
-import org.osgi.jmx.JmxConstants;
-
-/**
- * This MBean represents the OSGi Permission Manager Service
- *
- * @version $Revision: 8513 $
- * @ThreadSafe
- */
-public interface PermissionAdminMBean {
- /**
- * Permission Admin MBean object name.
- */
- String OBJECTNAME = JmxConstants.OSGI_CORE
- + ":service=permissionadmin,version=1.2";
-
- /**
- * Answer the bundle locations that have permissions assigned to them
- *
- * @return the bundle locations
- * @throws IOException if the operation fails
- */
- String[] listLocations() throws IOException;
-
- /**
- * Answer the list of encoded permissions of the bundle specified by the
- * bundle location
- *
- * @param location location identifying the bundle
- * @return the array of String encoded permissions
- * @throws IOException if the operation fails
- */
- String[] getPermissions(String location) throws IOException;
-
- /**
- * Set the default permissions assigned to bundle locations that have no
- * assigned permissions
- *
- * @param encodedPermissions the string encoded permissions
- * @throws IOException if the operation fails
- */
- void setDefaultPermissions(String[] encodedPermissions) throws IOException;
-
- /**
- * Answer the list of encoded permissions representing the default
- * permissions assigned to bundle locations that have no assigned
- * permissions
- *
- * @return the array of String encoded permissions
- * @throws IOException if the operation fails
- */
- String[] listDefaultPermissions() throws IOException;
-
- /**
- * Set the permissions on the bundle specified by the bundle location
- *
- * @param location the location of the bundle
- * @param encodedPermissions the string encoded permissions to set
- * @throws IOException if the operation fails
- */
- void setPermissions(String location, String[] encodedPermissions)
- throws IOException;
-}
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/package.html b/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/package.html
deleted file mode 100644
index b8120f0..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/package.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!-- $Revision: 8212 $ -->
-<BODY>
-<p>OSGi JMX Permission Admin Package Admin Package Version 1.2.</p>
-<p>Bundles wishing to use this package must list the package
-in the Import-Package header of the bundle's manifest.
-For example:</p>
-<pre>
-Import-Package: org.osgi.jmx.service.permission; version="[1.2,2.0)"
-</pre>
-</BODY>
-
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/packageinfo b/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/packageinfo
deleted file mode 100644
index 8d3d79b..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/permissionadmin/packageinfo
+++ /dev/null
@@ -1 +0,0 @@
-version 1.2
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/ProvisioningServiceMBean.java b/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/ProvisioningServiceMBean.java
deleted file mode 100644
index 275274b..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/ProvisioningServiceMBean.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.service.provisioning;
-
-import java.io.IOException;
-
-import javax.management.openmbean.TabularData;
-
-import org.osgi.jmx.JmxConstants;
-
-/**
- * This MBean represents the management interface to the OSGi Initial
- * Provisioning Service
- *
- * @version $Revision: 9080 $
- * @ThreadSafe
- */
-public interface ProvisioningServiceMBean {
- /**
- * Provisioning MBean object name.
- */
- String OBJECTNAME = JmxConstants.OSGI_COMPENDIUM
- + ":service=provisioning,version=1.2";
-
- /**
- * Processes the <code>ZipInputStream</code> contents of the provided
- * zipURL 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 zipURL the String form of the URL that will be resolved into a
- * <code>ZipInputStream</code> which 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>,
- * <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 of the URL. No additions will be made to the
- * Provisioning Information dictionary and no bundles must be
- * started or installed.
- */
- public void addInformationFromZip(String zipURL) throws IOException;
-
- /**
- * 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.
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for
- * details of the Tabular Data
- *
- * @param info the set of Provisioning Information key/value pairs to add to
- * the Provisioning Information dictionary. Any keys are values that
- * are of an invalid type will be silently ignored.
- * @throws IOException if the operation fails
- */
- public void addInformation(TabularData info) throws IOException;
-
- /**
- * Returns a table representing the Provisioning Information Dictionary.
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for
- * details of the Tabular Data
- *
- * @throws IOException if the operation fails
- * @return The table representing the manager dictionary.
- */
- public TabularData listInformation() throws IOException;
-
- /**
- * Replaces the Provisioning Information dictionary with the entries of the
- * supplied table. This method causes the
- * <code>PROVISIONING_UPDATE_COUNT</code> to be incremented.
- *
- * @see JmxConstants#PROPERTIES_TYPE JmxConstants.PROPERTIES_TYPE for
- * details of the Tabular Data
- *
- * @param info the new set of Provisioning Information key/value pairs. Any
- * keys are values that are of an invalid type will be silently
- * ignored.
- * @throws IOException if the operation fails
- */
- public void setInformation(TabularData info) throws IOException;
-
-}
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/package.html b/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/package.html
deleted file mode 100644
index 52d5ba2..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/package.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!-- $Revision: 8212 $ -->
-<BODY>
-<p>OSGi JMX Initial Provisioning Package Version 1.2.</p>
-<p>Bundles wishing to use this package must list the package
-in the Import-Package header of the bundle's manifest.
-For example:</p>
-<pre>
-Import-Package: org.osgi.jmx.service.provisioning; version="[1.2,2.0)"
-</pre>
-</BODY>
-
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/packageinfo b/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/packageinfo
deleted file mode 100644
index 8d3d79b..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/provisioning/packageinfo
+++ /dev/null
@@ -1 +0,0 @@
-version 1.2
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/UserAdminMBean.java b/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/UserAdminMBean.java
deleted file mode 100644
index fb6873d..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/UserAdminMBean.java
+++ /dev/null
@@ -1,530 +0,0 @@
-/*
- * Copyright (c) OSGi Alliance (2009, 2010). 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.jmx.service.useradmin;
-
-import java.io.IOException;
-
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.SimpleType;
-import javax.management.openmbean.TabularData;
-
-import org.osgi.jmx.Item;
-import org.osgi.jmx.JmxConstants;
-
-/**
- * This MBean provides the management interface to the OSGi User Manager Service
- *
- * @version $Revision$
- * @ThreadSafe
- */
-public interface UserAdminMBean {
- /**
- * User Admin MBean object name.
- */
- String OBJECTNAME = JmxConstants.OSGI_COMPENDIUM
- + ":service=useradmin,version=1.1";
-
- /**
- * The key NAME, used in {@link #NAME_ITEM}.
- */
- String NAME = "Name";
-
- /**
- * The item for the user name for an authorization object. The key is
- * {@link #NAME} and the type is {@link SimpleType#STRING}.
- */
- Item NAME_ITEM = new Item(
- NAME,
- "The user name for this authorization object",
- SimpleType.STRING);
-
- /**
- * The key ROLES, used in {@link #ROLES_ITEM}.
- */
- String ROLES = "Roles";
-
- /**
- * The item containing the roles for this authorization object. The key is
- * {@link #ROLES}. and the type is {@link JmxConstants#STRING_ARRAY_TYPE}.
- */
- Item ROLES_ITEM = new Item(
- ROLES,
- "The names of the roles encapsulated by this auth object",
- JmxConstants.STRING_ARRAY_TYPE);
-
- /**
- * The Composite Type for an Authorization object. It consists of the
- * {@link #NAME_ITEM} and {@link #TYPE_ITEM} items.
- */
- CompositeType AUTORIZATION_TYPE = Item
- .compositeType(
- "AUTHORIZATION",
- "An authorization object defines which roles has a user got",
- NAME_ITEM,
- ROLES_ITEM);
- /**
- * The Role TYPE key, used in {@link #TYPE_ITEM}.
- */
- String TYPE = "Type";
-
- /**
- * The item containing the type of the roles encapsulated by this
- * authorization object. The key is {@link #TYPE} and the type is
- * {@link SimpleType#INTEGER}.
- */
- Item TYPE_ITEM = new Item(
- TYPE,
- "An integer representing type of the role: {0=Role,1=user,2=group}",
- SimpleType.INTEGER);
-
- /**
- * The PROPERTIES key, used in {@link #PROPERTIES_ITEM}.
- */
- String PROPERTIES = "Properties";
-
- /**
- * The item containing the properties of a Role. The key is
- * {@link #PROPERTIES} and the type is {@link JmxConstants#PROPERTIES_TYPE}.
- */
- Item PROPERTIES_ITEM = new Item(
- PROPERTIES,
- "A properties as defined by org.osgi.service.useradmin.Role",
- JmxConstants.PROPERTIES_TYPE);
- /**
- * The Composite Type for a Role. It contains the following items:
- * <ul>
- * <li>{@link #NAME}</li>
- * <li>{@link #TYPE}</li>
- * <li>{@link #PROPERTIES}</li>
- * </ul>
- *
- */
- CompositeType ROLE_TYPE = Item
- .compositeType(
- "ROLE",
- "Mapping of org.osgi.service.useradmin.Role for remote management purposes. User and Group extend Role",
- NAME_ITEM,
- TYPE_ITEM);
-
- /**
- * The CREDENTIALS key, used in {@link #CREDENTIALS_ITEM}.
- */
- String CREDENTIALS = "Credentials";
-
- /**
- * The item containing the credentials of a user. The key is
- * {@link #CREDENTIALS} and the type is {@link JmxConstants#PROPERTIES_TYPE} .
- */
- Item CREDENTIALS_ITEM = new Item(
- CREDENTIALS,
- "The credentials for this user",
- JmxConstants.PROPERTIES_TYPE);
-
- /**
- * A Composite Type for a User. A User contains its Role description and
- * adds the credentials. It extends {@link #ROLE_TYPE} and adds
- * {@link #CREDENTIALS_ITEM}.
- *
- * This type extends the {@link #ROLE_TYPE}. It adds:
- * <ul>
- * <li>{@link #CREDENTIALS}</li>
- * </ul>
- */
- CompositeType USER_TYPE = Item
- .extend(
- ROLE_TYPE,
- "USER",
- "Mapping of org.osgi.service.useradmin.User for remote management purposes. User extends Role");
-
- /**
- * The MEMBERS key, used in {@link #MEMBERS_ITEM}.
- */
- String MEMBERS = "Members";
-
- /**
- * The item containing the members of a group. The key is {@link #MEMBERS}
- * and the type is {@link JmxConstants#STRING_ARRAY_TYPE}. It is used in
- * {@link #GROUP_TYPE}.
- */
- Item MEMBERS_ITEM = new Item(
- MEMBERS,
- "The members of this group",
- JmxConstants.STRING_ARRAY_TYPE);
-
- /**
- * The REQUIRED_MEMBERS key, used in {@link #REQUIRED_MEMBERS_ITEM}.
- */
- String REQUIRED_MEMBERS = "RequiredMembers";
-
- /**
- * The item containing the required members of a group. The key is
- * {@link #REQUIRED_MEMBERS} and the type is
- * {@link JmxConstants#STRING_ARRAY_TYPE}. It is used in
- * {@link #GROUP_TYPE} .
- */
- Item REQUIRED_MEMBERS_ITEM = new Item(
- REQUIRED_MEMBERS,
- "The required members of this group",
- JmxConstants.STRING_ARRAY_TYPE);
-
- /**
- * The Composite Type for a Group. It extends {@link #USER_TYPE} and adds
- * {@link #MEMBERS_ITEM}, and {@link #REQUIRED_MEMBERS_ITEM}.
- *
- * This type extends the {@link #USER_TYPE}. It adds:
- * <ul>
- * <li>{@link #MEMBERS}</li>
- * <li>{@link #REQUIRED_MEMBERS}</li>
- * </ul>
- */
- CompositeType GROUP_TYPE = Item
- .extend(
- USER_TYPE,
- "GROUP",
- "Mapping of org.osgi.service.useradmin.Group for remote management purposes. Group extends User which in turn extends Role",
- MEMBERS_ITEM,
- REQUIRED_MEMBERS_ITEM);
-
- /**
- * Add credentials to a user, associated with the supplied key
- *
- * @param key The key of the credential to add
- * @param value The value of the credential to add
- * @param username The name of the user that gets the credential.
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the user name is not a User
- */
- void addCredential(String key, byte[] value, String username)
- throws IOException;
-
- /**
- * Add credentials to a user, associated with the supplied key
- *
- * @param key The key of the credential to add
- * @param value The value of the credential to add
- * @param username The name of the user that gets the credential.
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the username is not a User
- */
- void addCredentialString(String key, String value, String username)
- throws IOException;
-
- /**
- * Add a member to the group.
- *
- * @param groupname The group name that receives the <code>rolename</code>
- * as member.
- * @param rolename The <code>rolename</code> (User or Group) that must be
- * added.
- * @return <code>true</code> if the role was added to the group
- * @throws IOException if the operation fails
- *
- */
- boolean addMember(String groupname, String rolename) throws IOException;
-
- /**
- * Add or update a property on a role
- *
- * @param key The key of the property to add
- * @param value The value of the property to add (<code>String</code>)
- * @param rolename The role name
- * @throws IOException if the operation fails
- */
- void addPropertyString(String key, String value, String rolename)
- throws IOException;
-
- /**
- * Add or update a property on a role.
- *
- * @param key The added property key
- * @param value The added byte[] property value
- * @param rolename The role name that receives the property
- * @throws IOException if the operation fails
- */
- void addProperty(String key, byte[] value, String rolename)
- throws IOException;
-
- /**
- * Add a required member to the group
- *
- * @param groupname The group name that is addded
- * @param rolename The role that
- * @return true if the role was added to the group
- * @throws IOException if the operation fails
- */
- boolean addRequiredMember(String groupname, String rolename)
- throws IOException;
-
- /**
- * Create a User
- *
- * @param name Name of the user to create
- * @throws IOException if the operation fails
- */
- void createUser(String name) throws IOException;
-
- /**
- * Create a Group
- *
- * @param name Name of the group to create
- * @throws IOException if the operation fails
- */
- void createGroup(String name) throws IOException;
-
- /**
- * This method was specified in error and must not be used.
- *
- * @param name Ignored.
- * @throws IOException This method will throw an exception if called.
- * @deprecated This method was specified in error. It does not function and
- * must not be used. Use either {@link #createUser(String)} or
- * {@link #createGroup(String)}.
- */
- void createRole(String name) throws IOException;
-
- /**
- * Answer the authorization for the user name.
- *
- * The Composite Data is typed by {@link #AUTORIZATION_TYPE}.
- *
- * @param user The user name
- * @return the Authorization typed by {@link #AUTORIZATION_TYPE}.
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the user name is not a User
- */
- CompositeData getAuthorization(String user) throws IOException;
-
- /**
- * Answer the credentials associated with a user.
- *
- * The returned Tabular Data is typed by
- * {@link JmxConstants#PROPERTIES_TYPE}.
- *
- * @param username The user name
- * @return the credentials associated with the user, see
- * {@link JmxConstants#PROPERTIES_TYPE}
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the user name is not a User
- */
- TabularData getCredentials(String username) throws IOException;
-
- /**
- * Answer the Group associated with the group name.
- *
- * The returned Composite Data is typed by {@link #GROUP_TYPE}
- *
- * @param groupname The group name
- * @return the Group, see {@link #GROUP_TYPE}
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the group name is not a Group
- */
- CompositeData getGroup(String groupname) throws IOException;
-
- /**
- * Answer the list of group names
- *
- * @return The list of group names
- * @throws IOException if the operation fails
- */
- String[] listGroups() throws IOException;
-
- /**
- * Answer the list of group names
- *
- * @param filter The filter to apply
- * @return The list of group names
- * @throws IOException if the operation fails
- */
- String[] getGroups(String filter) throws IOException;
-
- /**
- * Answer the list of implied roles for a user
- *
- * @param username The name of the user that has the implied roles
- * @return The list of role names
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the username is not a User
- */
- String[] getImpliedRoles(String username) throws IOException;
-
- /**
- * Answer the the user names which are members of the group
- *
- * @param groupname The name of the group to get the members from
- * @return The list of user names
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the <code>groupname</code> is not a
- * group
- */
- String[] getMembers(String groupname) throws IOException;
-
- /**
- * Answer the properties associated with a role.
- *
- * The returned Tabular Data is typed by
- * {@link JmxConstants#PROPERTIES_TYPE}.
- *
- * @param rolename The name of the role to get properties from
- * @return the properties associated with the role, see
- * {@link JmxConstants#PROPERTIES_TYPE}
- * @throws IOException if the operation fails
- */
- TabularData getProperties(String rolename) throws IOException;
-
- /**
- * Answer the list of user names which are required members of this group
- *
- * @param groupname The name of the group to get the required members from
- * @return The list of user names
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the group name is not a group
- */
- String[] getRequiredMembers(String groupname) throws IOException;
-
- /**
- * Answer the role associated with a name.
- *
- * The returned Composite Data is typed by {@link #ROLE_TYPE}.
- *
- * @param name The name of the role to get the data from
- * @return the Role, see {@link #ROLE_TYPE}
- * @throws IOException if the operation fails
- */
- CompositeData getRole(String name) throws IOException;
-
- /**
- * Answer the list of role names in the User Admin database
- *
- * @return The list of role names
- * @throws IOException if the operation fails
- */
- String[] listRoles() throws IOException;
-
- /**
- * Answer the list of role names which match the supplied filter
- *
- * @param filter The string representation of the
- * <code>org.osgi.framework.Filter</code> that is used to filter
- * the roles by applying to the properties, if <code>null</code>
- * all roles are returned.
- *
- * @return The list the role names
- * @throws IOException if the operation fails
- */
- String[] getRoles(String filter) throws IOException;
-
- /**
- * Answer the User associated with the user name.
- *
- * The returned Composite Data is typed by {@link #USER_TYPE}.
- *
- * @param username The name of the requested user
- * @return The User, see {@link #USER_TYPE}
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the <code>username</code> is not a
- * User
- */
- CompositeData getUser(String username) throws IOException;
-
- /**
- * Answer the user name with the given property key-value pair from the User
- * Admin service database.
- *
- * @param key The key to compare
- * @param value The value to compare
- * @return The User
- * @throws IOException if the operation fails
- */
- String getUserWithProperty(String key, String value) throws IOException;
-
- /**
- * Answer the list of user names in the User Admin database
- *
- * @return The list of user names
- * @throws IOException if the operation fails
- */
- String[] listUsers() throws IOException;
-
- /**
- * Answer the list of user names in the User Admin database
- *
- * @param filter The filter to apply
- * @return The list of user names
- * @throws IOException if the operation fails
- */
- String[] getUsers(String filter) throws IOException;
-
- /**
- * Remove the credential associated with the given user
- *
- * @param key The key of the credential to remove
- * @param username The name of the user for which the credential must be
- * removed
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the username is not a User
- */
- void removeCredential(String key, String username) throws IOException;
-
- /**
- * Remove a role from the group
- *
- * @param groupname The group name
- * @param rolename
- * @return true if the role was removed from the group
- * @throws IOException if the operation fails
- * @throws IllegalArgumentException if the groupname is not a Group
- */
- boolean removeMember(String groupname, String rolename) throws IOException;
-
- /**
- * Remove a property from a role
- *
- * @param key
- * @param rolename
- * @throws IOException if the operation fails
- */
- void removeProperty(String key, String rolename) throws IOException;
-
- /**
- * Remove the Role associated with the name
- *
- * @param name
- * @return true if the remove succeeded
- * @throws IOException if the operation fails
- */
- boolean removeRole(String name) throws IOException;
-
- /**
- * Remove the Group associated with the name
- *
- * @param name
- * @return true if the remove succeeded
- * @throws IOException if the operation fails
- */
- boolean removeGroup(String name) throws IOException;
-
- /**
- * Remove the User associated with the name
- *
- * @param name
- * @return true if the remove succeeded
- * @throws IOException if the operation fails
- */
- boolean removeUser(String name) throws IOException;
-
-}
\ No newline at end of file
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/package.html b/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/package.html
deleted file mode 100644
index f4ef0ba..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/package.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!-- $Revision: 8212 $ -->
-<BODY>
-<p>OSGi JMX User Admin Package Version 1.1.</p>
-<p>Bundles wishing to use this package must list the package
-in the Import-Package header of the bundle's manifest.
-For example:</p>
-<pre>
-Import-Package: org.osgi.jmx.service.useradmin; version="[1.1,2.0)"
-</pre>
-</BODY>
-
diff --git a/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/packageinfo b/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/packageinfo
deleted file mode 100644
index 764cb02..0000000
--- a/org.osgi.jmx/src/org/osgi/jmx/service/useradmin/packageinfo
+++ /dev/null
@@ -1 +0,0 @@
-version 1.1.1