-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[jwtk#519] Add src/main/java9/module-info.java files and a simple IT.
- Loading branch information
Showing
17 changed files
with
254 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -50,4 +50,4 @@ | |
</plugins> | ||
</build> | ||
|
||
</project> | ||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
module io.jsonwebtoken.jjwt.api { | ||
exports io.jsonwebtoken; | ||
exports io.jsonwebtoken.io; | ||
exports io.jsonwebtoken.lang; | ||
exports io.jsonwebtoken.security; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -53,4 +53,4 @@ | |
</plugins> | ||
</build> | ||
|
||
</project> | ||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
module io.jsonwebtoken.jjwt.ext.gson { | ||
requires transitive com.google.gson; | ||
requires io.jsonwebtoken.jjwt.api; | ||
|
||
exports io.jsonwebtoken.gson.io; | ||
|
||
provides io.jsonwebtoken.io.Deserializer with | ||
io.jsonwebtoken.gson.io.GsonDeserializer; | ||
provides io.jsonwebtoken.io.Serializer with | ||
io.jsonwebtoken.gson.io.GsonSerializer; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -69,4 +69,5 @@ | |
</plugin> | ||
</plugins> | ||
</build> | ||
</project> | ||
|
||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
module io.jsonwebtoken.jjwt.ext.jackson { | ||
requires transitive com.fasterxml.jackson.core; | ||
requires transitive com.fasterxml.jackson.databind; | ||
requires io.jsonwebtoken.jjwt.api; | ||
|
||
exports io.jsonwebtoken.jackson.io; | ||
|
||
provides io.jsonwebtoken.io.Deserializer with | ||
io.jsonwebtoken.jackson.io.JacksonDeserializer; | ||
provides io.jsonwebtoken.io.Serializer with | ||
io.jsonwebtoken.jackson.io.JacksonSerializer; | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -69,4 +69,5 @@ | |
</plugin> | ||
</plugins> | ||
</build> | ||
</project> | ||
|
||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
module io.jsonwebtoken.jjwt.ext.orgjson { | ||
requires transitive org.json; | ||
requires io.jsonwebtoken.jjwt.api; | ||
|
||
exports io.jsonwebtoken.orgjson.io; | ||
|
||
provides io.jsonwebtoken.io.Deserializer with io.jsonwebtoken.orgjson.io.OrgJsonDeserializer; | ||
provides io.jsonwebtoken.io.Serializer with io.jsonwebtoken.orgjson.io.OrgJsonSerializer; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -68,4 +68,4 @@ | |
</dependency> | ||
</dependencies> | ||
|
||
</project> | ||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
module io.jsonwebtoken.jjwt.impl { | ||
requires io.jsonwebtoken.jjwt.api; | ||
|
||
exports io.jsonwebtoken.impl; | ||
exports io.jsonwebtoken.impl.compression; | ||
exports io.jsonwebtoken.impl.lang; | ||
|
||
provides io.jsonwebtoken.CompressionCodec with | ||
io.jsonwebtoken.impl.compression.DeflateCompressionAlgorithm, | ||
io.jsonwebtoken.impl.compression.GzipCompressionAlgorithm; | ||
|
||
uses io.jsonwebtoken.CompressionCodec; | ||
uses io.jsonwebtoken.io.Deserializer; | ||
uses io.jsonwebtoken.io.Serializer; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<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/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
|
||
<parent> | ||
<groupId>io.jsonwebtoken</groupId> | ||
<artifactId>jjwt-root</artifactId> | ||
<version>0.12.7-SNAPSHOT</version> | ||
</parent> | ||
|
||
<artifactId>jjwt-integration-tests</artifactId> | ||
<name>JJWT :: Integration-Tests</name> | ||
<packaging>pom</packaging> | ||
|
||
<properties> | ||
<maven.deploy.skip>true</maven.deploy.skip> | ||
</properties> | ||
|
||
<modules> | ||
<module>unsigned-jackson</module> | ||
</modules> | ||
|
||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<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/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
|
||
<parent> | ||
<groupId>io.jsonwebtoken</groupId> | ||
<artifactId>jjwt-integration-tests</artifactId> | ||
<version>0.12.7-SNAPSHOT</version> | ||
</parent> | ||
|
||
<artifactId>jjwt-integration-tests-unsigned-jackson</artifactId> | ||
<name>JJWT :: Integration-Tests :: unsigned-jackson</name> | ||
<description>Create and parse an unsigned JWT using Jackson and JPMS.</description> | ||
<packaging>jar</packaging> | ||
|
||
<properties> | ||
<maven.compiler.release>9</maven.compiler.release> | ||
<maven.deploy.skip>true</maven.deploy.skip> | ||
</properties> | ||
|
||
<dependencies> | ||
<dependency> | ||
<groupId>io.jsonwebtoken</groupId> | ||
<artifactId>jjwt-api</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>io.jsonwebtoken</groupId> | ||
<artifactId>jjwt-impl</artifactId> | ||
<version>${project.version}</version> | ||
<scope>runtime</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>io.jsonwebtoken</groupId> | ||
<artifactId>jjwt-jackson</artifactId> | ||
<version>${project.version}</version> | ||
<scope>runtime</scope> | ||
</dependency> | ||
</dependencies> | ||
|
||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-javadoc-plugin</artifactId> | ||
<configuration> | ||
<skip>true</skip> | ||
<detectJavaApiLink>false</detectJavaApiLink> | ||
</configuration> | ||
</plugin> | ||
<!-- | ||
this plugin needs to be disabled as long as we are stuck with plugin version 3.3.0, as it cannot | ||
handle Java 9 module-info.class files. | ||
This will also use an empty MANIFEST.MF file, since there is no way in maven to unsetting | ||
an entry (like archive/manifestFile for the jar plugin). | ||
--> | ||
<plugin> | ||
<groupId>org.apache.felix</groupId> | ||
<artifactId>maven-bundle-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<id>bundle-manifest</id> | ||
<phase>none</phase> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
|
||
</project> |
33 changes: 33 additions & 0 deletions
33
...-tests/unsigned-jackson/src/main/java/io/jsonwebtoken/it/unsigned/UnsignedJwtCreator.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
package io.jsonwebtoken.it.unsigned; | ||
|
||
import io.jsonwebtoken.*; | ||
|
||
import java.time.Instant; | ||
import java.util.Date; | ||
import java.util.List; | ||
|
||
public class UnsignedJwtCreator { | ||
|
||
public UnsignedJwtCreator() { | ||
// explicit | ||
} | ||
|
||
public String create() { | ||
return Jwts.builder() | ||
.claim("roles", List.of("admin")) | ||
.subject("jjwt") | ||
.id("jjwt-0") | ||
.issuedAt(Date.from(Instant.now())) | ||
.notBefore(Date.from(Instant.now())) | ||
.compact(); | ||
} | ||
|
||
public Jwt<Header, Claims> read(String jwt) { | ||
final JwtParser jwtParser = Jwts.parser() | ||
.unsecured() | ||
.requireSubject("jjwt") | ||
.build(); | ||
|
||
return jwtParser.parseUnsecuredClaims(jwt); | ||
} | ||
} |
4 changes: 4 additions & 0 deletions
4
integration-tests/unsigned-jackson/src/main/java/module-info.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
module io.jsonwebtoken.jjwt.it.unsigned { | ||
requires io.jsonwebtoken.jjwt.api; | ||
|
||
} |
Empty file.
32 changes: 32 additions & 0 deletions
32
...ts/unsigned-jackson/src/test/java/io/jsonwebtoken/it/unsigned/UnsignedJwtCreatorTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
package io.jsonwebtoken.it.unsigned; | ||
import io.jsonwebtoken.Claims; | ||
import io.jsonwebtoken.Header; | ||
import io.jsonwebtoken.Jws; | ||
import io.jsonwebtoken.Jwt; | ||
import org.junit.Test; | ||
|
||
import java.util.List; | ||
|
||
import static org.junit.Assert.assertEquals; | ||
import static org.junit.Assert.assertTrue; | ||
|
||
|
||
public class UnsignedJwtCreatorTest { | ||
|
||
@Test | ||
public void testUnsignedJwt() { | ||
// given: | ||
final UnsignedJwtCreator jwtCreator = new UnsignedJwtCreator(); | ||
final String jwtString = jwtCreator.create(); | ||
|
||
// when | ||
final Jwt<Header, Claims> readBackJws = jwtCreator.read(jwtString); | ||
|
||
// then | ||
final Claims jwtBody = readBackJws.getPayload(); | ||
assertEquals("jjwt-0", jwtBody.getId()); | ||
assertEquals("jjwt", jwtBody.getSubject()); | ||
assertTrue(jwtBody.get("roles", List.class).contains("admin")); | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters