1 package org.apache.maven.index;
2
3 /*
4 * Licensed to the Apache Software Foundation (ASF) under one
5 * or more contributor license agreements. See the NOTICE file
6 * distributed with this work for additional information
7 * regarding copyright ownership. The ASF licenses this file
8 * to you under the Apache License, Version 2.0 (the
9 * "License"); you may not use this file except in compliance
10 * with the License. You may obtain a copy of the License at
11 *
12 * http://www.apache.org/licenses/LICENSE-2.0
13 *
14 * Unless required by applicable law or agreed to in writing,
15 * software distributed under the License is distributed on an
16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17 * KIND, either express or implied. See the License for the
18 * specific language governing permissions and limitations
19 * under the License.
20 */
21
22 /**
23 * OSGI ontology.
24 *
25 * @author Olivier Lamy
26 * @since 4.1.1
27 */
28 public interface OSGI
29 {
30
31 /**
32 * OSGI namespace
33 */
34 String OSGI_NAMESPACE = "urn:osgi#";
35
36 Field SYMBOLIC_NAME = new Field( null, OSGI_NAMESPACE, "symbolicName", "Bundle Symbolic Name" );
37
38 Field VERSION = new Field( null, OSGI_NAMESPACE, "version", "Bundle Version" );
39
40 Field EXPORT_PACKAGE = new Field( null, OSGI_NAMESPACE, "exportPackage", "Bundle Export-Package" );
41
42 /**
43 * Export-Service has been deprecated since OSGI R4 (2005), and was never used by resolvers. It is replaced by
44 * PROVIDE_CAPABILITY
45 *
46 * @deprecated
47 */
48 @Deprecated
49 Field EXPORT_SERVICE = new Field( null, OSGI_NAMESPACE, "exportService", "Bundle Export-Service" );
50
51 Field DESCRIPTION = new Field( null, OSGI_NAMESPACE, "bundleDescription", "Bundle-Description" );
52
53 Field NAME = new Field( null, OSGI_NAMESPACE, "bundleName", "Bundle-Name" );
54
55 Field LICENSE = new Field( null, OSGI_NAMESPACE, "bundleLicense", "Bundle-License" );
56
57 Field DOCURL = new Field( null, OSGI_NAMESPACE, "bundleDocUrl", "Bundle-DocURL" );
58
59 Field IMPORT_PACKAGE = new Field( null, OSGI_NAMESPACE, "importPackage", "Import-Package" );
60
61 Field REQUIRE_BUNDLE = new Field( null, OSGI_NAMESPACE, "requireBundle", "Require-Bundle" );
62
63 /**
64 * used by OSGI resolvers to determine which bundles / artifacts / environments, etc. can satisfy a given
65 * requirement. It replaces headers like Export-Service and Required Execution Environment, and uses the default
66 * OSGI header format
67 *
68 * @since 5.1.2
69 */
70 Field PROVIDE_CAPABILITY =
71 new Field( null, OSGI_NAMESPACE, "provideCapability", "Bundle Provide-Capability" );
72
73 /**
74 * used by OSGI resolvers to indicate which services, features, etc are required by a given .
75 * It replaces headers like Import-Service, and uses the default OSGI header format.
76 *
77 * @since 5.1.2
78 */
79 Field REQUIRE_CAPABILITY =
80 new Field( null, OSGI_NAMESPACE, "requireCapability", "Bundle Require-Capability" );
81
82 /**
83 * used to hold the SHA256 checksum required as identifier for OSGI Content resources.
84 *
85 * @since 5.1.2
86 */
87 Field SHA256 = new Field( null, OSGI_NAMESPACE, "sha256", "SHA-256 checksum" );
88
89 /**
90 * used to hold the Fragment Host header for an OSGI Fragment bundle.
91 *
92 * @since 5.1.2
93 */
94 Field FRAGMENT_HOST = new Field( null, OSGI_NAMESPACE, "fragmentHost", "Bundle Fragment-Host" );
95
96 /**
97 * used to hold the Fragment Host header for an OSGI Fragment bundle.
98 *
99 * @since 5.1.2
100 */
101 Field BUNDLE_REQUIRED_EXECUTION_ENVIRONMENT =
102 new Field( null, OSGI_NAMESPACE, "bree", "Bundle Required Execution Environment" );
103
104 }