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/10/11 08:09:10 UTC

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

Added: release/felix/org.apache.felix.http.jetty-4.1.2.pom
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.2.pom (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.2.pom Sun Oct 11 08:09:09 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>13</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.2</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.2</tag>
+  </scm>
+    
+    <properties>
+        <felix.java.version>8</felix.java.version>
+        <jetty.version>9.4.32.v20200930</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.2</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.2.pom
------------------------------------------------------------------------------
    svn:executable = *

Added: release/felix/org.apache.felix.http.jetty-4.1.2.pom.asc
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.2.pom.asc (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.2.pom.asc Sun Oct 11 08:09:09 2020
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEX9UUWovQMXqU3HcTP89Sn/LyegYFAl961PYACgkQP89Sn/Ly
+egZxZQ//XQDqoXinz7VxT2ryD2Cy110xFoW/o9HR2aUjNvNjqEmLvSV89L48nHq3
+vT6kO6Un4yiZOg/GAAFiZtsFCRpmlhqzFdIv2/4trny6Bt7b/HhQ/UCyQt/ADh4p
+CESrig5veos/byLBrT/9b17eZm+uJo81ThZf2GJCNvlT2X9eUyqMHXj6dV4zjX3W
+0HabmiTs0c/Lw2yo21CjhFzH3cObk0JiZowT17plN/lLw2n2d07pomrBB3CsKQz9
+UqQQVNxBK6WXpi2ZQlzuwEfJzWLEtkJoby3sKvSBil1ViPCCW88F+oexSgov4a+6
+SOS+Lym4FJEX+7fMIh+kCehef8gTl1HUm3cSl6Y2NnVKXT/duF/QMTMXXcS4ErDt
+vFOT/srDFJo/lOxt4VsOTomiUd9H9e+umCMS2S2s/oFHETvYAyLMwZzNKyPOaUAu
+LTGkTjVw2qtWoUl/tBuMqM6akDMLjiGwboDmDEjle22uleXJHUN649JwcDtSQrMd
+V9JyMeVyTRdrqID/ayeUPrNz7cn9a29ZM394yyjsUmcEc0KdsqCQWjLy1xtL4n0y
+2HIfabAq/rUUmNIQRqPooTRmcXBHeoHLZhEJjESwa0SfXRarCHn2qPFr76E+YD+B
+h656NNsGrZwYHzabr7taq1eYwH5UVey45ljFamdpYDLoCYWfLBA=
+=qzQX
+-----END PGP SIGNATURE-----

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

Added: release/felix/org.apache.felix.http.jetty-4.1.2.pom.sha1
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.2.pom.sha1 (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.2.pom.sha1 Sun Oct 11 08:09:09 2020
@@ -0,0 +1 @@
+68f3a7de544f4c7b9a1129157e0922ad65c5e637
\ No newline at end of file

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

Added: release/felix/org.apache.felix.http.jetty-4.1.2.pom.sha512
==============================================================================
--- release/felix/org.apache.felix.http.jetty-4.1.2.pom.sha512 (added)
+++ release/felix/org.apache.felix.http.jetty-4.1.2.pom.sha512 Sun Oct 11 08:09:09 2020
@@ -0,0 +1 @@
+e28d9fc7a6920658365102423440de489c7611fde36aa9979be7a9495aedb2a3f5305f6f130c0b77113928b4eab9d733d5dbc0812d4e9183bcfb13d27c555253  org.apache.felix.http.jetty-4.1.2.pom

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