Jdk11 preparation, jakarta uptake, osgi and docs fixes (#126) (#129)
Signed-off-by: Lukas Jungmann <lukas.jungmann@oracle.com>
diff --git a/.travis.yml b/.travis.yml
index 3678af2..c09cafe 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -2,7 +2,7 @@
jdk:
- oraclejdk8
- - oraclejdk9
+ - openjdk11
cache:
directories:
@@ -12,4 +12,4 @@
install: true
script:
- - mvn -U -C -Dnon.final=true clean verify
+ - mvn -U -C -Pstaging -Dnon.final=true clean verify
diff --git a/api/pom.xml b/api/pom.xml
index 0187aa1..1801bb0 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2011, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -57,12 +57,12 @@
</group>
</groups>
<bottom>
-<![CDATA[Copyright © 2012-2017,
+<![CDATA[Copyright © 2012-2018,
<a href="http://www.oracle.com">Oracle</a>
and/or its affiliates. All Rights Reserved.
Use is subject to
<a href="{@docRoot}/doc-files/speclicense.html" target="_top">license terms</a>.
- <br>Comments to : jsonp-spec@javaee.groups.io
+ <br>Comments to : jsonp-dev@eclipse.org
]]>
</bottom>
<links>
diff --git a/api/src/main/java/javax/json/JsonArrayBuilder.java b/api/src/main/java/javax/json/JsonArrayBuilder.java
index 0673829..9c980b6 100644
--- a/api/src/main/java/javax/json/JsonArrayBuilder.java
+++ b/api/src/main/java/javax/json/JsonArrayBuilder.java
@@ -70,7 +70,7 @@
* </code>
* </pre>
*
- * <p>This class does <em>not</em> allow <tt>null</tt> to be used as a
+ * <p>This class does <em>not</em> allow <code>null</code> to be used as a
* value while building the JSON array
*
* @see JsonObjectBuilder
diff --git a/api/src/main/java/javax/json/JsonException.java b/api/src/main/java/javax/json/JsonException.java
index 329974d..75da5b5 100644
--- a/api/src/main/java/javax/json/JsonException.java
+++ b/api/src/main/java/javax/json/JsonException.java
@@ -43,7 +43,7 @@
* @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the
- * {@link #getCause()} method). (A <tt>null</tt> value is
+ * {@link #getCause()} method). (A <code>null</code> value is
* permitted, and indicates that the cause is nonexistent or
* unknown.)
*/
diff --git a/api/src/main/java/javax/json/JsonObjectBuilder.java b/api/src/main/java/javax/json/JsonObjectBuilder.java
index 119cd75..16a54cd 100644
--- a/api/src/main/java/javax/json/JsonObjectBuilder.java
+++ b/api/src/main/java/javax/json/JsonObjectBuilder.java
@@ -86,7 +86,7 @@
* </code>
* </pre>
*
- * <p>This class does <em>not</em> allow <tt>null</tt> to be used as a name or
+ * <p>This class does <em>not</em> allow <code>null</code> to be used as a name or
* value while building the JSON object
*
* @see JsonArrayBuilder
diff --git a/api/src/main/java/javax/json/stream/JsonGenerationException.java b/api/src/main/java/javax/json/stream/JsonGenerationException.java
index e19b4e5..b77d929 100644
--- a/api/src/main/java/javax/json/stream/JsonGenerationException.java
+++ b/api/src/main/java/javax/json/stream/JsonGenerationException.java
@@ -45,7 +45,7 @@
* @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the
- * {@link #getCause()} method). (A <tt>null</tt> value is
+ * {@link #getCause()} method). (A <code>null</code> value is
* permitted, and indicates that the cause is nonexistent or
* unknown.)
*/
diff --git a/api/src/main/java/javax/json/stream/JsonParsingException.java b/api/src/main/java/javax/json/stream/JsonParsingException.java
index 9677438..212900b 100644
--- a/api/src/main/java/javax/json/stream/JsonParsingException.java
+++ b/api/src/main/java/javax/json/stream/JsonParsingException.java
@@ -49,7 +49,7 @@
* @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the
- * {@link #getCause()} method). (A <tt>null</tt> value is
+ * {@link #getCause()} method). (A <code>null</code> value is
* permitted, and indicates that the cause is nonexistent or
* unknown.)
* @param location the location of the incorrect JSON
diff --git a/bundles/licensee/pom.xml b/bundles/licensee/pom.xml
deleted file mode 100755
index b10610a..0000000
--- a/bundles/licensee/pom.xml
+++ /dev/null
@@ -1,85 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright (c) 2013, 2017 Oracle and/or its affiliates. All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v. 2.0, which is available at
- http://www.eclipse.org/legal/epl-2.0.
-
- This Source Code may also be made available under the following Secondary
- Licenses when the conditions for such availability set forth in the
- Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
- version 2 with the GNU Classpath Exception, which is available at
- https://www.gnu.org/software/classpath/license.html.
-
- SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-
--->
-
-<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>org.glassfish</groupId>
- <artifactId>json-bundles</artifactId>
- <version>1.1.4-SNAPSHOT</version>
- </parent>
-
- <artifactId>json-licensee-bundle</artifactId>
- <name>Licensee source bundle</name>
- <packaging>pom</packaging>
-
- <dependencies>
- <dependency>
- <groupId>org.glassfish</groupId>
- <artifactId>javax.json</artifactId>
- </dependency>
- </dependencies>
- <build>
- <plugins>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>wagon-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>get-license</id>
- <phase>package</phase>
- <goals>
- <goal>download-single</goal>
- </goals>
- <configuration>
- <url>${license.url}</url>
- <fromFile>TLDA_SCSL_Licensees_License_Notice.txt</fromFile>
- <toDir>${assembly.directory}</toDir>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <finalName>javax.json-ri-${impl_version}-src-licensee</finalName>
- <descriptors>
- <descriptor>src/main/assembly/archive.xml</descriptor>
- </descriptors>
- <appendAssemblyId>false</appendAssemblyId>
- </configuration>
- <executions>
- <execution>
- <id>make-assembly</id>
- <phase>package</phase>
- <goals>
- <goal>single</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <properties>
- <assembly.directory>${project.build.directory}/assembly</assembly.directory>
- <license.url>http://hudson-sca.us.oracle.com/job/tlda-license/lastSuccessfulBuild/artifact</license.url>
- </properties>
-
-</project>
diff --git a/bundles/licensee/src/main/assembly/archive.xml b/bundles/licensee/src/main/assembly/archive.xml
deleted file mode 100755
index c4c26e7..0000000
--- a/bundles/licensee/src/main/assembly/archive.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-
- Copyright (c) 2013, 2017 Oracle and/or its affiliates. All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v. 2.0, which is available at
- http://www.eclipse.org/legal/epl-2.0.
-
- This Source Code may also be made available under the following Secondary
- Licenses when the conditions for such availability set forth in the
- Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
- version 2 with the GNU Classpath Exception, which is available at
- https://www.gnu.org/software/classpath/license.html.
-
- SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-
--->
-
-<assembly>
- <id>dist</id>
- <formats>
- <format>zip</format>
- </formats>
- <fileSets>
- <fileSet>
- <directory>../..</directory>
- <includes>
- <include>api/**</include>
- <include>impl/**</include>
- </includes>
- <excludes>
- <exclude>api/target/**</exclude>
- <exclude>impl/target/**</exclude>
- <exclude>**/*.iml</exclude>
- </excludes>
- <outputDirectory/>
- </fileSet>
- <fileSet>
- <directory>target/assembly</directory>
- <includes>
- <include>*.txt</include>
- </includes>
- <outputDirectory/>
- </fileSet>
- </fileSets>
-</assembly>
diff --git a/bundles/pom.xml b/bundles/pom.xml
index 8382e2f..7f03345 100644
--- a/bundles/pom.xml
+++ b/bundles/pom.xml
@@ -37,12 +37,4 @@
<modules>
<module>ri</module>
</modules>
- <profiles>
- <profile>
- <id>licensee</id>
- <modules>
- <module>licensee</module>
- </modules>
- </profile>
- </profiles>
</project>
diff --git a/bundles/ri/pom.xml b/bundles/ri/pom.xml
index 11b94bb..3c224e9 100755
--- a/bundles/ri/pom.xml
+++ b/bundles/ri/pom.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2012, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2012, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -26,7 +26,7 @@
</parent>
<artifactId>json-ri-bundle</artifactId>
- <name>RI bundle</name>
+ <name>RI Distribution zip bundle</name>
<packaging>pom</packaging>
<dependencies>
@@ -38,50 +38,80 @@
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.glassfish</groupId>
+ <artifactId>jsonp-jaxrs</artifactId>
+ </dependency>
</dependencies>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>copy</id>
- <phase>generate-sources</phase>
- <goals>
- <goal>copy-dependencies</goal>
- </goals>
- <configuration>
- <stripVersion>false</stripVersion>
- <outputDirectory>${assembly.directory}</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <finalName>javax.json-ri-${impl_version}</finalName>
- <descriptors>
- <descriptor>src/main/assembly/archive.xml</descriptor>
- </descriptors>
- <appendAssemblyId>false</appendAssemblyId>
- </configuration>
- <executions>
- <execution>
- <id>make-assembly</id> <!-- this is used for inheritance merges -->
- <phase>package</phase> <!-- append to the packaging phase. -->
- <goals>
- <goal>single</goal> <!-- goals == mojos -->
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- <properties>
- <assembly.directory>${project.build.directory}/assembly</assembly.directory>
- </properties>
-
+ <profiles>
+ <profile>
+ <!-- this profile is just for making build running on JDK 8 happy -->
+ <id>default-setup</id>
+ <activation>
+ <jdk>(,9)</jdk>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>make-assembly-jdk8</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ <configuration>
+ <finalName>jakarta.json-ri-jdk8-${impl_version}</finalName>
+ <descriptors>
+ <descriptor>src/main/assembly/archive-jdk8.xml</descriptor>
+ </descriptors>
+ <appendAssemblyId>false</appendAssemblyId>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>jdk9-setup</id>
+ <activation>
+ <jdk>[9,)</jdk>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>org.glassfish</groupId>
+ <artifactId>javax.json</artifactId>
+ <classifier>module</classifier>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>make-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ <configuration>
+ <finalName>jakarta.json-ri-${impl_version}</finalName>
+ <descriptors>
+ <descriptor>src/main/assembly/archive.xml</descriptor>
+ </descriptors>
+ <appendAssemblyId>false</appendAssemblyId>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
diff --git a/bundles/ri/src/main/assembly/archive-jdk8.xml b/bundles/ri/src/main/assembly/archive-jdk8.xml
new file mode 100644
index 0000000..ddfd3e6
--- /dev/null
+++ b/bundles/ri/src/main/assembly/archive-jdk8.xml
@@ -0,0 +1,61 @@
+<!--
+
+ Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved.
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License v. 2.0, which is available at
+ http://www.eclipse.org/legal/epl-2.0.
+
+ This Source Code may also be made available under the following Secondary
+ Licenses when the conditions for such availability set forth in the
+ Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
+ version 2 with the GNU Classpath Exception, which is available at
+ https://www.gnu.org/software/classpath/license.html.
+
+ SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
+
+-->
+
+<assembly>
+ <id>dist</id>
+ <formats>
+ <format>zip</format>
+ </formats>
+ <files>
+ <file>
+ <source>src/main/resources/README.txt</source>
+ <outputDirectory></outputDirectory>
+ <filtered>true</filtered>
+ </file>
+ <file>
+ <source>src/main/resources/LICENSE.md</source>
+ <outputDirectory></outputDirectory>
+ </file>
+ </files>
+ <dependencySets>
+ <dependencySet>
+ <useProjectArtifact>false</useProjectArtifact>
+ <outputDirectory>api</outputDirectory>
+ <includes>
+ <include>jakarta.json:jakarta.json-api:*</include>
+ </includes>
+ </dependencySet>
+ <dependencySet>
+ <useProjectArtifact>false</useProjectArtifact>
+ <outputDirectory>standalone</outputDirectory>
+ <includes>
+ <include>org.glassfish:javax.json</include>
+ </includes>
+ <excludes>
+ <exclude>org.glassfish:javax.json:jar:module:*</exclude>
+ </excludes>
+ </dependencySet>
+ <dependencySet>
+ <useProjectArtifact>false</useProjectArtifact>
+ <outputDirectory>jaxrs</outputDirectory>
+ <includes>
+ <include>org.glassfish:jsonp-jaxrs*</include>
+ </includes>
+ </dependencySet>
+ </dependencySets>
+</assembly>
diff --git a/bundles/ri/src/main/assembly/archive.xml b/bundles/ri/src/main/assembly/archive.xml
index 725daaf..914329a 100755
--- a/bundles/ri/src/main/assembly/archive.xml
+++ b/bundles/ri/src/main/assembly/archive.xml
@@ -1,6 +1,6 @@
<!--
- Copyright (c) 2013, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -21,17 +21,42 @@
<formats>
<format>zip</format>
</formats>
- <fileSets>
- <fileSet>
- <directory>src/main/resources</directory>
+ <files>
+ <file>
+ <source>src/main/resources/README.txt</source>
<outputDirectory></outputDirectory>
- </fileSet>
- <fileSet>
- <directory>target/assembly</directory>
+ <filtered>true</filtered>
+ </file>
+ <file>
+ <source>src/main/resources/LICENSE.md</source>
+ <outputDirectory></outputDirectory>
+ </file>
+ </files>
+ <dependencySets>
+ <dependencySet>
+ <useProjectArtifact>false</useProjectArtifact>
+ <outputDirectory>mods</outputDirectory>
<includes>
- <include>*.jar</include>
+ <include>jakarta.json:jakarta.json-api:*</include>
+ <include>org.glassfish:javax.json:jar:module:*</include>
</includes>
- <outputDirectory>lib</outputDirectory>
- </fileSet>
- </fileSets>
+ </dependencySet>
+ <dependencySet>
+ <useProjectArtifact>false</useProjectArtifact>
+ <outputDirectory>standalone</outputDirectory>
+ <includes>
+ <include>org.glassfish:javax.json</include>
+ </includes>
+ <excludes>
+ <exclude>org.glassfish:javax.json:jar:module:*</exclude>
+ </excludes>
+ </dependencySet>
+ <dependencySet>
+ <useProjectArtifact>false</useProjectArtifact>
+ <outputDirectory>jaxrs</outputDirectory>
+ <includes>
+ <include>org.glassfish:jsonp-jaxrs*</include>
+ </includes>
+ </dependencySet>
+ </dependencySets>
</assembly>
diff --git a/bundles/ri/src/main/resources/README.txt b/bundles/ri/src/main/resources/README.txt
index 7b7bda5..c5cfd96 100644
--- a/bundles/ri/src/main/resources/README.txt
+++ b/bundles/ri/src/main/resources/README.txt
@@ -1,22 +1,51 @@
-* javax.json-1.1.4.jar contains both "JSR 374 : Java API for JSON Processing 1.1" API and its default provider implementation. Keep it in classpath for both compiling and running your application.
+* standalone/javax.json-${project.version}.jar contains both "JSR 374 : Java API for JSON Processing 1.1" API
+ and its default provider implementation. Keep it in classpath for both compiling and running your application.
+ Automatic module name is: 'java.json'
+
+For running on JPMS, following modules are provided:
+* mods/jakarta.json-api-${project.version}.jar - 'java.json' module containing only API classes
+* mods/javax.json-${project.version}-module.jar - 'org.glassfish.java.json' module containing implementation
+
+Integration with JAX-RS: Java API for RESTful Web Services (JAX-RS) is provided through
+* jaxrs/jsonp-jaxrs-${project.version}.jar
+
+
+IMPORTANT NOTE: module names are not yet final and may change in the future releases
+
* If you are running with maven, you can use the following maven coordinates:
-for APIs:
- <dependency>
- <groupId>javax.json</groupId>
- <artifactId>javax.json-api</artifactId>
- <version>1.1.4</version>
- </dependency>
-
-for reference implementation:
-
+for standalone reference implementation which includes APIs and implementation classes:
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
- <version>1.1.4</version>
+ <version>${project.version}</version>
</dependency>
-* GlassFish 5.x already bundles latest JSON Processing implementation and JAX-RS integration module. If you deploy an application with GlassFish 5.x, your application (war/ear) doesn't have to bundle APIs nor the ri jar.
+for APIs:
+ <dependency>
+ <groupId>jakarta.json</groupId>
+ <artifactId>jakarta.json-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+for implementation only:
+ <dependency>
+ <groupId>org.glassfish</groupId>
+ <artifactId>javax.json</artifactId>
+ <classifier>module</classifier>
+ <version>${project.version}</version>
+ </dependency>
+
+for JAX-RS integration module:
+ <dependency>
+ <groupId>org.glassfish</groupId>
+ <artifactId>jsonp-jaxrs</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+
+* GlassFish 5.x already bundles latest JSON Processing implementation and JAX-RS integration module.
+If you deploy an application with GlassFish 5.x, your application (war/ear) doesn't have to bundle APIs nor the ri jar.
* Samples can be run from https://github.com/javaee/glassfish-samples
diff --git a/demos/NOTICE.md b/demos/NOTICE.md
new file mode 100644
index 0000000..b4cb5ba
--- /dev/null
+++ b/demos/NOTICE.md
@@ -0,0 +1,49 @@
+# Notices for Eclipse Project for JSON Processing
+
+This content is produced and maintained by the Eclipse Project for JSON
+Processing project.
+
+* Project home: https://projects.eclipse.org/projects/ee4j.jsonp
+
+## Trademarks
+
+Eclipse Project for JSON Processing is a trademark of the Eclipse Foundation.
+
+## Copyright
+
+All content is the property of the respective authors or their employers. For
+more information regarding authorship of content, please consult the listed
+source code repository logs.
+
+## Declared Project Licenses
+
+This program and the accompanying materials are made available under the terms
+of the Eclipse Public License v. 2.0 which is available at
+http://www.eclipse.org/legal/epl-2.0. This Source Code may also be made
+available under the following Secondary Licenses when the conditions for such
+availability set forth in the Eclipse Public License v. 2.0 are satisfied: GNU
+General Public License, version 2 with the GNU Classpath Exception which is
+available at https://www.gnu.org/software/classpath/license.html.
+
+SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
+
+## Source Code
+
+The project maintains the following source code repositories:
+
+* https://github.com/eclipse-ee4j/jsonp
+
+## Third-party Content
+
+JUnit (4.12)
+
+* License: Eclipse Public License
+
+## Cryptography
+
+Content may contain encryption software. The country in which you are currently
+may have restrictions on the import, possession, and use, and/or re-export to
+another country, of encryption software. BEFORE using any encryption software,
+please check the country's laws, regulations and policies concerning the import,
+possession, or use, and re-export of encryption software, to see if this is
+permitted.
diff --git a/demos/facebook/pom.xml b/demos/facebook/pom.xml
index 4bfa63d..75982b8 100644
--- a/demos/facebook/pom.xml
+++ b/demos/facebook/pom.xml
@@ -70,12 +70,18 @@
<profile>
<id>jdk9-setup</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
<dependencies>
<dependency>
+ <groupId>jakarta.json</groupId>
+ <artifactId>jakarta.json-api</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
+ <classifier>module</classifier>
<scope>compile</scope>
</dependency>
</dependencies>
diff --git a/demos/jaxrs/pom.xml b/demos/jaxrs/pom.xml
index 6316af0..70ea294 100644
--- a/demos/jaxrs/pom.xml
+++ b/demos/jaxrs/pom.xml
@@ -1,6 +1,6 @@
<!--
- Copyright (c) 2012, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2012, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Distribution License v. 1.0, which is available at
@@ -28,13 +28,13 @@
<dependencies>
<dependency>
- <groupId>javax.ws.rs</groupId>
- <artifactId>javax.ws.rs-api</artifactId>
+ <groupId>jakarta.ws.rs</groupId>
+ <artifactId>jakarta.ws.rs-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>javax</groupId>
- <artifactId>javaee-web-api</artifactId>
+ <groupId>jakarta.servlet</groupId>
+ <artifactId>jakarta.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/demos/jsonpointer/pom.xml b/demos/jsonpointer/pom.xml
index 779727a..9884cb0 100644
--- a/demos/jsonpointer/pom.xml
+++ b/demos/jsonpointer/pom.xml
@@ -70,12 +70,18 @@
<profile>
<id>jdk9-setup</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
<dependencies>
<dependency>
+ <groupId>jakarta.json</groupId>
+ <artifactId>jakarta.json-api</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
+ <classifier>module</classifier>
<scope>compile</scope>
</dependency>
</dependencies>
diff --git a/demos/pom.xml b/demos/pom.xml
index 3d68f20..663de8a 100644
--- a/demos/pom.xml
+++ b/demos/pom.xml
@@ -1,6 +1,6 @@
<!--
- Copyright (c) 2012, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2012, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Distribution License v. 1.0, which is available at
@@ -25,6 +25,10 @@
<groupId>org.glassfish.jsonp</groupId>
<artifactId>demos</artifactId>
+ <properties>
+ <legal.doc.source>${basedir}/..</legal.doc.source>
+ </properties>
+
<profiles>
<profile>
<id>all</id>
@@ -33,8 +37,8 @@
</activation>
<dependencies>
<dependency>
- <groupId>javax</groupId>
- <artifactId>javaee-web-api</artifactId>
+ <groupId>jakarta.servlet</groupId>
+ <artifactId>jakarta.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
@@ -54,7 +58,7 @@
<profile>
<id>jdk9-all</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
<modules>
<module>jaxrs</module>
diff --git a/demos/servlet/pom.xml b/demos/servlet/pom.xml
index 34c71c2..2e6338f 100644
--- a/demos/servlet/pom.xml
+++ b/demos/servlet/pom.xml
@@ -1,6 +1,6 @@
<!--
- Copyright (c) 2013, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Distribution License v. 1.0, which is available at
@@ -28,8 +28,8 @@
<dependencies>
<dependency>
- <groupId>javax</groupId>
- <artifactId>javaee-web-api</artifactId>
+ <groupId>jakarta.servlet</groupId>
+ <artifactId>jakarta.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/demos/twitter/pom.xml b/demos/twitter/pom.xml
index 3b568a4..d06b32f 100644
--- a/demos/twitter/pom.xml
+++ b/demos/twitter/pom.xml
@@ -58,12 +58,18 @@
<profile>
<id>jdk9-setup</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
<dependencies>
<dependency>
+ <groupId>jakarta.json</groupId>
+ <artifactId>jakarta.json-api</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
+ <classifier>module</classifier>
<scope>compile</scope>
</dependency>
</dependencies>
diff --git a/gf/customprovider/src/main/java/org/glassfish/json/customprovider/TestGenerator.java b/gf/customprovider/src/main/java/org/glassfish/json/customprovider/TestGenerator.java
index 117fa27..a0295fa 100644
--- a/gf/customprovider/src/main/java/org/glassfish/json/customprovider/TestGenerator.java
+++ b/gf/customprovider/src/main/java/org/glassfish/json/customprovider/TestGenerator.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012, 2017 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
@@ -113,11 +113,13 @@
return null;
}
+ @Override
public JsonGenerator write(String value) {
return null;
}
+ @Override
public JsonGenerator write(int value) {
return null;
}
@@ -142,10 +144,12 @@
return null;
}
+ @Override
public JsonGenerator write(boolean value) {
return null;
}
+ @Override
public JsonGenerator writeNull() {
return null;
}
@@ -160,6 +164,7 @@
return this;
}
+ @Override
public void close() {
try {
writer.close();
@@ -168,4 +173,9 @@
}
}
+ @Override
+ public JsonGenerator writeKey(String name) {
+ return null;
+ }
+
}
diff --git a/gf/pom.xml b/gf/pom.xml
index ad4b73b..8b1cef3 100644
--- a/gf/pom.xml
+++ b/gf/pom.xml
@@ -1,6 +1,6 @@
<!--
- Copyright (c) 2012, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2012, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -33,8 +33,8 @@
<dependencies>
<dependency>
- <groupId>javax</groupId>
- <artifactId>javaee-web-api</artifactId>
+ <groupId>jakarta.servlet</groupId>
+ <artifactId>jakarta.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
@@ -53,7 +53,7 @@
<finalName>customprovider</finalName>
</build>
<modules>
- <module>customprovider</module>
- <module>defaultprovider</module>
+ <module>customprovider</module>
+ <module>defaultprovider</module>
</modules>
</project>
diff --git a/impl/pom.xml b/impl/pom.xml
index e1fd5f6..07e7483 100644
--- a/impl/pom.xml
+++ b/impl/pom.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2011, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -37,7 +37,7 @@
<properties>
<packages.private>org.glassfish.json</packages.private>
- <packages.export>org.glassfish.json.api</packages.export>
+ <packages.export>javax.json.*,org.glassfish.json.api</packages.export>
</properties>
<build>
@@ -69,7 +69,88 @@
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>sources-as-resources</id>
+ <phase>package</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ </resource>
+ </resources>
+ <outputDirectory>${project.build.directory}/sources</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>unpack-client-sources</id>
+ <phase>package</phase>
+ <goals>
+ <goal>unpack</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>jakarta.json</groupId>
+ <artifactId>jakarta.json-api</artifactId>
+ <version>${spec_impl_version}</version>
+ <classifier>sources</classifier>
+ <overWrite>false</overWrite>
+ <outputDirectory>${project.build.directory}/sources</outputDirectory>
+ </artifactItem>
+ </artifactItems>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-source-jar</id>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <classifier>sources</classifier>
+ <classesDirectory>${project.build.directory}/sources</classesDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <includeDependencySources>true</includeDependencySources>
+ <bottom>
+<![CDATA[Copyright © 2012-2018,
+ <a href="http://www.oracle.com">Oracle</a>
+ and/or its affiliates. All Rights Reserved.
+ Use is subject to
+ <a href="{@docRoot}/doc-files/speclicense.html" target="_top">license terms</a>.
+ <br>Comments to : jsonp-dev@eclipse.org
+]]>
+ </bottom>
+ </configuration>
<executions>
<execution>
<id>attach-javadocs</id>
@@ -89,17 +170,27 @@
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
- <configuration>
- <instructions>
- <Bundle-Version>${spec.bundle.version}</Bundle-Version>
- <Bundle-SymbolicName>${spec.bundle.symbolic-name}</Bundle-SymbolicName>
- <Extension-Name>${spec.extension.name}</Extension-Name>
- <Implementation-Version>${spec.implementation.version}</Implementation-Version>
- <Specification-Version>${spec.specification.version}</Specification-Version>
- <Export-Package>${packages.export}</Export-Package>
- <Private-Package>${packages.private}</Private-Package>
- </instructions>
- </configuration>
+ <executions>
+ <execution>
+ <id>default-bundle</id>
+ <goals>
+ <goal>bundle</goal>
+ </goals>
+ <configuration>
+ <instructions>
+ <Bundle-Version>${spec.bundle.version}</Bundle-Version>
+ <Bundle-SymbolicName>${spec.bundle.symbolic-name}</Bundle-SymbolicName>
+ <Extension-Name>${spec.extension.name}</Extension-Name>
+ <Implementation-Version>${spec.implementation.version}</Implementation-Version>
+ <Specification-Version>${spec.specification.version}</Specification-Version>
+ <Export-Package>${packages.export}</Export-Package>
+ <Private-Package>${packages.private}</Private-Package>
+ <Automatic-Module-Name>java.json</Automatic-Module-Name>
+ <_donotcopy>.*services.*</_donotcopy>
+ </instructions>
+ </configuration>
+ </execution>
+ </executions>
</plugin>
</plugins>
</build>
@@ -107,6 +198,7 @@
<dependency>
<groupId>jakarta.json</groupId>
<artifactId>jakarta.json-api</artifactId>
+ <optional>true</optional>
</dependency>
</dependencies>
@@ -114,36 +206,37 @@
<profile>
<id>jdk9-setup</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
<build>
<plugins>
<plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <!--
- workaround for https://issues.apache.org/jira/browse/MJAVADOC-489
- -->
- <additionalJOptions>
- <additionalJOption>--add-modules</additionalJOption>
- <additionalJOption>java.json</additionalJOption>
- <additionalJOption>--module-path</additionalJOption>
- <additionalJOption>${project.build.directory}/../../api/target/javax.json-api-${project.version}.jar</additionalJOption>
- </additionalJOptions>
- </configuration>
- </plugin>
- <plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
- <configuration>
- <instructions>
- <Include-Resource>{maven-resources},target/classes/module-info.class</Include-Resource>
- </instructions>
- </configuration>
+ <executions>
+ <execution>
+ <id>main-artifact-module</id>
+ <goals>
+ <goal>bundle</goal>
+ </goals>
+ <configuration>
+ <classifier>module</classifier>
+ <instructions>
+ <Bundle-Version>${spec.bundle.version}</Bundle-Version>
+ <Bundle-SymbolicName>${spec.bundle.symbolic-name}.module</Bundle-SymbolicName>
+ <Extension-Name>${spec.extension.name}</Extension-Name>
+ <Implementation-Version>${spec.implementation.version}</Implementation-Version>
+ <Specification-Version>${spec.specification.version}</Specification-Version>
+ <Export-Package>org.glassfish.json.api</Export-Package>
+ <Private-Package>${packages.private}</Private-Package>
+ <Include-Resource>{maven-resources},target/classes/module-info.class</Include-Resource>
+ </instructions>
+ </configuration>
+ </execution>
+ </executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
-</project>
+</project>
\ No newline at end of file
diff --git a/jaxrs-1x/pom.xml b/jaxrs-1x/pom.xml
index 9b29fbd..7a1e615 100644
--- a/jaxrs-1x/pom.xml
+++ b/jaxrs-1x/pom.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2013, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -84,37 +84,15 @@
<profile>
<id>jdk9-setup</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <executions>
- <execution>
- <id>default-compile</id>
- <configuration>
- <compilerArgs>
- <arg>--add-modules</arg>
- <arg>java.xml.ws.annotation</arg>
- </compilerArgs>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <additionalJOptions>
- <additionalJOption>--add-modules</additionalJOption>
- <additionalJOption>java.xml.ws.annotation</additionalJOption>
- </additionalJOptions>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ <dependencies>
+ <dependency>
+ <groupId>jakarta.annotation</groupId>
+ <artifactId>jakarta.annotation-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
</profile>
</profiles>
diff --git a/jaxrs/pom.xml b/jaxrs/pom.xml
index dc2f9fc..cf46604 100644
--- a/jaxrs/pom.xml
+++ b/jaxrs/pom.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2013, 2017 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -70,8 +70,9 @@
<dependencies>
<dependency>
- <groupId>javax.ws.rs</groupId>
- <artifactId>javax.ws.rs-api</artifactId>
+ <groupId>jakarta.ws.rs</groupId>
+ <artifactId>jakarta.ws.rs-api</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>jakarta.json</groupId>
@@ -84,37 +85,15 @@
<profile>
<id>jdk9-setup</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <executions>
- <execution>
- <id>default-compile</id>
- <configuration>
- <compilerArgs>
- <arg>--add-modules</arg>
- <arg>java.xml.ws.annotation</arg>
- </compilerArgs>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <additionalJOptions>
- <additionalJOption>--add-modules</additionalJOption>
- <additionalJOption>java.xml.ws.annotation</additionalJOption>
- </additionalJOptions>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ <dependencies>
+ <dependency>
+ <groupId>jakarta.annotation</groupId>
+ <artifactId>jakarta.annotation-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
</profile>
</profiles>
</project>
diff --git a/pom.xml b/pom.xml
index 5a48bf0..5fb5546 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.eclipse.ee4j</groupId>
<artifactId>project</artifactId>
- <version>1.0</version>
+ <version>1.0.4</version>
</parent>
<prerequisites>
@@ -58,11 +58,6 @@
</license>
</licenses>
- <organization>
- <name>Oracle</name>
- <url>http://www.oracle.com</url>
- </organization>
-
<developers>
<developer>
<id>lukasj</id>
@@ -83,6 +78,7 @@
<impl_version>1.1.4</impl_version>
<new_impl_version>1.2</new_impl_version>
<non.final>false</non.final>
+ <legal.doc.source>${maven.multiModuleProjectDirectory}</legal.doc.source>
</properties>
<build>
@@ -103,6 +99,31 @@
</configuration>
</plugin>
<plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>add-legal-resource</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>add-resource</goal>
+ </goals>
+ <configuration>
+ <resources>
+ <resource>
+ <directory>${legal.doc.source}</directory>
+ <includes>
+ <include>NOTICE.md</include>
+ <include>LICENSE.md</include>
+ </includes>
+ <targetPath>META-INF</targetPath>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
@@ -142,6 +163,11 @@
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>3.5.0</version>
+ <configuration>
+ <instructions>
+ <_noee>true</_noee>
+ </instructions>
+ </configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
@@ -151,7 +177,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
- <version>3.0.0</version>
+ <version>3.0.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@@ -218,7 +244,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <version>2.20.1</version>
+ <version>2.22.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
@@ -249,15 +275,20 @@
<dependencyManagement>
<dependencies>
<dependency>
- <groupId>javax.ws.rs</groupId>
- <artifactId>javax.ws.rs-api</artifactId>
- <version>2.0.1</version>
+ <groupId>jakarta.ws.rs</groupId>
+ <artifactId>jakarta.ws.rs-api</artifactId>
+ <version>2.1.2</version>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>javax</groupId>
- <artifactId>javaee-web-api</artifactId>
- <version>7.0</version>
+ <groupId>jakarta.annotation</groupId>
+ <artifactId>jakarta.annotation-api</artifactId>
+ <version>1.3.3</version>
+ </dependency>
+ <dependency>
+ <groupId>jakarta.servlet</groupId>
+ <artifactId>jakarta.servlet-api</artifactId>
+ <version>4.0.2</version>
</dependency>
<dependency>
<groupId>jakarta.json</groupId>
@@ -266,12 +297,18 @@
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
- <artifactId>java.json</artifactId>
+ <artifactId>javax.json</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
+ <classifier>module</classifier>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.glassfish</groupId>
+ <artifactId>jsonp-jaxrs</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
@@ -301,7 +338,7 @@
<profile>
<id>jdk9-setup</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
<build>
<pluginManagement>
@@ -334,15 +371,6 @@
</execution>
</executions>
</plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <configuration>
- <instructions>
- <_failok>true</_failok>
- </instructions>
- </configuration>
- </plugin>
</plugins>
</pluginManagement>
<plugins>
@@ -370,7 +398,7 @@
<profile>
<id>jdk9-all</id>
<activation>
- <jdk>9</jdk>
+ <jdk>[9,)</jdk>
</activation>
<modules>
<module>api</module>
@@ -400,39 +428,6 @@
<module>bundles</module>
</modules>
</profile>
- <profile>
- <id>licensee</id>
- <modules>
- <module>api</module>
- <module>impl</module>
- <module>jaxrs</module>
- <module>jaxrs-1x</module>
- <module>tests</module>
- <module>gf</module>
- <module>demos</module>
- <module>bundles</module>
- </modules>
- </profile>
- <profile>
- <id>jvnet-release</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>3.0.0</version>
- <executions>
- <execution>
- <id>attach-javadocs</id>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
</profiles>
<reporting>