You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2020/09/26 13:31:13 UTC

svn commit: r41592 [2/2] - /release/felix/

Added: release/felix/org.apache.felix.http.jetty-4.1.0.pom
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.0.pom (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.0.pom Sat Sep 26 13:31:13 2020
@@ -0,0 +1,421 @@
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you 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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>org.apache.felix.http.parent</artifactId>
+        <version>12</version>
+        <relativePath>../parent/pom.xml</relativePath>
+    </parent>
+
+    <name>Apache Felix Http Jetty</name>
+    <description>This is an implementation of the R7 OSGi Http Service and the R7 OSGi Http Whiteboard Specification</description>
+
+    <artifactId>org.apache.felix.http.jetty</artifactId>
+    <version>4.1.0</version>
+    <packaging>bundle</packaging>
+    
+    <scm>
+        <connection>scm:git:https://github.com/apache/felix-dev.git</connection>
+        <developerConnection>scm:git:https://github.com/apache/felix-dev.git</developerConnection>
+        <url>https://gitbox.apache.org/repos/asf?p=felix-dev.git</url>
+      <tag>org.apache.felix.http.jetty-4.1.0</tag>
+  </scm>
+    
+    <properties>
+        <felix.java.version>8</felix.java.version>
+        <jetty.version>9.4.31.v20200723</jetty.version>
+    </properties>
+
+    <build>
+        <plugins>
+
+            <!-- Use a groovy script to preserve the META-INF/services/* files for the artifacts that are embeded in the uber jar -->
+            <plugin>
+                <groupId>org.codehaus.gmaven</groupId>
+                <artifactId>groovy-maven-plugin</artifactId>
+                <version>2.1.1</version>
+                <executions>
+                    <execution>
+                        <id>groovy-magic</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>execute</goal>
+                        </goals>
+                        <configuration>
+                            <source><![CDATA[
+                                // make an output dir for the merged resource files
+                                def slDir = new File(project.build.directory, "serviceloader-resources");
+                                slDir.mkdirs();
+
+                                // scan each of the artifacts to preserve the information found in any META-INF/services/* files
+                                project.artifacts.each() { artifact ->
+
+                                    if (artifact.getArtifactHandler().isAddedToClasspath() && !org.apache.maven.artifact.Artifact.SCOPE_TEST.equals( artifact.getScope() )) {
+                                        def jar;
+                                        try {
+                                            jar = new java.util.jar.JarFile(artifact.file)
+                                            jar.stream().each() { entry ->
+                                               if (!entry.isDirectory() && entry.name.startsWith("META-INF/services/")) {
+
+                                                   // check if we already have a file with this name
+                                                   def svcFile = new File(slDir, entry.name)
+                                                   def svcSet = new LinkedHashSet();
+                                                   if (svcFile.exists()) {
+                                                       // found existing file, so load the items from the existing file so we can merge
+                                                       svcFile.eachLine { className ->
+                                                           className = className.trim();
+                                                           if (!className.isEmpty()) {
+                                                               svcSet.add(className);
+                                                           }
+                                                       }
+                                                   }
+
+                                                   // read the content of the found entry
+                                                   def lineReader;
+                                                   try {
+                                                       lineReader = new BufferedReader(new InputStreamReader(jar.getInputStream(entry), java.nio.charset.StandardCharsets.UTF_8));
+                                                       def className;
+                                                       while ( ( className = lineReader.readLine() ) != null ) {
+                                                           className = className.trim();
+                                                           if (!className.isEmpty()) {
+                                                               svcSet.add(className);
+                                                           }
+                                                       }
+                                                   } finally {
+                                                       // cleanup
+                                                       if (lineReader != null) {
+                                                           lineReader.close()
+                                                       }
+                                                   }
+
+                                                   // write the merged data to the output file
+                                                   if (!svcSet.isEmpty()) {
+                                                       // make any missing folders
+                                                       svcFile.getParentFile().mkdirs();
+
+                                                       svcFile.withWriter('utf-8') { writer ->
+                                                           svcSet.each() { item ->
+                                                               writer.writeLine item;
+                                                           }
+
+                                                           // finish up with a blank line
+                                                           writer.println();
+                                                       }
+                                                   }
+
+                                               }
+                                            }
+                                        } finally {
+                                            // cleanup
+                                            if (jar != null) {
+                                                jar.close();
+                                            }
+                                        }
+                                    }
+
+                                }
+                            ]]></source>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <X-Jetty-Version>
+                            ${jetty.version}
+                        </X-Jetty-Version>
+                        <Bundle-Activator>
+                            org.apache.felix.http.jetty.internal.JettyActivator
+                        </Bundle-Activator>
+                        <Export-Package>
+                            org.osgi.service.http,
+                            org.osgi.service.http.context,
+                            org.osgi.service.http.runtime,
+                            org.osgi.service.http.runtime.dto,
+                            org.osgi.service.http.whiteboard,
+                            !org.eclipse.jetty,
+                            !org.eclipse.jetty.util.log.jmx,
+                            !org.eclipse.jetty.version,
+                            org.eclipse.jetty.*,
+                            org.apache.felix.http.jetty
+                        </Export-Package>
+                        <Private-Package>
+                            org.apache.felix.http.base.*,
+                            org.apache.felix.http.jetty.*,
+                            org.eclipse.jetty,
+                            org.eclipse.jetty.security.authentication,
+                            org.eclipse.jetty.util.log.jmx,
+                            org.eclipse.jetty.version
+                        </Private-Package>
+                        <Conditional-Package>
+                            org.apache.commons.*
+                        </Conditional-Package>
+                        <Import-Package>
+                            javax.imageio;resolution:=optional,
+                            javax.sql;resolution:=optional,
+                            org.slf4j.*;resolution:=optional,
+                            org.ietf.jgss;resolution:=optional,
+                            org.osgi.service.cm;resolution:=optional;version="[1.3,2)",                        	
+                            org.osgi.service.event;resolution:=optional;version="[1.2,2)",
+                            org.osgi.service.log;resolution:=optional;version="[1.3,2)",
+                            org.osgi.service.metatype;resolution:=optional;version="[1.1,2)",
+                            org.osgi.service.useradmin;resolution:=optional;version="[1.1,2)",
+                            org.osgi.service.http;version="[1.2.1,1.3)",
+                            org.osgi.service.http.context;version="[1.1,1.2)",
+                            org.osgi.service.http.runtime;version="[1.1,1.2)",
+                            org.osgi.service.http.runtime.dto;version="[1.1,1.2)",
+                            *
+                        </Import-Package>
+                        <DynamicImport-Package>
+                            org.osgi.service.cm;version="[1.3,2)",                         
+                            org.osgi.service.event;version="[1.2,2)",
+                            org.osgi.service.log;version="[1.3,2)",
+                            org.osgi.service.metatype;version="[1.1,2)"
+                        </DynamicImport-Package>
+                        <Provide-Capability>
+                            osgi.implementation;osgi.implementation="osgi.http";version:Version="1.1";
+                            uses:="javax.servlet,javax.servlet.http,org.osgi.service.http.context,org.osgi.service.http.whiteboard",
+                            osgi.service;objectClass:List&lt;String&gt;="org.osgi.service.http.runtime.HttpServiceRuntime";
+                            uses:="org.osgi.service.http.runtime,org.osgi.service.http.runtime.dto",
+                            osgi.service;objectClass:List&lt;String&gt;="org.osgi.service.http.HttpService";
+                            uses:="org.osgi.service.http",
+                            osgi.serviceloader;osgi.serviceloader="org.eclipse.jetty.http.HttpFieldPreEncoder"
+                        </Provide-Capability>
+                        <Require-Capability>
+                            osgi.contract;filter:="(&amp;(osgi.contract=JavaServlet)(version=3.1))",
+                            osgi.extender;filter:="(osgi.extender=osgi.serviceloader.registrar)";resolution:=optional,
+                            osgi.extender;filter:="(osgi.extender=osgi.serviceloader.processor)";resolution:=optional,
+                            osgi.serviceloader;filter:="(osgi.serviceloader=org.eclipse.jetty.http.HttpFieldPreEncoder)";resolution:=optional;cardinality:=multiple,
+                            osgi.serviceloader;filter:="(osgi.serviceloader=org.eclipse.jetty.io.ssl.ALPNProcessor$Server)";resolution:=optional;cardinality:=multiple
+                        </Require-Capability>
+                        <Include-Resource>
+                            {maven-resources},${project.build.directory}/serviceloader-resources
+                        </Include-Resource>
+                        <_removeheaders>
+                            Private-Package,Conditional-Package
+                        </_removeheaders>
+                    </instructions>
+                    <!-- Skip Baselining due to Jetty API -->
+                    <skip>true</skip>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>light-bundle</id>
+                        <goals>
+                            <goal>bundle</goal>
+                        </goals>
+                        <configuration>
+                            <classifier>light</classifier>
+                            <instructions>
+                               <Bundle-Name>${project.name} Light</Bundle-Name>
+                               <Bundle-SymbolicName>${project.artifactId}.light</Bundle-SymbolicName>
+                               <!-- We need to override this from the base configuration -->
+                               <Conditional-Package>
+                                   foo
+                               </Conditional-Package>
+                               <Export-Package>
+                                    org.osgi.service.http,
+                                    org.osgi.service.http.context,
+                                    org.osgi.service.http.runtime,
+                                    org.osgi.service.http.runtime.dto,
+                                    org.osgi.service.http.whiteboard,
+                                    org.apache.felix.http.jetty
+                                </Export-Package>
+                                <Private-Package>
+                                    org.apache.felix.http.base.*,
+                                    org.apache.felix.http.jetty.*
+                                </Private-Package>
+                                <Import-Package>
+                                    org.osgi.service.cm;resolution:=optional;version="[1.3,2)",
+                                    org.osgi.service.event;resolution:=optional;version="[1.2,2)",
+                                    org.osgi.service.log;resolution:=optional;version="[1.3,2)",
+                                    org.osgi.service.metatype;resolution:=optional;version="[1.1,2)",
+                                    org.osgi.service.useradmin;resolution:=optional;version="[1.1,2)",
+                                    org.osgi.service.http;version="[1.2.1,1.3)",
+                                    org.osgi.service.http.context;version="[1.1,1.2)",
+                                    org.osgi.service.http.runtime;version="[1.1,1.2)",
+                                    org.osgi.service.http.runtime.dto;version="[1.1,1.2)",
+                                    org.eclipse.jetty.webapp;resolution:=optional,
+                                    *
+                                </Import-Package>
+                                <!-- We need to override this from the base configuration to exclude the ServiceLoader capabilities -->
+                                <Provide-Capability>
+                                    osgi.implementation;osgi.implementation="osgi.http";version:Version="1.1";
+                                    uses:="javax.servlet,javax.servlet.http,org.osgi.service.http.context,org.osgi.service.http.whiteboard",
+                                    osgi.service;objectClass:List&lt;String&gt;="org.osgi.service.http.runtime.HttpServiceRuntime";
+                                    uses:="org.osgi.service.http.runtime,org.osgi.service.http.runtime.dto",
+                                    osgi.service;objectClass:List&lt;String&gt;="org.osgi.service.http.HttpService";
+                                    uses:="org.osgi.service.http"
+                                </Provide-Capability>
+                                <!-- We need to override this from the base configuration to exclude the ServiceLoader capabilities -->
+                                <Require-Capability>
+                                    osgi.contract;filter:="(&amp;(osgi.contract=JavaServlet)(version=3.1))"
+                                </Require-Capability>
+                                <!-- We need to override this from the base configuration to exclude the ServiceLoader resources -->
+                                <Include-Resource>
+                                    {maven-resources}
+                                </Include-Resource>
+                                <_removeheaders>
+                                    X-Jetty-Version,Private-Package,Conditional-Package 
+                                </_removeheaders>
+                            </instructions>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>javax.servlet</groupId>
+            <artifactId>javax.servlet-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>osgi.core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.cm</artifactId>
+            <version>1.5.0</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.event</artifactId>
+            <version>1.3.1</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.metatype</artifactId>
+            <version>1.3.0</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.useradmin</artifactId>
+            <version>1.1.0</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-servlet</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-server</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-util</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-jmx</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-security</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-webapp</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty.websocket</groupId>
+            <artifactId>websocket-servlet</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty.websocket</groupId>
+            <artifactId>websocket-server</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty.http2</groupId>
+            <artifactId>http2-server</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty.http2</groupId>
+            <artifactId>http2-common</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty.http2</groupId>
+            <artifactId>http2-hpack</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-alpn-server</artifactId>
+            <version>${jetty.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.http</artifactId>
+            <version>1.2.1</version>
+           <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.http.whiteboard</artifactId>
+            <version>1.1.0</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.felix</groupId>
+            <artifactId>org.apache.felix.http.base</artifactId>
+            <version>4.1.0</version>
+        </dependency>
+        <dependency>
+            <groupId>commons-fileupload</groupId>
+            <artifactId>commons-fileupload</artifactId>
+            <version>1.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+            <version>2.6</version>
+        </dependency>
+  <!-- Testing -->
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.log</artifactId>
+            <version>1.3.0</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+</project>

Propchange: release/felix/org.apache.felix.http.jetty-4.1.0.pom
------------------------------------------------------------------------------
    svn:executable = *

Added: release/felix/org.apache.felix.http.jetty-4.1.0.pom.asc
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.0.pom.asc (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.0.pom.asc Sat Sep 26 13:31:13 2020
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEX9UUWovQMXqU3HcTP89Sn/LyegYFAl9q+7QACgkQP89Sn/Ly
+egYVPA//VCdaLtXWfgLeHUmviFwffMGxCL8YkNHOw8c10VANNhsU/xk+Fv/Au1Az
+2HsISAywOM/RbRfCzpjzzyYIcDd8lhKbzMarl/1m3ScwtX9kITvrRt/wf/vJdylR
+RA3+vY/p563p0NA5F5ppkif0QDvPe+V1pQL/bCL+lM6O3g+ZM5/7Ku6g7XTnWrBN
+pmY0QpFPq0/b5f9X/WNHQ01GCRtRNAaQ8LWKeZaY+yXMp9ZY2QudFNLxu+WkhHMR
+gLFxDYgn9SZfTWputOnotF+TA74QSroS46QEBpJZP+e2ks97m9ZOyaVzVdhm9Z9B
+EWzFqu3eYdiQzF5qKgdftJRWzHpLU/g/1vJXq2qDpPdLJOqXfBLXc2DSc1T51LKf
+gIQFtaKtsIgDczJ4Cn/M26FllpIrdkWtjcaVcqDxWrg5d+Ov2/TqfOTojLsIqkR3
+PcsbDWZs9iU+pGklMalWxRwNtq0WtfQI4xx2/bROYPW1fYj4bzS3VMi93ZJS6To2
+5pc25wQzX87OckndzAmdm+PpsWW+teXzgkDUqbOsIo/kkt8WQLcSn9goBVmOJGOH
+AW8KqjhI7AnblhrCEhB+jtJ3tccoDpQ53SQ9Yp0H7+QGdnTSXzP7dqwQ/aFS7crB
+Q7dDIuz9V167JfHt046EWKnQm4Drt/Kd/ESZ33cpTvOOlTuamLU=
+=TMcy
+-----END PGP SIGNATURE-----

Propchange: release/felix/org.apache.felix.http.jetty-4.1.0.pom.asc
------------------------------------------------------------------------------
    svn:executable = *

Added: release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha1
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha1 (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha1 Sat Sep 26 13:31:13 2020
@@ -0,0 +1 @@
+65e9608dc0d373fe14d2e96be69e019ec5a6adee
\ No newline at end of file

Propchange: release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha1
------------------------------------------------------------------------------
    svn:executable = *

Added: release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha512
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha512 (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha512 Sat Sep 26 13:31:13 2020
@@ -0,0 +1 @@
+bb66df1b3cb3f82f467aad314aaf87158e64f8ed1f08baa3190c856b0f3e3d5f96f47f39bd1482b833243b6ec57a0e2292d082e3a41fdfc7fc418cec56cdca73  org.apache.felix.http.jetty-4.1.0.pom

Propchange: release/felix/org.apache.felix.http.jetty-4.1.0.pom.sha512
------------------------------------------------------------------------------
    svn:executable = *