diff options
author | Thomas Watson | 2013-06-12 20:25:54 +0000 |
---|---|---|
committer | Thomas Watson | 2013-06-12 23:22:13 +0000 |
commit | fc9aac6065510083b6e6238038d8aaa7f3c32fd8 (patch) | |
tree | 13ae58f84b485565c6e92f3c0eccaefd5af0e77a /bundles/org.eclipse.osgi/osgi/src/org | |
parent | 58ba892f0f6c4b229ccc4c74c50cf618e2517037 (diff) | |
download | rt.equinox.framework-fc9aac6065510083b6e6238038d8aaa7f3c32fd8.tar.gz rt.equinox.framework-fc9aac6065510083b6e6238038d8aaa7f3c32fd8.tar.xz rt.equinox.framework-fc9aac6065510083b6e6238038d8aaa7f3c32fd8.zip |
Update to latest OSGi R6 core API
Diffstat (limited to 'bundles/org.eclipse.osgi/osgi/src/org')
102 files changed, 1142 insertions, 187 deletions
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/package-info.java new file mode 100644 index 000000000..0ceb5d4b6 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/package-info.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * OSGi Data Transfer Object Framework Package Version 1.8. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. This package has two types of + * users: the consumers that use the API in this package and the providers that + * implement the API in this package. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.framework; version="[1.8,2.0)"} + * <p> + * Example import for providers implementing the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.framework; version="[1.8,1.9)"} + * + * @author $Id$ + */ + +@Version("1.8") +package org.osgi.dto.framework; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/packageinfo new file mode 100644 index 000000000..ed9885d37 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/packageinfo @@ -0,0 +1 @@ +version 1.8 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/startlevel/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/startlevel/package-info.java new file mode 100644 index 000000000..64a78736e --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/startlevel/package-info.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * OSGi Data Transfer Object Framework Start Level Package Version 1.0. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. This package has two types of + * users: the consumers that use the API in this package and the providers that + * implement the API in this package. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.framework.startlevel; version="[1.0,2.0)"} + * <p> + * Example import for providers implementing the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.framework.startlevel; version="[1.0,1.1)"} + * + * @author $Id$ + */ + +@Version("1.0") +package org.osgi.dto.framework.startlevel; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/startlevel/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/startlevel/packageinfo new file mode 100644 index 000000000..7c8de0324 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/startlevel/packageinfo @@ -0,0 +1 @@ +version 1.0 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/wiring/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/wiring/package-info.java new file mode 100644 index 000000000..0c4a2ff42 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/wiring/package-info.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * OSGi Data Transfer Object Framework Wiring Package Version 1.2. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. This package has two types of + * users: the consumers that use the API in this package and the providers that + * implement the API in this package. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.framework.wiring; version="[1.2,2.0)"} + * <p> + * Example import for providers implementing the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.framework.wiring; version="[1.2,1.3)"} + * + * @author $Id$ + */ + +@Version("1.2") +package org.osgi.dto.framework.wiring; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/wiring/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/wiring/packageinfo new file mode 100644 index 000000000..ef7df68cb --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/framework/wiring/packageinfo @@ -0,0 +1 @@ +version 1.2 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/package-info.java new file mode 100644 index 000000000..1209bb5e6 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/package-info.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * OSGi Data Transfer Object Package Version 1.0. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. This package has two types of + * users: the consumers that use the API in this package and the providers that + * implement the API in this package. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto; version="[1.0,2.0)"} + * <p> + * Example import for providers implementing the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto; version="[1.0,1.1)"} + * + * @author $Id$ + */ + +@Version("1.0") +package org.osgi.dto; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/packageinfo new file mode 100644 index 000000000..7c8de0324 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/packageinfo @@ -0,0 +1 @@ +version 1.0 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/resource/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/resource/package-info.java new file mode 100644 index 000000000..474e3b23f --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/resource/package-info.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * OSGi Data Transfer Object Resource Package Version 1.0. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. This package has two types of + * users: the consumers that use the API in this package and the providers that + * implement the API in this package. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.resource; version="[1.0,2.0)"} + * <p> + * Example import for providers implementing the API in this package: + * <p> + * {@code Import-Package: org.osgi.dto.resource; version="[1.0,1.1)"} + * + * @author $Id$ + */ + +@Version("1.0") +package org.osgi.dto.resource; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/resource/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/resource/packageinfo new file mode 100644 index 000000000..7c8de0324 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/resource/packageinfo @@ -0,0 +1 @@ +version 1.0 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Bundle.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Bundle.java index a895c22e8..81a8f18b2 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Bundle.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Bundle.java @@ -75,7 +75,6 @@ import org.osgi.framework.wiring.FrameworkWiring; * bundle id} and is greater if it has a higher bundle id. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleContext.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleContext.java index a9d6b51bd..fcda6d1f1 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleContext.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleContext.java @@ -85,7 +85,6 @@ import org.osgi.annotation.versioning.ProviderType; * Environment supports permissions. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleReference.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleReference.java index ddb8a8c38..ad4e0b991 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleReference.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundleReference.java @@ -23,7 +23,6 @@ import org.osgi.annotation.versioning.ProviderType; * * @since 1.5 * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Constants.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Constants.java index eb29b9d5c..0b1d8f335 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Constants.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Constants.java @@ -29,7 +29,6 @@ import org.osgi.framework.launch.Framework; * otherwise indicated. * * @since 1.1 - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Filter.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Filter.java index 1d5b36f14..58cd4db16 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Filter.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/Filter.java @@ -42,7 +42,6 @@ import org.osgi.annotation.versioning.ProviderType; * @since 1.1 * @see "Core Specification, Filters, for a description of the filter string syntax." * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceObjects.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceObjects.java index 08a8fb70c..0d87a30cc 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceObjects.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceObjects.java @@ -37,7 +37,6 @@ import org.osgi.annotation.versioning.ProviderType; * @see BundleContext#getServiceObjects(ServiceReference) * @see PrototypeServiceFactory * @ThreadSafe - * @noimplement * @since 1.8 * @author $Id$ */ diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceReference.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceReference.java index d97bc8a2b..a56f8df70 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceReference.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceReference.java @@ -49,7 +49,6 @@ import org.osgi.annotation.versioning.ProviderType; * @see BundleContext#getService(ServiceReference) * @see BundleContext#getServiceObjects(ServiceReference) * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceRegistration.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceRegistration.java index 6b06992d6..7feb9d730 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceRegistration.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServiceRegistration.java @@ -34,7 +34,6 @@ import org.osgi.annotation.versioning.ProviderType; * @param <S> Type of Service. * @see BundleContext#registerService(String[],Object,Dictionary) * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/bundle/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/bundle/package-info.java new file mode 100644 index 000000000..08c20cab6 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/bundle/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Bundle Hooks Package Version 1.1. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.framework.hooks.bundle; version="[1.1,2.0)"} + * + * @author $Id$ + */ + +@Version("1.1") +package org.osgi.framework.hooks.bundle; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/bundle/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/bundle/packageinfo new file mode 100644 index 000000000..3987f9c4e --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/bundle/packageinfo @@ -0,0 +1 @@ +version 1.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/resolver/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/resolver/package-info.java new file mode 100644 index 000000000..de050037c --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/resolver/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Resolver Hooks Package Version 1.0. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.framework.hooks.resolver; version="[1.0,2.0)"} + * + * @author $Id$ + */ + +@Version("1.0") +package org.osgi.framework.hooks.resolver; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/resolver/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/resolver/packageinfo new file mode 100644 index 000000000..7c8de0324 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/resolver/packageinfo @@ -0,0 +1 @@ +version 1.0 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/ListenerHook.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/ListenerHook.java index f38cb1f33..34bd086f7 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/ListenerHook.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/ListenerHook.java @@ -68,7 +68,6 @@ public interface ListenerHook { * which added the Service Listener and the filter with which it was added. * * @ThreadSafe - * @noimplement */ @ProviderType public interface ListenerInfo { diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/package-info.java new file mode 100644 index 000000000..74f0c41d5 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Service Hooks Package Version 1.1. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.framework.hooks.service; version="[1.1,2.0)"} + * + * @author $Id$ + */ + +@Version("1.1") +package org.osgi.framework.hooks.service; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/packageinfo new file mode 100644 index 000000000..3987f9c4e --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/service/packageinfo @@ -0,0 +1 @@ +version 1.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/WovenClass.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/WovenClass.java index 6c8a81452..b86db7713 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/WovenClass.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/WovenClass.java @@ -34,7 +34,6 @@ import org.osgi.framework.wiring.BundleWiring; * immutable. * * @NotThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/package-info.java new file mode 100644 index 000000000..5b48f041a --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/package-info.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Weaving Hooks Package Version 1.1. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * </p> + * + * <p> + * Example import for consumers using the API in this package: + * </p> + * <p> + * {@code Import-Package: org.osgi.framework.hooks.weaving; version="[1.1,2.0)"} + * </p> + * @author $Id$ + */ + +@Version("1.1") +package org.osgi.framework.hooks.weaving; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/packageinfo new file mode 100644 index 000000000..3987f9c4e --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/hooks/weaving/packageinfo @@ -0,0 +1 @@ +version 1.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/Framework.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/Framework.java index 21ab62b75..e6684fd37 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/Framework.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/Framework.java @@ -34,7 +34,6 @@ import org.osgi.framework.FrameworkEvent; * instance. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/FrameworkFactory.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/FrameworkFactory.java index 648dc4d6f..c1647bcb8 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/FrameworkFactory.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/FrameworkFactory.java @@ -45,7 +45,6 @@ import org.osgi.framework.Bundle; * the resource. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/package-info.java new file mode 100644 index 000000000..5557485f7 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Launch Package Version 1.1. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.framework.launch; version="[1.1,2.0)"} + * + * @author $Id$ + */ + +@Version("1.1") +package org.osgi.framework.launch; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/packageinfo new file mode 100644 index 000000000..3987f9c4e --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/launch/packageinfo @@ -0,0 +1 @@ +version 1.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/namespace/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/namespace/package-info.java new file mode 100644 index 000000000..e89f34a4f --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/namespace/package-info.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Namespace Package Version 1.1. + * + * <p> + * Bundles should not need to import this package at runtime since all + * the types in this package just contain constants for capability and + * requirement namespaces specified by the OSGi Alliance. + * + * @author $Id$ + */ + +@Version("1.1") +package org.osgi.framework.namespace; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/namespace/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/namespace/packageinfo new file mode 100644 index 000000000..3987f9c4e --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/namespace/packageinfo @@ -0,0 +1 @@ +version 1.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/package-info.java new file mode 100644 index 000000000..f7b9e43d8 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Package Version 1.8. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.framework; version="[1.8,2.0)"} + * + * @author $Id$ + */ + +@Version("1.8") +package org.osgi.framework; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/packageinfo new file mode 100644 index 000000000..ed9885d37 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/packageinfo @@ -0,0 +1 @@ +version 1.8 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/BundleStartLevel.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/BundleStartLevel.java index a934ad04a..421ffd6e9 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/BundleStartLevel.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/BundleStartLevel.java @@ -30,7 +30,6 @@ import org.osgi.framework.BundleReference; * calling {@link BundleReference#getBundle()}. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/FrameworkStartLevel.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/FrameworkStartLevel.java index 45837c361..de8d10036 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/FrameworkStartLevel.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/FrameworkStartLevel.java @@ -33,7 +33,6 @@ import org.osgi.framework.FrameworkListener; * obtained by calling {@link BundleReference#getBundle()}. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/package-info.java new file mode 100644 index 000000000..27d775bbe --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/package-info.java @@ -0,0 +1,83 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Start Level Package Version 1.0. + * + * <p> + * The Framework Start Level package allows management agents to manage a start + * level assigned to each bundle and the active start level of the Framework. + * This package is a replacement for the now deprecated + * {@code org.osgi.service.startlevel} package. + * + * <p> + * A start level is defined to be a state of execution in which the Framework + * exists. Start level values are defined as unsigned integers with 0 (zero) + * being the state where the Framework is not launched. Progressively higher + * integral values represent progressively higher start levels. For example, 2 + * is a higher start level than 1. + * + * <p> + * {@code AdminPermission} is required to modify start level information. + * + * <p> + * Start Level support in the Framework includes the ability to modify the + * active start level of the Framework and to assign a specific start level to a + * bundle. The beginning start level of a Framework is specified via the + * {@link org.osgi.framework.Constants#FRAMEWORK_BEGINNING_STARTLEVEL} framework + * property when configuring a framework. + * + * <p> + * When the Framework is first started it must be at start level zero. In this + * state, no bundles are running. This is the initial state of the Framework + * before it is launched. When the Framework is launched, the Framework will + * enter start level one and all bundles which are assigned to start level one + * and whose autostart setting indicates the bundle should be started are + * started as described in the {@link org.osgi.framework.Bundle#start(int)} + * method. The Framework will continue to increase the start level, starting + * bundles at each start level, until the Framework has reached a beginning + * start level. At this point the Framework has completed starting bundles and + * will then fire a Framework event of type + * {@link org.osgi.framework.FrameworkEvent#STARTED} to announce it has + * completed its launch. + * + * <p> + * Within a start level, bundles may be started in an order defined by the + * Framework implementation. This may be something like ascending + * {@link org.osgi.framework.Bundle#getBundleId()} order or an order based upon + * dependencies between bundles. A similar but reversed order may be used when + * stopping bundles within a start level. + * + * <p> + * The Framework Start Level package can be used by management bundles to alter + * the active start level of the framework. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. For example: + * + * <pre> + * Import-Package: org.osgi.framework.startlevel; version="[1.0,2.0)" + * </pre> + * + * @author $Id$ + */ + +@Version("1.0") +package org.osgi.framework.startlevel; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/packageinfo new file mode 100644 index 000000000..7c8de0324 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/startlevel/packageinfo @@ -0,0 +1 @@ +version 1.0 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleCapability.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleCapability.java index f6f845083..834fb5779 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleCapability.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleCapability.java @@ -26,7 +26,6 @@ import org.osgi.resource.Capability; * revision}. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRequirement.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRequirement.java index 259e45da7..ac0578af5 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRequirement.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRequirement.java @@ -26,7 +26,6 @@ import org.osgi.resource.Requirement; * revision}. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevision.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevision.java index 44416eae1..1f318afdf 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevision.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevision.java @@ -52,7 +52,6 @@ import org.osgi.resource.Resource; * {@link Constants#REQUIRE_CAPABILITY Require-Capability} manifest headers. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevisions.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevisions.java index d667e0777..83e7bf03a 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevisions.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleRevisions.java @@ -37,7 +37,6 @@ import org.osgi.framework.BundleReference; * {@link #getRevisions()} on the bundle. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWire.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWire.java index e5a315512..f51255c85 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWire.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWire.java @@ -23,7 +23,6 @@ import org.osgi.resource.Wire; * A wire connecting a {@link BundleCapability} to a {@link BundleRequirement}. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWiring.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWiring.java index c6860d3e9..367499c4b 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWiring.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/BundleWiring.java @@ -53,7 +53,6 @@ import org.osgi.resource.Wiring; * a bundle returns {@code null}. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/FrameworkWiring.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/FrameworkWiring.java index cb07cf814..1ab9112ba 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/FrameworkWiring.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/FrameworkWiring.java @@ -21,6 +21,7 @@ import org.osgi.annotation.versioning.ProviderType; import org.osgi.framework.Bundle; import org.osgi.framework.BundleReference; import org.osgi.framework.FrameworkListener; +import org.osgi.resource.Requirement; /** * Query and modify wiring information for the framework. The framework wiring @@ -33,7 +34,6 @@ import org.osgi.framework.FrameworkListener; * by calling {@link BundleReference#getBundle()}. * * @ThreadSafe - * @noimplement * @author $Id$ */ @ProviderType @@ -169,4 +169,34 @@ public interface FrameworkWiring extends BundleReference { * FrameworkWiring. */ Collection<Bundle> getDependencyClosure(Collection<Bundle> bundles); + + /** + * Find bundle capabilities that match the given requirement. + * + * <p> + * The returned collection contains {@link BundleCapability} objects where + * the revision must be the {@link BundleCapability#getRevision() declaring + * revision} of the capability and the revision must either be the current + * bundle revision or an {@link BundleWiring#isInUse() in use} bundle + * revision. + * + * <p> + * Each returned capability must match the given requirement. This means + * that the filter in the requirement must match as well as any namespace + * specific directives. For example, the mandatory attributes for the + * osgi.wiring.package namespace. + * + * <p> + * The returned collection has not been filtered to remove capabilities that + * are non-effective, substituted or for which the providing bundle does not + * have permission to provide. No resolve hooks are called to filter + * matching capabilities. + * + * @param requirement The requirement to find matching bundle capabilities. + * Must not be {@code null}. + * @return A collection of {@link BundleCapability} objects that match the + * specified requirement. + * @since 1.2 + */ + Collection<BundleCapability> findProviders(Requirement requirement); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/package-info.java new file mode 100644 index 000000000..6fb7232ca --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/package-info.java @@ -0,0 +1,35 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Framework Wiring Package Version 1.2. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. For example: + * + * <pre> + * Import-Package: org.osgi.framework.wiring; version="[1.2,2.0)" + * </pre> + * + * @author $Id$ + */ + +@Version("1.2") +package org.osgi.framework.wiring; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/packageinfo new file mode 100644 index 000000000..ef7df68cb --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/wiring/packageinfo @@ -0,0 +1 @@ +version 1.2 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Capability.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Capability.java index 5f40514f7..e79d11402 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Capability.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Capability.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.resource; import java.util.Map; +import org.osgi.annotation.versioning.ConsumerType; /** * A capability that has been declared from a {@link Resource}. @@ -27,8 +28,9 @@ import java.util.Map; * always return the same result. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface Capability { /** diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Namespace.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Namespace.java index 43c9ff5ce..95a672505 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Namespace.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Namespace.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,8 @@ package org.osgi.resource; +import org.osgi.annotation.versioning.ConsumerType; + /** * Capability and Requirement Namespaces base class. * @@ -34,8 +36,9 @@ package org.osgi.resource; * otherwise indicated. * * @Immutable - * @version $Id$ + * @author $Id$ */ +@ConsumerType public abstract class Namespace { /** diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Requirement.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Requirement.java index 212b26179..252221aea 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Requirement.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Requirement.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.resource; import java.util.Map; +import org.osgi.annotation.versioning.ConsumerType; /** * A requirement that has been declared from a {@link Resource} . @@ -27,8 +28,9 @@ import java.util.Map; * always return the same result. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface Requirement { /** * Returns the namespace of this requirement. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Resource.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Resource.java index 40958d577..c7b6462fb 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Resource.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Resource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.resource; import java.util.List; +import org.osgi.annotation.versioning.ConsumerType; /** * A resource is the representation of a uniquely identified and typed data. A @@ -29,8 +30,9 @@ import java.util.List; * always return the same result. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface Resource { /** * Returns the capabilities declared by this resource. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wire.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wire.java index d7ca9a5d3..6c248ea2b 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wire.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wire.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,8 @@ package org.osgi.resource; +import org.osgi.annotation.versioning.ConsumerType; + /** * A wire connecting a {@link Capability} to a {@link Requirement}. * @@ -25,8 +27,9 @@ package org.osgi.resource; * always return the same result. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface Wire { /** * Returns the {@link Capability} for this wire. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wiring.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wiring.java index b65dec388..935272fa9 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wiring.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/Wiring.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.resource; import java.util.List; +import org.osgi.annotation.versioning.ConsumerType; /** * A wiring for a resource. A wiring is associated with a resource and @@ -28,8 +29,9 @@ import java.util.List; * always return the same result. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface Wiring { /** * Returns the capabilities provided by this wiring. @@ -64,7 +66,7 @@ public interface Wiring { * @return A list containing a snapshot of the {@link Capability}s, or an * empty list if this wiring provides no capabilities in the * specified namespace. For a given namespace, the list contains the - * wires in the order the capabilities were specified in the + * capabilities in the order the capabilities were specified in the * manifests of the {@link #getResource() resource} and the attached * fragment resources<sup>†</sup> of this wiring. There is no * ordering defined between capabilities in different namespaces. @@ -91,11 +93,11 @@ public interface Wiring { * {@code null} to return the requirements from all namespaces. * @return A list containing a snapshot of the {@link Requirement}s, or an * empty list if this wiring uses no requirements in the specified - * namespace. For a given namespace, the list contains the wires in - * the order the requirements were specified in the manifests of the - * {@link #getResource() resource} and the attached fragment - * resources of this wiring. There is no ordering defined between - * requirements in different namespaces. + * namespace. For a given namespace, the list contains the + * requirements in the order the requirements were specified in the + * manifests of the {@link #getResource() resource} and the attached + * fragment resources of this wiring. There is no ordering defined + * between requirements in different namespaces. */ List<Requirement> getResourceRequirements(String namespace); diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/package-info.java new file mode 100644 index 000000000..c537ca9b2 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/package-info.java @@ -0,0 +1,35 @@ +/* + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * 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. + */ + +/** + * Resource Package Version 1.0. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. For example: + * + * <pre> + * Import-Package: org.osgi.resource; version="[1.0,2.0)" + * </pre> + * + * @author $Id$ + */ + +@Version("1.0") +package org.osgi.resource; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/packageinfo new file mode 100644 index 000000000..7c8de0324 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/resource/packageinfo @@ -0,0 +1 @@ +version 1.0 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java index 43b6af515..262e82a5b 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2005, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2005, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,7 +34,7 @@ import org.osgi.framework.InvalidSyntaxException; * Pattern matching is done according to the filter string matching rules. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ public class BundleLocationCondition { private static final String CONDITION_TYPE = "org.osgi.service.condpermadmin.BundleLocationCondition"; diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java index 8f8619a99..9bb17ecb4 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2005, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2005, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -48,7 +48,7 @@ import org.osgi.framework.FrameworkUtil; * RDNs). * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ public class BundleSignerCondition { private static final String CONDITION_TYPE = "org.osgi.service.condpermadmin.BundleSignerCondition"; diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/Condition.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/Condition.java index de6749fad..87718d013 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/Condition.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/Condition.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2004, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2004, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.service.condpermadmin; import java.util.Dictionary; +import org.osgi.annotation.versioning.ConsumerType; /** * The interface implemented by a Condition. Conditions are bound to Permissions @@ -24,8 +25,9 @@ import java.util.Dictionary; * Info can only be used if the associated Conditions are satisfied. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface Condition { /** * A Condition object that will always evaluate to true and that is never diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java index 7515b936f..3302f4293 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2004, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2004, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -45,7 +45,7 @@ import java.util.List; * </ul> * * @Immutable - * @version $Id$ + * @author $Id$ */ public class ConditionInfo { private final String type; @@ -205,6 +205,7 @@ public class ConditionInfo { * * @return The string representation of this {@code ConditionInfo}. */ + @Override public String toString() { return getEncoded(); } @@ -242,6 +243,7 @@ public class ConditionInfo { * the same type and args as this {@code ConditionInfo} object; * {@code false} otherwise. */ + @Override public boolean equals(Object obj) { if (obj == this) { return true; @@ -268,7 +270,7 @@ public class ConditionInfo { * * @return A hash code value for this object. */ - + @Override public int hashCode() { int h = 31 * 17 + type.hashCode(); for (int i = 0; i < args.length; i++) { diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionAdmin.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionAdmin.java index 5be9948e8..ac911fc40 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionAdmin.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionAdmin.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2005, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2005, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,6 +18,7 @@ package org.osgi.service.condpermadmin; import java.security.AccessControlContext; import java.util.Enumeration; +import org.osgi.annotation.versioning.ProviderType; import org.osgi.service.permissionadmin.PermissionInfo; /** @@ -27,9 +28,9 @@ import org.osgi.service.permissionadmin.PermissionInfo; * the Conditional Permission Table. * * @ThreadSafe - * @noimplement - * @version $Id$ + * @author $Id$ */ +@ProviderType public interface ConditionalPermissionAdmin { /** * Create a new Conditional Permission Info in the Conditional Permission diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionInfo.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionInfo.java index 0d9197ccc..1630bc4c5 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionInfo.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionInfo.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2004, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2004, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,7 @@ package org.osgi.service.condpermadmin; +import org.osgi.annotation.versioning.ProviderType; import org.osgi.service.permissionadmin.PermissionInfo; /** @@ -24,9 +25,9 @@ import org.osgi.service.permissionadmin.PermissionInfo; * Permission Admin service. * * @Immutable - * @noimplement - * @version $Id$ + * @author $Id$ */ +@ProviderType public interface ConditionalPermissionInfo { /** * This string is used to indicate that a row in the Conditional Permission diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionUpdate.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionUpdate.java index 7487aa7d2..4fbc41cdb 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionUpdate.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionalPermissionUpdate.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2008, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2008, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.service.condpermadmin; import java.util.List; +import org.osgi.annotation.versioning.ProviderType; /** * Update the Conditional Permission Table. There may be many update objects in @@ -25,10 +26,10 @@ import java.util.List; * commit will fail and this object should be discarded. * * @ThreadSafe - * @noimplement - * @version $Id$ + * @author $Id$ * @since 1.1 */ +@ProviderType public interface ConditionalPermissionUpdate { /** * This method returns the list of {@link ConditionalPermissionInfo}s for @@ -37,9 +38,8 @@ public interface ConditionalPermissionUpdate { * method will be replace the Conditional Permission Table if commit is * called and is successful. * <p> - * The {@link ConditionalPermissionInfo#delete() delete} method of the - * ConditionalPermissionInfos in the list must throw - * UnsupportedOperationException. + * The {@code delete()} method of the {@link ConditionalPermissionInfo}s in + * the list must throw UnsupportedOperationException. * <p> * The list returned by this method is ordered and the most significant * table entry is the first entry in the list. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/package-info.java new file mode 100644 index 000000000..1e55f1325 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Conditional Permission Admin Package Version 1.1. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.service.condpermadmin; version="[1.1,2.0)"} + * + * @author $Id$ + */ + +@Version("1.1.1") +package org.osgi.service.condpermadmin; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/packageinfo new file mode 100644 index 000000000..bb27c604d --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/packageinfo @@ -0,0 +1 @@ +version 1.1.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogEntry.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogEntry.java index e20fd66ff..1a6c322e6 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogEntry.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogEntry.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2000, 2010). All Rights Reserved. + * Copyright (c) OSGi Alliance (2000, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.osgi.service.log; import org.osgi.framework.Bundle; @@ -29,7 +30,7 @@ import org.osgi.framework.ServiceReference; * * @ThreadSafe * @noimplement - * @version $Id$ + * @author $Id$ * @see LogReaderService#getLog * @see LogListener */ @@ -47,8 +48,8 @@ public interface LogEntry { * Returns the {@code ServiceReference} object for the service associated * with this {@code LogEntry} object. * - * @return {@code ServiceReference} object for the service associated - * with this {@code LogEntry} object; {@code null} if no + * @return {@code ServiceReference} object for the service associated with + * this {@code LogEntry} object; {@code null} if no * {@code ServiceReference} object was provided. */ public ServiceReference getServiceReference(); @@ -92,8 +93,8 @@ public interface LogEntry { * message and stack trace. * * @return {@code Throwable} object of the exception associated with this - * {@code LogEntry};{@code null} if no exception is - * associated with this {@code LogEntry} object. + * {@code LogEntry};{@code null} if no exception is associated with + * this {@code LogEntry} object. */ public Throwable getException(); @@ -101,8 +102,8 @@ public interface LogEntry { * Returns the value of {@code currentTimeMillis()} at the time this * {@code LogEntry} object was created. * - * @return The system time in milliseconds when this {@code LogEntry} - * object was created. + * @return The system time in milliseconds when this {@code LogEntry} object + * was created. * @see "System.currentTimeMillis()" */ public long getTime(); diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogListener.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogListener.java index 9b1ea6645..4e27a9415 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogListener.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogListener.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2000, 2010). All Rights Reserved. + * Copyright (c) OSGi Alliance (2000, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.osgi.service.log; import java.util.EventListener; @@ -22,14 +23,14 @@ import java.util.EventListener; * * <p> * A {@code LogListener} object may be registered with the Log Reader Service - * using the {@code LogReaderService.addLogListener} method. After the - * listener is registered, the {@code logged} method will be called for each + * using the {@code LogReaderService.addLogListener} method. After the listener + * is registered, the {@code logged} method will be called for each * {@code LogEntry} object created. The {@code LogListener} object may be * unregistered by calling the {@code LogReaderService.removeLogListener} * method. * * @ThreadSafe - * @version $Id$ + * @author $Id$ * @see LogReaderService * @see LogEntry * @see LogReaderService#addLogListener(LogListener) diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogReaderService.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogReaderService.java index bb2258724..ecc3958bd 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogReaderService.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogReaderService.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2000, 2010). All Rights Reserved. + * Copyright (c) OSGi Alliance (2000, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.osgi.service.log; import java.util.Enumeration; @@ -23,14 +24,15 @@ import java.util.Enumeration; * There are two ways to retrieve {@code LogEntry} objects: * <ul> * <li>The primary way to retrieve {@code LogEntry} objects is to register a - * {@code LogListener} object whose {@code LogListener.logged} method will - * be called for each entry added to the log. - * <li>To retrieve past {@code LogEntry} objects, the {@code getLog} - * method can be called which will return an {@code Enumeration} of all - * {@code LogEntry} objects in the log. + * {@code LogListener} object whose {@code LogListener.logged} method will be + * called for each entry added to the log.</li> + * <li>To retrieve past {@code LogEntry} objects, the {@code getLog} method can + * be called which will return an {@code Enumeration} of all {@code LogEntry} + * objects in the log.</li> + * </ul> * * @ThreadSafe - * @version $Id$ + * @author $Id$ * @see LogEntry * @see LogListener * @see LogListener#logged(LogEntry) @@ -41,18 +43,18 @@ public interface LogReaderService { * * <p> * This method registers a {@code LogListener} object with the Log Reader - * Service. The {@code LogListener.logged(LogEntry)} method will be - * called for each {@code LogEntry} object placed into the log. + * Service. The {@code LogListener.logged(LogEntry)} method will be called + * for each {@code LogEntry} object placed into the log. * * <p> - * When a bundle which registers a {@code LogListener} object is stopped - * or otherwise releases the Log Reader Service, the Log Reader Service must + * When a bundle which registers a {@code LogListener} object is stopped or + * otherwise releases the Log Reader Service, the Log Reader Service must * remove all of the bundle's listeners. * * <p> * If this Log Reader Service's list of listeners already contains a - * listener {@code l} such that {@code (l==listener)}, this method - * does nothing. + * listener {@code l} such that {@code (l==listener)}, this method does + * nothing. * * @param listener A {@code LogListener} object to register; the * {@code LogListener} object is used to receive {@code LogEntry} @@ -67,12 +69,12 @@ public interface LogReaderService { * Unsubscribes to {@code LogEntry} objects. * * <p> - * This method unregisters a {@code LogListener} object from the Log - * Reader Service. + * This method unregisters a {@code LogListener} object from the Log Reader + * Service. * * <p> - * If {@code listener} is not contained in this Log Reader Service's list - * of listeners, this method does nothing. + * If {@code listener} is not contained in this Log Reader Service's list of + * listeners, this method does nothing. * * @param listener A {@code LogListener} object to unregister. * @see LogListener @@ -80,18 +82,19 @@ public interface LogReaderService { public void removeLogListener(LogListener listener); /** - * Returns an {@code Enumeration} of all {@code LogEntry} objects in - * the log. + * Returns an {@code Enumeration} of all {@code LogEntry} objects in the + * log. * * <p> * Each element of the enumeration is a {@code LogEntry} object, ordered * with the most recent entry first. Whether the enumeration is of all - * {@code LogEntry} objects since the Log Service was started or some - * recent past is implementation-specific. Also implementation-specific is - * whether informational and debug {@code LogEntry} objects are included - * in the enumeration. - * @return An {@code Enumeration} of all {@code LogEntry} objects in - * the log. + * {@code LogEntry} objects since the Log Service was started or some recent + * past is implementation-specific. Also implementation-specific is whether + * informational and debug {@code LogEntry} objects are included in the + * enumeration. + * + * @return An {@code Enumeration} of all {@code LogEntry} objects in the + * log. */ public Enumeration getLog(); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogService.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogService.java index 3f4451770..dc7a9f634 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogService.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/LogService.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2000, 2010). All Rights Reserved. + * Copyright (c) OSGi Alliance (2000, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.osgi.service.log; import org.osgi.framework.ServiceReference; @@ -28,15 +29,15 @@ import org.osgi.framework.ServiceReference; * Bundles must log messages in the OSGi environment with a severity level * according to the following hierarchy: * <ol> - * <li>{@link #LOG_ERROR} - * <li>{@link #LOG_WARNING} - * <li>{@link #LOG_INFO} - * <li>{@link #LOG_DEBUG} + * <li>{@link #LOG_ERROR}</li> + * <li>{@link #LOG_WARNING}</li> + * <li>{@link #LOG_INFO}</li> + * <li>{@link #LOG_DEBUG}</li> * </ol> * * @ThreadSafe * @noimplement - * @version $Id$ + * @author $Id$ */ public interface LogService { /** @@ -75,8 +76,8 @@ public interface LogService { * Logs a message. * * <p> - * The {@code ServiceReference} field and the {@code Throwable} field - * of the {@code LogEntry} object will be set to {@code null}. + * The {@code ServiceReference} field and the {@code Throwable} field of the + * {@code LogEntry} object will be set to {@code null}. * * @param level The severity of the message. This should be one of the * defined log levels but may be any integer that is interpreted in a @@ -94,8 +95,8 @@ public interface LogService { * Logs a message with an exception. * * <p> - * The {@code ServiceReference} field of the {@code LogEntry} object - * will be set to {@code null}. + * The {@code ServiceReference} field of the {@code LogEntry} object will be + * set to {@code null}. * * @param level The severity of the message. This should be one of the * defined log levels but may be any integer that is interpreted in a @@ -151,6 +152,5 @@ public interface LogService { * @see #LOG_INFO * @see #LOG_DEBUG */ - public void log(ServiceReference sr, int level, String message, - Throwable exception); + public void log(ServiceReference sr, int level, String message, Throwable exception); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/package-info.java index 5c4120fc1..928099019 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/package-info.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/log/package-info.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2012). 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. @@ -32,7 +32,9 @@ * <p> * {@code Import-Package: org.osgi.service.log; version="[1.3,1.4)"} * - * @version $Id$ + * @version 1.3 + * @author $Id$ */ package org.osgi.service.log; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/ExportedPackage.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/ExportedPackage.java index 22ce5e8e3..e04a2beb3 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/ExportedPackage.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/ExportedPackage.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2001, 2011). All Rights Reserved. + * Copyright (c) OSGi Alliance (2001, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -45,7 +45,7 @@ import org.osgi.framework.Version; * @noimplement * @deprecated The PackageAdmin service has been replaced by the * <code>org.osgi.framework.wiring</code> package. - * @version $Id$ + * @author $Id$ */ public interface ExportedPackage { /** diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/PackageAdmin.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/PackageAdmin.java index a268c3bdc..4aad25d2f 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/PackageAdmin.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/PackageAdmin.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2001, 2010). All Rights Reserved. + * Copyright (c) OSGi Alliance (2001, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ import org.osgi.framework.Bundle; * * @ThreadSafe * @noimplement - * @version $Id$ + * @author $Id$ * @deprecated This service has been replaced by the * <code>org.osgi.framework.wiring</code> package. * @see org.osgi.service.packageadmin.ExportedPackage @@ -104,30 +104,28 @@ public interface PackageAdmin { * graph any bundle that is wired to a package that is currently exported by * a bundle in the graph. The graph is fully constructed when there is no * bundle outside the graph that is wired to a bundle in the graph. The - * graph may contain {@code UNINSTALLED} bundles that are currently - * still exporting packages. + * graph may contain {@code UNINSTALLED} bundles that are currently still + * exporting packages.</li> * - * <li>Each bundle in the graph that is in the {@code ACTIVE} state - * will be stopped as described in the {@code Bundle.stop} method. + * <li>Each bundle in the graph that is in the {@code ACTIVE} state will be + * stopped as described in the {@code Bundle.stop} method.</li> * - * <li>Each bundle in the graph that is in the {@code RESOLVED} state - * is unresolved and thus moved to the {@code INSTALLED} state. The - * effect of this step is that bundles in the graph are no longer - * {@code RESOLVED}. + * <li>Each bundle in the graph that is in the {@code RESOLVED} state is + * unresolved and thus moved to the {@code INSTALLED} state. The effect of + * this step is that bundles in the graph are no longer {@code RESOLVED}.</li> * - * <li>Each bundle in the graph that is in the {@code UNINSTALLED} - * state is removed from the graph and is now completely removed from the - * Framework. + * <li>Each bundle in the graph that is in the {@code UNINSTALLED} state is + * removed from the graph and is now completely removed from the Framework.</li> * - * <li>Each bundle in the graph that was in the {@code ACTIVE} state - * prior to Step 2 is started as described in the {@code Bundle.start} - * method, causing all bundles required for the restart to be resolved. It - * is possible that, as a result of the previous steps, packages that were + * <li>Each bundle in the graph that was in the {@code ACTIVE} state prior + * to Step 2 is started as described in the {@code Bundle.start} method, + * causing all bundles required for the restart to be resolved. It is + * possible that, as a result of the previous steps, packages that were * previously exported no longer are. Therefore, some bundles may be * unresolvable until another bundle offering a compatible package for - * export has been installed in the Framework. - * <li>A framework event of type - * {@code FrameworkEvent.PACKAGES_REFRESHED} is fired. + * export has been installed in the Framework.</li> + * <li>A framework event of type {@code FrameworkEvent.PACKAGES_REFRESHED} + * is fired.</li> * </ol> * * <p> @@ -277,7 +275,7 @@ public interface PackageAdmin { * Returns the special type of the specified bundle. The bundle type values * are: * <ul> - * <li>{@link #BUNDLE_TYPE_FRAGMENT} + * <li>{@link #BUNDLE_TYPE_FRAGMENT}</li> * </ul> * * A bundle may be more than one type at a time. A type code is used to diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/RequiredBundle.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/RequiredBundle.java index 1606b0422..08ab9c1a6 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/RequiredBundle.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/RequiredBundle.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2004, 2010). All Rights Reserved. + * Copyright (c) OSGi Alliance (2004, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,7 +46,7 @@ import org.osgi.framework.Version; * @noimplement * @deprecated The PackageAdmin service has been replaced by the * <code>org.osgi.framework.wiring</code> package. - * @version $Id$ + * @author $Id$ */ public interface RequiredBundle { /** diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/package-info.java new file mode 100644 index 000000000..c3483bdb0 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/package-info.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2012). 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 Admin Package Version 1.2. + * + * <p> + * <b>Deprecated.</b> + * <i>This package is deprecated and has been replaced by the + * {@code org.osgi.framework.wiring} package.</i> + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.service.packageadmin; version="[1.2,2.0)"} + * + * @version 1.2 + * @author $Id$ + */ + +package org.osgi.service.packageadmin; diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/packageinfo new file mode 100644 index 000000000..ef7df68cb --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/packageadmin/packageinfo @@ -0,0 +1 @@ +version 1.2 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionAdmin.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionAdmin.java index 846b7ff8d..886ffd919 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionAdmin.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionAdmin.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2001, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2001, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,8 @@ package org.osgi.service.permissionadmin; +import org.osgi.annotation.versioning.ProviderType; + /** * The Permission Admin service allows management agents to manage the * permissions of bundles. There is at most one Permission Admin service present @@ -55,9 +57,9 @@ package org.osgi.service.permissionadmin; * {@code getDefaultPermissions}. * * @ThreadSafe - * @noimplement - * @version $Id$ + * @author $Id$ */ +@ProviderType public interface PermissionAdmin { /** * Gets the permissions assigned to the bundle with the specified location. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionInfo.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionInfo.java index 8b9d85da1..b6cc8440e 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionInfo.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/PermissionInfo.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2001, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2001, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,7 +34,7 @@ package org.osgi.service.permissionadmin; * Permission class has been exported by a bundle. * * @Immutable - * @version $Id$ + * @author $Id$ */ public class PermissionInfo { private final String type; @@ -253,6 +253,7 @@ public class PermissionInfo { * * @return The string representation of this {@code PermissionInfo}. */ + @Override public String toString() { return getEncoded(); } @@ -304,6 +305,7 @@ public class PermissionInfo { * the same type, name and actions as this {@code PermissionInfo} * object; {@code false} otherwise. */ + @Override public boolean equals(Object obj) { if (obj == this) { return true; @@ -331,6 +333,7 @@ public class PermissionInfo { * * @return A hash code value for this object. */ + @Override public int hashCode() { int h = 31 * 17 + type.hashCode(); if (name != null) { diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/package-info.java new file mode 100644 index 000000000..e274a3c99 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Permission Admin Package Version 1.2. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.service.permissionadmin; version="[1.2,2.0)"} + * + * @author $Id$ + */ + +@Version("1.2") +package org.osgi.service.permissionadmin; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/packageinfo new file mode 100644 index 000000000..ef7df68cb --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/permissionadmin/packageinfo @@ -0,0 +1 @@ +version 1.2 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/HostedCapability.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/HostedCapability.java index db698baa0..b25092b5e 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/HostedCapability.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/HostedCapability.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2012, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,7 @@ package org.osgi.service.resolver; +import org.osgi.annotation.versioning.ProviderType; import org.osgi.resource.Capability; import org.osgi.resource.Resource; @@ -32,9 +33,9 @@ import org.osgi.resource.Resource; * capability can actually be hosted multiple times. * * @ThreadSafe - * @noimplement - * @version $Id$ + * @author $Id$ */ +@ProviderType public interface HostedCapability extends Capability { /** diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java index 42e5773e3..2bcc0ac8e 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,13 +34,13 @@ import org.osgi.resource.Requirement; * Resolver implementations may extend this class to provide extra state * information about the reason for the resolution failure. * - * @version $Id$ + * @author $Id$ */ public class ResolutionException extends Exception { private static final long serialVersionUID = 1L; - private final Collection<Requirement> unresolvedRequirements; + private final transient Collection<Requirement> unresolvedRequirements; /** * Create a {@code ResolutionException} with the specified message, cause @@ -55,7 +55,7 @@ public class ResolutionException extends Exception { public ResolutionException(String message, Throwable cause, Collection<Requirement> unresolvedRequirements) { super(message, cause); if ((unresolvedRequirements == null) || unresolvedRequirements.isEmpty()) { - this.unresolvedRequirements = emptyCollection(); + this.unresolvedRequirements = null; } else { this.unresolvedRequirements = Collections.unmodifiableCollection(new ArrayList<Requirement>(unresolvedRequirements)); } @@ -68,7 +68,7 @@ public class ResolutionException extends Exception { */ public ResolutionException(String message) { super(message); - unresolvedRequirements = emptyCollection(); + unresolvedRequirements = null; } /** @@ -78,10 +78,11 @@ public class ResolutionException extends Exception { */ public ResolutionException(Throwable cause) { super(cause); - unresolvedRequirements = emptyCollection(); + unresolvedRequirements = null; } - private static <T> Collection<T> emptyCollection() { + @SuppressWarnings("unchecked") + private static Collection<Requirement> emptyCollection() { return Collections.EMPTY_LIST; } @@ -95,9 +96,9 @@ public class ResolutionException extends Exception { * * @return A collection of the unresolved requirements for this exception. * The returned collection may be empty if no unresolved - * requirements information is provided. + * requirements information is available. */ public Collection<Requirement> getUnresolvedRequirements() { - return unresolvedRequirements; + return (unresolvedRequirements != null) ? unresolvedRequirements : emptyCollection(); } } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java index f92eae32a..26afea55e 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2011, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,6 +20,7 @@ import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Map; +import org.osgi.annotation.versioning.ConsumerType; import org.osgi.resource.Capability; import org.osgi.resource.Requirement; import org.osgi.resource.Resource; @@ -58,8 +59,9 @@ import org.osgi.resource.Wiring; * return a consistent set of capabilities, wires and effective requirements. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public abstract class ResolveContext { /** * Return the resources that must be resolved for this resolve context. @@ -90,6 +92,7 @@ public abstract class ResolveContext { return emptyCollection(); } + @SuppressWarnings("unchecked") private static <T> Collection<T> emptyCollection() { return Collections.EMPTY_LIST; } @@ -115,7 +118,7 @@ public abstract class ResolveContext { * that must originate from an attached host. * * <p> - * Each returned Capability must match the given Requirement. This implies + * Each returned Capability must match the given Requirement. This means * that the filter in the Requirement must match as well as any namespace * specific directives. For example, the mandatory attributes for the * {@code osgi.wiring.package} namespace. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/Resolver.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/Resolver.java index dfb89b8d0..367c005c1 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/Resolver.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/Resolver.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2006, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2006, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ package org.osgi.service.resolver; import java.util.List; import java.util.Map; +import org.osgi.annotation.versioning.ProviderType; import org.osgi.resource.Resource; import org.osgi.resource.Wire; @@ -30,9 +31,9 @@ import org.osgi.resource.Wire; * by the caller. * * @ThreadSafe - * @noimplement - * @version $Id$ + * @author $Id$ */ +@ProviderType public interface Resolver { /** * Resolve the specified resolve context and return any new resources and diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/package-info.java index 61f84b528..4fab41bbd 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/package-info.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/package-info.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2010, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,9 +32,11 @@ * <p> * {@code Import-Package: org.osgi.service.resolver; version="[1.0,1.1)"} * - * @version 1.0 * @author $Id$ */ +@Version("1.0.1") package org.osgi.service.resolver; +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/packageinfo index 7c8de0324..b3d1f97f7 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/packageinfo +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/packageinfo @@ -1 +1 @@ -version 1.0 +version 1.0.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/StartLevel.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/StartLevel.java index 6d17f1451..42f3c6bbf 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/StartLevel.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/StartLevel.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2002, 2011). All Rights Reserved. + * Copyright (c) OSGi Alliance (2002, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -68,7 +68,7 @@ import org.osgi.framework.Bundle; * * @ThreadSafe * @noimplement - * @version $Id$ + * @author $Id$ * @deprecated This service has been replaced by the * <code>org.osgi.framework.startlevel</code> package. */ diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/package-info.java new file mode 100644 index 000000000..a3ee72a31 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/package-info.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2012). 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. + */ + +/** + * Start Level Package Version 1.1. + * + * <p> + * <b>Deprecated.</b> + * <i>This package is deprecated and has been replaced by the + * {@code org.osgi.framework.startlevel} package.</i> + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.service.startlevel; version="[1.1,2.0)"} + * + * @version 1.1 + * @author $Id$ + */ + +package org.osgi.service.startlevel; diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/packageinfo new file mode 100644 index 000000000..3987f9c4e --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/startlevel/packageinfo @@ -0,0 +1 @@ +version 1.1 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/AbstractURLStreamHandlerService.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/AbstractURLStreamHandlerService.java index b86572a4f..79cfc45d9 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/AbstractURLStreamHandlerService.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/AbstractURLStreamHandlerService.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2002, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2002, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,7 +16,11 @@ package org.osgi.service.url; -import java.net.*; +import java.net.InetAddress; +import java.net.URL; +import java.net.URLConnection; +import java.net.URLStreamHandler; +import org.osgi.annotation.versioning.ConsumerType; /** * Abstract implementation of the {@code URLStreamHandlerService} interface. All @@ -27,12 +31,14 @@ import java.net.*; * {@code setURL} and {@code parseURL(URLStreamHandlerSetter,...)} methods. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public abstract class AbstractURLStreamHandlerService extends URLStreamHandler implements URLStreamHandlerService { /** * @see "java.net.URLStreamHandler.openConnection" */ + @Override public abstract URLConnection openConnection(URL u) throws java.io.IOException; /** @@ -50,7 +56,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * invoked for the specified URL. * @see "java.net.URLStreamHandler.parseURL" */ - public void parseURL(URLStreamHandlerSetter realHandler, URL u, String spec, int start, int limit) { + public void parseURL(@SuppressWarnings("hiding") URLStreamHandlerSetter realHandler, URL u, String spec, int start, int limit) { this.realHandler = realHandler; parseURL(u, spec, start, limit); } @@ -60,6 +66,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.toExternalForm" */ + @Override public String toExternalForm(URL u) { return super.toExternalForm(u); } @@ -69,6 +76,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.equals(URL,URL)" */ + @Override public boolean equals(URL u1, URL u2) { return super.equals(u1, u2); } @@ -78,6 +86,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.getDefaultPort" */ + @Override public int getDefaultPort() { return super.getDefaultPort(); } @@ -87,6 +96,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.getHostAddress" */ + @Override public InetAddress getHostAddress(URL u) { return super.getHostAddress(u); } @@ -96,6 +106,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.hashCode(URL)" */ + @Override public int hashCode(URL u) { return super.hashCode(u); } @@ -105,6 +116,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.hostsEqual" */ + @Override public boolean hostsEqual(URL u1, URL u2) { return super.hostsEqual(u1, u2); } @@ -114,6 +126,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.sameFile" */ + @Override public boolean sameFile(URL u1, URL u2) { return super.sameFile(u1, u2); } @@ -126,6 +139,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * @deprecated This method is only for compatibility with handlers written * for JDK 1.1. */ + @SuppressWarnings("javadoc") protected void setURL(URL u, String proto, String host, int port, String file, String ref) { realHandler.setURL(u, proto, host, port, file, ref); } @@ -137,6 +151,7 @@ public abstract class AbstractURLStreamHandlerService extends URLStreamHandler i * * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String,String,String)" */ + @Override protected void setURL(URL u, String proto, String host, int port, String auth, String user, String path, String query, String ref) { realHandler.setURL(u, proto, host, port, auth, user, path, query, ref); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLConstants.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLConstants.java index ac2b96709..490baaad3 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLConstants.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLConstants.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2002, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2002, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,8 @@ package org.osgi.service.url; +import org.osgi.annotation.versioning.ProviderType; + /** * Defines standard names for property keys associated with * {@link URLStreamHandlerService} and {@code java.net.ContentHandler} services. @@ -24,9 +26,9 @@ package org.osgi.service.url; * The values associated with these keys are of type {@code java.lang.String[]} * or {@code java.lang.String}, unless otherwise indicated. * - * @noimplement - * @version $Id$ + * @author $Id$ */ +@ProviderType public interface URLConstants { /** * Service property naming the protocols serviced by a diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerService.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerService.java index 4a453f61b..810d8718f 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerService.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerService.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2002, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2002, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,7 +16,10 @@ package org.osgi.service.url; -import java.net.*; +import java.net.InetAddress; +import java.net.URL; +import java.net.URLConnection; +import org.osgi.annotation.versioning.ConsumerType; /** * Service interface with public versions of the protected @@ -33,12 +36,14 @@ import java.net.*; * @see AbstractURLStreamHandlerService * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface URLStreamHandlerService { /** * @see "java.net.URLStreamHandler.openConnection" */ + @SuppressWarnings("javadoc") public URLConnection openConnection(URL u) throws java.io.IOException; /** @@ -50,40 +55,48 @@ public interface URLStreamHandlerService { * this URL. * @see "java.net.URLStreamHandler.parseURL" */ + @SuppressWarnings("javadoc") public void parseURL(URLStreamHandlerSetter realHandler, URL u, String spec, int start, int limit); /** * @see "java.net.URLStreamHandler.toExternalForm" */ + @SuppressWarnings("javadoc") public String toExternalForm(URL u); /** * @see "java.net.URLStreamHandler.equals(URL, URL)" */ + @SuppressWarnings("javadoc") public boolean equals(URL u1, URL u2); /** * @see "java.net.URLStreamHandler.getDefaultPort" */ + @SuppressWarnings("javadoc") public int getDefaultPort(); /** * @see "java.net.URLStreamHandler.getHostAddress" */ + @SuppressWarnings("javadoc") public InetAddress getHostAddress(URL u); /** * @see "java.net.URLStreamHandler.hashCode(URL)" */ + @SuppressWarnings("javadoc") public int hashCode(URL u); /** * @see "java.net.URLStreamHandler.hostsEqual" */ + @SuppressWarnings("javadoc") public boolean hostsEqual(URL u1, URL u2); /** * @see "java.net.URLStreamHandler.sameFile" */ + @SuppressWarnings("javadoc") public boolean sameFile(URL u1, URL u2); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerSetter.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerSetter.java index 90f25e396..96648b48a 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerSetter.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/URLStreamHandlerSetter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2002, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2002, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.osgi.service.url; import java.net.URL; +import org.osgi.annotation.versioning.ConsumerType; /** * Interface used by {@code URLStreamHandlerService} objects to call the @@ -31,8 +32,9 @@ import java.net.URL; * {@code java.net.URL} for the protocol. * * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface URLStreamHandlerSetter { /** * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String)" @@ -40,10 +42,12 @@ public interface URLStreamHandlerSetter { * @deprecated This method is only for compatibility with handlers written * for JDK 1.1. */ + @SuppressWarnings("javadoc") public void setURL(URL u, String protocol, String host, int port, String file, String ref); /** * @see "java.net.URLStreamHandler.setURL(URL,String,String,int,String,String,String,String)" */ + @SuppressWarnings("javadoc") public void setURL(URL u, String protocol, String host, int port, String authority, String userInfo, String path, String query, String ref); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/package-info.java new file mode 100644 index 000000000..7053546e1 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * URL Stream and Content Handlers Package Version 1.0. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.service.url; version="[1.0,2.0)"} + * + * @author $Id$ + */ + +@Version("1.0") +package org.osgi.service.url; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/packageinfo new file mode 100644 index 000000000..7c8de0324 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/url/packageinfo @@ -0,0 +1 @@ +version 1.0 diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java index 16340086b..5988d7939 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2007, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2007, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,7 +34,7 @@ import java.util.Map; * @param <T> The value mapped to the tracked item. * @param <R> The reason the tracked item is being tracked or untracked. * @ThreadSafe - * @version $Id$ + * @author $Id$ * @since 1.4 */ abstract class AbstractTracked<S, T, R> { diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java index f21db4fe5..9a1b57568 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2007, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2007, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,7 +44,7 @@ import org.osgi.framework.SynchronousBundleListener; * * @param <T> The type of the tracked object. * @ThreadSafe - * @version $Id$ + * @author $Id$ * @since 1.4 */ public class BundleTracker<T> implements BundleTrackerCustomizer<T> { @@ -218,6 +218,7 @@ public class BundleTracker<T> implements BundleTrackerCustomizer<T> { * @see BundleTrackerCustomizer#addingBundle(Bundle, BundleEvent) */ public T addingBundle(Bundle bundle, BundleEvent event) { + @SuppressWarnings("unchecked") T result = (T) bundle; return result; } @@ -463,6 +464,7 @@ public class BundleTracker<T> implements BundleTrackerCustomizer<T> { * @return Customized object for the tracked item or {@code null} if the * item is not to be tracked. */ + @Override T customizerAdding(final Bundle item, final BundleEvent related) { return customizer.addingBundle(item, related); } @@ -475,6 +477,7 @@ public class BundleTracker<T> implements BundleTrackerCustomizer<T> { * @param related Action related object. * @param object Customized object for the tracked item. */ + @Override void customizerModified(final Bundle item, final BundleEvent related, final T object) { customizer.modifiedBundle(item, related, object); } @@ -487,6 +490,7 @@ public class BundleTracker<T> implements BundleTrackerCustomizer<T> { * @param related Action related object. * @param object Customized object for the tracked item. */ + @Override void customizerRemoved(final Bundle item, final BundleEvent related, final T object) { customizer.removedBundle(item, related, object); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTrackerCustomizer.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTrackerCustomizer.java index 727e757d2..031b29795 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTrackerCustomizer.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTrackerCustomizer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2007, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2007, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,7 @@ package org.osgi.util.tracker; +import org.osgi.annotation.versioning.ConsumerType; import org.osgi.framework.Bundle; import org.osgi.framework.BundleEvent; @@ -42,9 +43,10 @@ import org.osgi.framework.BundleEvent; * * @param <T> The type of the tracked object. * @ThreadSafe - * @version $Id$ + * @author $Id$ * @since 1.4 */ +@ConsumerType public interface BundleTrackerCustomizer<T> { /** * A bundle is being added to the {@code BundleTracker}. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java index 21926ad87..1f7fd0674 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2000, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2000, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,7 +52,7 @@ import org.osgi.framework.ServiceReference; * @param <S> The type of the service being tracked. * @param <T> The type of the tracked object. * @ThreadSafe - * @version $Id$ + * @author $Id$ */ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { /* set this to true to compile in debug messages */ @@ -298,6 +298,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { } else { if (trackReference != null) { if (trackReference.getBundle() != null) { + @SuppressWarnings("unchecked") ServiceReference<S>[] single = new ServiceReference[] {trackReference}; references = single; } @@ -331,6 +332,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { * invalid syntax. */ private ServiceReference<S>[] getInitialReferences(boolean trackAllServices, String className, String filterString) throws InvalidSyntaxException { + @SuppressWarnings("unchecked") ServiceReference<S>[] result = (ServiceReference<S>[]) ((trackAllServices) ? context.getAllServiceReferences(className, filterString) : context.getServiceReferences(className, filterString)); return result; } @@ -408,6 +410,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { * @see ServiceTrackerCustomizer#addingService(ServiceReference) */ public T addingService(ServiceReference<S> reference) { + @SuppressWarnings("unchecked") T result = (T) context.getService(reference); return result; } @@ -527,6 +530,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { if (length == 0) { return null; } + @SuppressWarnings("unchecked") ServiceReference<S>[] result = new ServiceReference[length]; return t.copyKeys(result); } @@ -843,7 +847,9 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { return array; } if (length > array.length) { - array = (T[]) Array.newInstance(array.getClass().getComponentType(), length); + @SuppressWarnings("unchecked") + T[] newInstance = (T[]) Array.newInstance(array.getClass().getComponentType(), length); + array = newInstance; } for (int i = 0; i < length; i++) { array[i] = getService(references[i]); @@ -883,6 +889,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { if (closed) { return; } + @SuppressWarnings("unchecked") final ServiceReference<S> reference = (ServiceReference<S>) event.getServiceReference(); if (DEBUG) { System.out.println("ServiceTracker.Tracked.serviceChanged[" + event.getType() + "]: " + reference); @@ -914,6 +921,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { * * @GuardedBy this */ + @Override final void modified() { super.modified(); /* increment the modification count */ ServiceTracker.this.modified(); @@ -928,6 +936,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { * @return Customized object for the tracked item or {@code null} if the * item is not to be tracked. */ + @Override final T customizerAdding(final ServiceReference<S> item, final ServiceEvent related) { return customizer.addingService(item); } @@ -940,6 +949,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { * @param related Action related object. * @param object Customized object for the tracked item. */ + @Override final void customizerModified(final ServiceReference<S> item, final ServiceEvent related, final T object) { customizer.modifiedService(item, object); } @@ -952,6 +962,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> { * @param related Action related object. * @param object Customized object for the tracked item. */ + @Override final void customizerRemoved(final ServiceReference<S> item, final ServiceEvent related, final T object) { customizer.removedService(item, object); } diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTrackerCustomizer.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTrackerCustomizer.java index c14b8d470..0c3333455 100644 --- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTrackerCustomizer.java +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTrackerCustomizer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) OSGi Alliance (2000, 2012). All Rights Reserved. + * Copyright (c) OSGi Alliance (2000, 2013). All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,7 @@ package org.osgi.util.tracker; +import org.osgi.annotation.versioning.ConsumerType; import org.osgi.framework.ServiceReference; /** @@ -45,8 +46,9 @@ import org.osgi.framework.ServiceReference; * @param <S> The type of the service being tracked. * @param <T> The type of the tracked object. * @ThreadSafe - * @version $Id$ + * @author $Id$ */ +@ConsumerType public interface ServiceTrackerCustomizer<S, T> { /** * A service is being added to the {@code ServiceTracker}. diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/package-info.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/package-info.java new file mode 100644 index 000000000..2bb188f92 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/package-info.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) OSGi Alliance (2010, 2013). All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Tracker Package Version 1.5. + * + * <p> + * Bundles wishing to use this package must list the package in the + * Import-Package header of the bundle's manifest. + * + * <p> + * Example import for consumers using the API in this package: + * <p> + * {@code Import-Package: org.osgi.util.tracker; version="[1.5,2.0)"} + * + * @author $Id$ + */ + +@Version("1.5.1") +package org.osgi.util.tracker; + +import org.osgi.annotation.versioning.Version; + diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/packageinfo b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/packageinfo new file mode 100644 index 000000000..1213efd61 --- /dev/null +++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/packageinfo @@ -0,0 +1 @@ +version 1.5.1 |