Updating alpn and npn modules to protonego

This commit is contained in:
Joakim Erdfelt 2014-04-01 13:09:49 -07:00
parent 9c96dadf21
commit 077887141f
28 changed files with 114 additions and 37 deletions

View File

@ -1,7 +1,7 @@
<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">
<parent>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-project</artifactId>
<artifactId>jetty-alpn-parent</artifactId>
<version>9.2.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -1,7 +1,7 @@
<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">
<parent>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-project</artifactId>
<artifactId>jetty-alpn-parent</artifactId>
<version>9.2.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -0,0 +1,9 @@
[name]
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/7.0.0/alpn-boot-7.0.0.jar:lib/alpn/alpn-boot-7.0.0.jar
[ini-template]
--exec
-Xbootclasspath/p:lib/alpn/alpn-boot-7.0.0.jar

View File

@ -0,0 +1,9 @@
[name]
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/7.0.0/alpn-boot-7.0.0.jar:lib/alpn/alpn-boot-7.0.0.jar
[ini-template]
--exec
-Xbootclasspath/p:lib/alpn/alpn-boot-7.0.0.jar

View File

@ -0,0 +1,9 @@
[name]
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/7.0.0/alpn-boot-7.0.0.jar:lib/alpn/alpn-boot-7.0.0.jar
[ini-template]
--exec
-Xbootclasspath/p:lib/alpn/alpn-boot-7.0.0.jar

View File

@ -0,0 +1,9 @@
[name]
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/8.0.0/alpn-boot-8.0.0.jar:lib/alpn/alpn-boot-8.0.0.jar
[ini-template]
--exec
-Xbootclasspath/p:lib/alpn/alpn-boot-8.0.0.jar

View File

@ -0,0 +1,32 @@
[name]
protonego
[depend]
protonego/alpn-${java.version}
[files]
lib/
lib/alpn/
[ini-template]
# ALPN is provided via a -Xbootclasspath that modifies the secure connections
# in java to support the ALPN layer needed for SPDY (and eventually HTTP/2)
#
# This modification has a tight dependency on specific recent updates of
# Java 1.7 and Java 1.8
# (Java versions prior to 1.7u40 are not supported)
#
# The alpn protonego module will use an appropriate alpn-boot jar for your
# specific version of Java.
#
# IMPORTANT: Versions of Java that exist after this module was created are
# not guaranteed to work with existing alpn-boot jars, and might
# need a new alpn-boot to be created / tested / deployed by the
# Jetty project in order to provide support for these future
# Java versions.
#
# All versions of alpn-boot can be found at
# http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/

View File

@ -808,6 +808,11 @@
<version>${project.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-alpn-server</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty.example-async-rest</groupId>
<artifactId>example-async-rest-webapp</artifactId>

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.0.v20120525/npn-boot-1.1.0.v20120525.jar:lib/npn/npn-boot-1.1.0.v20120525.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.0.v20120525/npn-boot-1.1.0.v20120525.jar:lib/npn/npn-boot-1.1.0.v20120525.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.1.v20121030/npn-boot-1.1.1.v20121030.jar:lib/npn/npn-boot-1.1.1.v20121030.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.1.v20121030/npn-boot-1.1.1.v20121030.jar:lib/npn/npn-boot-1.1.1.v20121030.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.3.v20130313/npn-boot-1.1.3.v20130313.jar:lib/npn/npn-boot-1.1.3.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.3.v20130313/npn-boot-1.1.3.v20130313.jar:lib/npn/npn-boot-1.1.3.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.3.v20130313/npn-boot-1.1.3.v20130313.jar:lib/npn/npn-boot-1.1.3.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.4.v20130313/npn-boot-1.1.4.v20130313.jar:lib/npn/npn-boot-1.1.4.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.5.v20130313/npn-boot-1.1.5.v20130313.jar:lib/npn/npn-boot-1.1.5.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.5.v20130313/npn-boot-1.1.5.v20130313.jar:lib/npn/npn-boot-1.1.5.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.5.v20130313/npn-boot-1.1.5.v20130313.jar:lib/npn/npn-boot-1.1.5.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.5.v20130313/npn-boot-1.1.5.v20130313.jar:lib/npn/npn-boot-1.1.5.v20130313.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.6.v20130911/npn-boot-1.1.6.v20130911.jar:lib/npn/npn-boot-1.1.6.v20130911.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.6.v20130911/npn-boot-1.1.6.v20130911.jar:lib/npn/npn-boot-1.1.6.v20130911.jar

View File

@ -1,5 +1,5 @@
[name]
npn-boot
protonego-boot
[files]
http://central.maven.org/maven2/org/mortbay/jetty/npn/npn-boot/1.1.6.v20130911/npn-boot-1.1.6.v20130911.jar:lib/npn/npn-boot-1.1.6.v20130911.jar

View File

@ -1,9 +1,8 @@
#
# NPN Module
#
[name]
protonego
[depend]
npn/npn-${java.version}
protonego/npn-${java.version}
[files]
lib/
@ -14,7 +13,7 @@ lib/npn/
# in java to support the NPN layer needed for SPDY.
#
# This modification has a tight dependency on specific updates of Java 1.7.
# (No support for Java 8 currently exists for npn / npn-boot)
# (No support for Java 8 exists for npn / npn-boot, use alpn instead)
#
# The npn module will use an appropriate npn-boot jar for your specific
# version of Java.

View File

@ -4,7 +4,7 @@
[depend]
ssl
npn
protonego/${proto.nego}
[lib]
lib/spdy/*.jar
@ -15,6 +15,13 @@ etc/jetty-spdy.xml
[ini-template]
## SPDY Configuration
# Protocol Negotiation Implementation
# choices are:
# 'npn' : original implementation for SPDY (now deprecated)
# 'alpn' : replacement for NPN, in use by current SPDY implementations
# and the future HTTP/2 spec
# Note: java 1.8+ are ALPN only.
proto.nego=alpn
# Port for SPDY connections
spdy.port=8443
# SPDY idle timeout in milliseconds

View File

@ -18,6 +18,9 @@
package org.eclipse.jetty.spdy.server;
import static org.hamcrest.Matchers.*;
import static org.junit.Assert.*;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
@ -28,6 +31,7 @@ import java.net.URISyntaxException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Pattern;
import org.eclipse.jetty.start.BaseHome;
import org.eclipse.jetty.start.FileArg;
@ -42,12 +46,6 @@ import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameter;
import org.junit.runners.Parameterized.Parameters;
import static org.hamcrest.Matchers.is;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertThat;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
@RunWith(Parameterized.class)
public class NPNModuleTest
{
@ -69,11 +67,11 @@ public class NPNModuleTest
@Parameters(name = "{index}: mod:{0}")
public static List<Object[]> data()
{
File npnBootModDir = MavenTestingUtils.getProjectDir("../spdy-http-server/src/main/config/modules/npn");
File npnBootModDir = MavenTestingUtils.getProjectDir("../spdy-http-server/src/main/config/modules/protonego");
List<Object[]> data = new ArrayList<>();
for (File file : npnBootModDir.listFiles())
{
if (file.getName().endsWith(".mod"))
if (Pattern.matches("npn-.*\\.mod",file.getName()))
{
data.add(new Object[] { file.getName() });
}
@ -101,12 +99,12 @@ public class NPNModuleTest
@Test
public void testModuleValues() throws IOException
{
File modFile = basehome.getFile("modules/npn/" + modBootFile);
File modFile = basehome.getFile("modules/protonego/" + modBootFile);
Module mod = new Module(basehome,modFile);
assertNotNull("module",mod);
// Validate logical name
assertThat("Module name",mod.getName(),is("npn-boot"));
assertThat("Module name",mod.getName(),is("protonego-boot"));
List<String> expectedBootClasspath = new ArrayList<>();

View File

@ -3,7 +3,7 @@
<parent>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-parent</artifactId>
<version>21</version>
<version>22</version>
</parent>
<artifactId>jetty-project</artifactId>
<version>9.2.0-SNAPSHOT</version>
@ -19,8 +19,8 @@
<npn.api.version>1.1.0.v20120525</npn.api.version>
<alpn.api.version>1.0.0</alpn.api.version>
<!-- default values are unsupported, but required to be defined for reactor sanity reasons -->
<npn.version>unsupported</npn.version>
<alpn.version>unsupported</alpn.version>
<npn.version>undefined</npn.version>
<alpn.version>undefined</alpn.version>
</properties>
<scm>
<connection>scm:git:http://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.project.git</connection>
@ -403,7 +403,7 @@
</snapshots>
<id>sonatype-snapshots</id>
<name>Sonatype Jetty Snapshots</name>
<url>http://oss.sonatype.org/content/groups/jetty</url>
<url>https://oss.sonatype.org/content/groups/jetty</url>
</repository>
</repositories>
<modules>