svn commit: r68228 - in /release/johnzon: johnzon-2.0.0/ johnzon-2.0.1/
Author: rmannibucau Date: Mon Apr 1 18:27:01 2024 New Revision: 68228 Log: johnzon 2.0.1 (release) Added: release/johnzon/johnzon-2.0.1/ release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz (with props) release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.asc release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.sha512 release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip (with props) release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip.asc release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip.sha512 release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-src.tar.gz (with props) release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-src.tar.gz.asc release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-src.tar.gz.sha512 release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-src.zip (with props) release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-src.zip.asc release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-src.zip.sha512 Removed: release/johnzon/johnzon-2.0.0/ Added: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz == Binary file - no diff available. Propchange: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz -- svn:mime-type = application/octet-stream Added: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.asc == --- release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.asc (added) +++ release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.asc Mon Apr 1 18:27:01 2024 @@ -0,0 +1,16 @@ +-BEGIN PGP SIGNATURE- + +iQIzBAABCgAdFiEEhfu+mNbDfNqKfY/5+f+DpI0znTcFAmX+hEMACgkQ+f+DpI0z +nTec5g//dFdvyuAMiU9uT+fPAp8x9jqSRoj067c2qPmOFx9gMhe8K2Zy7QpnSmQo +KRs1q52/juHsIhyQgn8ZNt5TzyCGvBlrwTRvgkx2EAHemoM/WSzw39Ay/qyOVaq4 +dxP0qrjCkzuDzZFvztVx7Y1zN2SfLXRP2xZ584DTl8X6TyZrTbl3rxuwMLkqtj43 +QS3HQ6kt8p5W/GQlWxgKqq/f7ArdVvu2FY2RHIZ+JWJAo/4nYKq3y4vuPZ35IfkE +9u3YX35od87ov20Zy88JzPav6Ms7UuRIi7TWoY8vh2x+cdfxCXnJhO56LQYjK5vK +BdKCCk9wdn3Z6HU0PDN3Fp1kP3CdhoYSCLW46nLvl7zkYyTJtMJfrQjL8hKKHiOb +39WnAd5J1CIq0fpjjCUczh6R6Ukcku315Rd6+pHS41GeAVOujyXkkAdueg6pS9zn +dYttm2WEGmz36GkPBK0pyJDwFW3WhsLuZ/3n/qc8VI/isfzINKx5+0tVOMybt6MY +dh9Kisl9+RgJTrTGi+QmCRigoA2445EVRc7q697Vg6YrQk472Y8K3C+F0spIzOkr +UR0ooU9fMC+oCEZC8pbVrBL177MpqaVnB048vlmHVeK6HEuWGZ+C12+rkHJtBy8P +taSjHLsKXTl4k7ceQnYqUgcqJD3jWjmgyIT7H4Xhb3x/GjL39i8= +=W5KD +-END PGP SIGNATURE- Added: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.sha512 == --- release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.sha512 (added) +++ release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.tar.gz.sha512 Mon Apr 1 18:27:01 2024 @@ -0,0 +1 @@ +1532e024dec6c32e0e06f463ba6889dffe2946637310e45790b28c391ab0c99ba0bf29e161becc6266ba3a076089ef291e908d8ab392101bb7531000d6c76a58 apache-johnzon-2.0.1-bin.tar.gz Added: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip == Binary file - no diff available. Propchange: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip -- svn:mime-type = application/octet-stream Added: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip.asc == --- release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip.asc (added) +++ release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip.asc Mon Apr 1 18:27:01 2024 @@ -0,0 +1,16 @@ +-BEGIN PGP SIGNATURE- + +iQIzBAABCgAdFiEEhfu+mNbDfNqKfY/5+f+DpI0znTcFAmX+hEMACgkQ+f+DpI0z +nTdYhg/+JPo+kmR+P9lqwJtxwJNir1ILDMtGxyJnI0jE1tA1dxHKmD0VPV9SdSci +6X72J/s+uCpb9oam4AIqtpTgKhmZsE9kHRdahR/2rwaPiyF9fyVGoxIkVOfCYzO2 +TVzJ524daD8sd9rHiRQrjgobGldqfmpGExociDClXQYlV1OJkpF/GJnPo14YzSQU +1Dm0U1MOD65eZ4icZdLFlBOBTD6hlZOFDQ/U3lKu91J95ZKpJ6gHzY1RfWmdBkas +0AOPUVgXjqI0gpfyZc4KjP5o7HxmIq29H4tqWNRIVaGc+lGcPd3mjl4mYa6vWR92 +63fbeWefnB0shbi3rjDVbwJY/sVj4jd2eXgKcLBCuA3uVY7FPMlEbMB10Nnqq0Nm +KkbwdHxqyajNNTM535HDVhIHHYcNSevYHUpPC437X43ToPTHhACqu30MFG16dy5Q +tGE4jyZ8j9nvf75K5sHYBMXW1MiEZ/3WA1v7QFp+sNf6d2c03Qu7s9CdQ2PTiDqv +Ek+PhPWTa4ZVH9vrAHYOSypHRSTj9U0SBnrCQs8ny058Xc3ObWCcZ3n5Ds7WZLQx +wsdDflahUI3ATJ8gaoJfgHVzVT9nTV51aw0sQ45I6W2UEkoUSgEMB0MZqzBLXqc4 +y1pu8CAT5D918B4l3D5WShENmeZbGSdKNU64H3TtJhvkvJva5XQ= +=YJjf +-END PGP SIGNATURE- Added: release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip.sha512 == --- release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1-bin.zip.sha512 (added) +++ release/johnzon/johnzon-2.0.1/apache-johnzon-2.0.1
svn commit: r68229 - /dev/johnzon/johnzon-2.0.1/
Author: rmannibucau Date: Mon Apr 1 18:27:13 2024 New Revision: 68229 Log: johnzon 2.0.1 (release passed) Removed: dev/johnzon/johnzon-2.0.1/
svn commit: r68080 - /release/johnzon/KEYS
Author: rmannibucau Date: Sat Mar 23 19:42:41 2024 New Revision: 68080 Log: adding jungm key to johnzon's KEYS Modified: release/johnzon/KEYS Modified: release/johnzon/KEYS == --- release/johnzon/KEYS (original) +++ release/johnzon/KEYS Sat Mar 23 19:42:41 2024 @@ -694,3 +694,61 @@ yn1jp3nhm6Kfq+BJ7IS+Wv1+62KFlCXdVT99iFFV 37GxCTv4l6k/XuMEuxehMENYeQO3EoNG86k= =sGcz -END PGP PUBLIC KEY BLOCK- + +ASF ID: jungm +LDAP PGP key: 85FBBE98D6C37CDA8A7D8FF9F9FF83A48D339D37 + +85FB BE98 D6C3 7CDA 8A7D 8FF9 F9FF 83A4 8D33 9D37 +-BEGIN PGP PUBLIC KEY BLOCK- + +mQINBGX9PKgBEACtG33YnimzNcN+0FRzW3jkZ6pj3o7KqF7y895OdOeQuPxuPelc +QGVeimi96K2fKQ43PpBAAhbGuQ/ZLiOp/c/8TPhCTWgcyb+isBvYLp0BjX8WeZ9f +Pna9tG1B3i+5ChWtEqRqcJREOqo+irBwDq8yvkd8C5GLNHSKovpdQWbMyuxAAOlX +heDTVUYxhtk+13YM77hVHIhgOudHt8029Q9DcS1FZ+ebZEh3T14g9Mp1DK4EfELo +RndbxXbwXMG2vsFNf95AvrP9LcMh1clicB/8moyGtfb9ItDbOCnVlWUb5KfFoz1g +T0hmRix1hn38jUy10yWChrpKfs+impF/rhNljcZFAtoCgY5vy5aN/xz5vUdnx1ld +9scXXdgm9shz1kAIz5JyCMv+Cfu4M6k5wHlohpyy7uhpVd/ys8ZL5Oipt6P+HvXI +Bh/ZtBWbB7UMbambE3J9N3y6+/2bGHJmbN1/+fXMAm8pw7O0IufFskKfD2rdsEP9 +eMr0iIBvcaXUR7VxcqSewLpWi/YdIFpp+LX2sJMxmNhpcKOtRPqs7AR3vedapvJP +jCx5yruFZnZNsO/PW5d7hKX+VsOdxAsJdEV7KKPN9MQqjDgRhwqxv9EbMV4PHuWn +1shV3szs66pPVMdgVg+bxozh6pNkhEmsYpl5GQIKXVaHuGpgoqs6gBmamQARAQAB +tDFNYXJrdXMgSnVuZyAoQ09ERSBTSUdOSU5HIEtFWSkgPGp1bmdtQGFwYWNoZS5v +cmc+iQJOBBMBCgA4FiEEhfu+mNbDfNqKfY/5+f+DpI0znTcFAmX9PKgCGwMFCwkI +BwIGFQoJCAsCBBYCAwECHgECF4AACgkQ+f+DpI0znTfBFRAAlE4EgE2npMzMH8AC +IAYar5p72Db/bzAanGPJAlMMkxhnZ04QNds1YEn7b6qrYz5R6oWaQ0bUMgxJthkb +wC1/J7tY6H5pHmdBMLfHIwRr1bkPEdP2NhdP14tCwAprC9GCy7mEBSbc8C9F4TzG +IZlXdjwDsNzv265son0AJhyyC97aO6Q2NfX+zQC6fo+nKhVD7F4bp7fuDe3S+jn5 +rMlmh0r+lhQmArgoYr8Lgixuks5xY5izPUxKBi1JawUIntmGLZptFErKGpHh2taU +dXWxK0q/ds6aDpFUq5qKFOHMAm3IDx50WLtB/Hug6Rf2ad6NX6F2kPPVljeOhswX +7uz2mK/ExSBs6maSTM62T9dEaIBFG1VPkNDIqUYpLzem1Vk3V6FT0YtGWaHU9Ekd +RQ53tBPwXEMk3/psJFTTLU52MUd+B4uH14NMHZ5fXRbqoZUdV69E6uYtbLyjWzw9 +utmzMWE9khy8uNZR35jMyOEm0zSq5IxJrP39n7PO6FYxiOtx8x+9iwKh9JYma7Ud +nla+O40sVM/RFPixtz/g7g6lxbx4Ar9K9pa0zVRttxiyW30ZXI1deBJdukxiA5Oq +vRp0diG+ppWPMVPJGJ0aJJhD9OaaV8KUCylkzY29Ktbav8+/vIiQ+y8FWLChTTYU +0wxQeGxmNfYdo+87k9EfjtMxdlq5Ag0EZf08qAEQALf4OGOCr7bUbu/vudIRDgs5 +GRum6zPD2T2qwocLNYq6EQ/boWy4vFRw/W8opuYYY2tDQxVUtDmRUmfEBjZg00Kn +kgQ9ilibMbfhEjqm2374EDn5u7lzCZSxgDrgY9HmT5OkRro5UFIKbT1vRI0muYKY +FzwCTvSEaTcBqWC4vzefDDBPc+T4GDK+ZMY6HxVnr2et1roLXLiHqqLa4exaikwV +FLYKW3YczcWS4leKa6p7SOYDd+Snj+O30whrj+tJEXTO08wfQoAoAzsllQ2RrmvQ +EpdPg0qhTszotZ4c9IguUfmSVhogwCpHjH+jpbTcYKjf/iF8XCg3vcr5mbqC7nxk +RpgZAAMAOi3E5Eysx41xZ3oj585aGrCn1X5w6wT9zRBXGbx03hDfuHRD42e82jph +o4p3PoalfSnBiRcr8VdJ8Ool+/+NlNEvf8TSHelONodYRkvjfdapmfIhy7UF8LpG +mZ7jUuF3s2DQn7u8pStnJle/iBnimsWwkv5HNApsgDQpiH1ucFY0d+bhsYYo6gEF +DAt8FIOAunbEjqRF08n7qHoxy3N6JZvTSVVdxbQBcpUmbR+MSRyH8ckKbQ/BSegg +8ES39rKgdtq9z8ITbeSlr1uFzf6SRKnvO7PQwpfYz8VAPkdWpu1aqCOfBLBBmzBV +mmZU4x7ee/ITw6myBS01ABEBAAGJAjYEGAEKACAWIQSF+76Y1sN82op9j/n5/4Ok +jTOdNwUCZf08qAIbDAAKCRD5/4OkjTOdNwzhD/94lNOB/D+WHVn44cg3TvyoEmBm +M+tJjXRMdAPuqKHS59OM0BKhA0375E8fqi8/7bK1vNSQC3r11NTPCnXwIjwbgje0 +DCl5F618E9A3q3mrkpmT8/BP0V8Nv076aAXJz/1hfi2myEonGljJxHToFuuW7dcb +gJ62RupR0F5v3ZykkOcgZPjKr9NPQbLDHJ3laV6/HYZW2aacemUDXr8DB+pz34ay +ayHNz9y6eIuMEtfsNLufX9KbnI/Oaqjk0sm4cg3+3tBuGMukoh9wPh31zHkSsrji +mJDhKPhsSZiRWSG/3/QyL3zZDopazijD7T2Z/Nk7fPG5Wk1nUmHtj+U2Yb8mEyZF +CF/YnkyK2i7UrE1PHIu9q7FiofwoCdfuIprzQ5QdcsxflTNaFXkXGkw77vIVFMyN +uAf52OiC4dYKxJ6+bFQNy9xZhG+zD2n5vZP7JLdNdvhcuGiiSXrcFacwhcx0xkaR +eEPCu71qiCOW2RiYWKwqXm9GYeBkC5qT05K6tzQF0Vg1BGfnIt0hurzMalq755KV +gKCJIQSIjGYHQ5ewcEpOH0LAihk9HH21xI9jTkmyQP5ZKiJb1Gvh5QM1SAKOsBiA +gfEo+VdksgycXpFuZs0I7QNQi6uWn9Tu5/0rgt54wV1p5mxljxNydAT5FY86vJqp ++h/HL4yfY1bkOI41wQ== +=16jo +-END PGP PUBLIC KEY BLOCK- +
(maven-artifact-plugin) 01/01: [MNG-8077] tolerate injected timestamp value
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch MNG-8077 in repository https://gitbox.apache.org/repos/asf/maven-artifact-plugin.git commit 7f4ba17e0cd16699500ca0da7802df2903d9cfab Author: Romain Manni-Bucau AuthorDate: Sat Mar 16 19:44:32 2024 +0100 [MNG-8077] tolerate injected timestamp value --- pgp-keys-map.list | 8 +++ pom.xml| 6 +++ .../artifact/buildinfo/AbstractBuildinfoMojo.java | 15 -- .../buildinfo/AbstractBuildinfoMojoTest.java | 63 ++ 4 files changed, 89 insertions(+), 3 deletions(-) diff --git a/pgp-keys-map.list b/pgp-keys-map.list index 5e0a25e..845c71a 100644 --- a/pgp-keys-map.list +++ b/pgp-keys-map.list @@ -21,9 +21,17 @@ javax.inject:javax.inject = noSig org.apache.maven.* = 0xB920D295BF0E61CB4CF0896C33CD6733AF5EC452 org.apache.maven:maven-archiver = 0x29BEA2A645F2D6CED7FB12E02B172E3E156466E8 org.apache.maven.shared:maven-shared-utils = 0x84789D24DF77A32433CE1F079EB80E92EB2135B1 +org.apiguardian:apiguardian-api:1.1.2 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 org.codehaus.plexus:plexus-archiver = 0x29BEA2A645F2D6CED7FB12E02B172E3E156466E8 org.codehaus.plexus:plexus-interpolation = 0x47063E8BA7A6450E4A52E7AE466CAED6E0747D50 org.codehaus.plexus:plexus-io = 0xF254B35617DC255D9344BCFA873A8E86B4372146 org.codehaus.plexus:plexus-utils = 0xEA23DB1360D9029481E7F2EFECDFEA3CB4493B94 org.codehaus.plexus:plexus-xml = 0xFA77DCFEF2EE6EB2DEBEDD2C012579464D01C06A +org.junit.jupiter:junit-jupiter:5.10.2 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 +org.junit.jupiter:junit-jupiter-api:5.10.2 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 +org.junit.jupiter:junit-jupiter-engine:5.10.2 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 +org.junit.jupiter:junit-jupiter-params:5.10.2 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 +org.junit.platform:junit-platform-commons:1.10.2 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 +org.junit.platform:junit-platform-engine:1.10.2 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 +org.opentest4j:opentest4j:1.3.0 = 0xFF6E2C001948C5F2F38B0CC385911F425EC61B51 org.slf4j:slf4j-api = 0x475F3B8E59E6E63AA78067482C7B12F2A511E325 diff --git a/pom.xml b/pom.xml index 1637163..6c69006 100644 --- a/pom.xml +++ b/pom.xml @@ -135,6 +135,12 @@ maven-plugin-annotations provided + + org.junit.jupiter + junit-jupiter + 5.10.2 + test + diff --git a/src/main/java/org/apache/maven/plugins/artifact/buildinfo/AbstractBuildinfoMojo.java b/src/main/java/org/apache/maven/plugins/artifact/buildinfo/AbstractBuildinfoMojo.java index 2c0b632..69fa250 100644 --- a/src/main/java/org/apache/maven/plugins/artifact/buildinfo/AbstractBuildinfoMojo.java +++ b/src/main/java/org/apache/maven/plugins/artifact/buildinfo/AbstractBuildinfoMojo.java @@ -166,9 +166,18 @@ public abstract class AbstractBuildinfoMojo extends AbstractMojo { MavenArchiver archiver = new MavenArchiver(); Date timestamp = archiver.parseOutputTimestamp(outputTimestamp); if (timestamp == null) { -log.error("Reproducible Build not activated by project.build.outputTimestamp property: " -+ "see https://maven.apache.org/guides/mini/guide-reproducible-builds.html;); -return true; +// try to resolve it at runtime - injected from a property +String injected = project.getProperties().getProperty("project.build.outputTimestamp"); +if (injected != null) { +log.info("project.build.outputTimestamp is injected by the build"); +} else { +log.error("Reproducible Build not activated by project.build.outputTimestamp property: " ++ "see https://maven.apache.org/guides/mini/guide-reproducible-builds.html, " ++ "ex: " ++ new SimpleDateFormat("-MM-dd'T'HH:mm:ssXXX").format(new Date()) ++ ""); +return true; +} } if (log.isDebugEnabled()) { diff --git a/src/test/java/org/apache/maven/plugins/artifact/buildinfo/AbstractBuildinfoMojoTest.java b/src/test/java/org/apache/maven/plugins/artifact/buildinfo/AbstractBuildinfoMojoTest.java new file mode 100644 index 000..349e12e --- /dev/null +++ b/src/test/java/org/apache/maven/plugins/artifact/buildinfo/AbstractBuildinfoMojoTest.java @@ -0,0 +1,63 @@ +/* + * 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"
(maven-artifact-plugin) branch MNG-8077 created (now 7f4ba17)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MNG-8077 in repository https://gitbox.apache.org/repos/asf/maven-artifact-plugin.git at 7f4ba17 [MNG-8077] tolerate injected timestamp value This branch includes the following new commits: new 7f4ba17 [MNG-8077] tolerate injected timestamp value The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
(maven-scripting-plugin) branch MSCRIPTING-7 created (now 0066393)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MSCRIPTING-7 in repository https://gitbox.apache.org/repos/asf/maven-scripting-plugin.git at 0066393 move binding doc to the right doc file No new revisions were added by this update.
(johnzon) branch master updated: [JOHNZON-401] fix serialization of nested polymorphic objects
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 904c0810 [JOHNZON-401] fix serialization of nested polymorphic objects 904c0810 is described below commit 904c08102d82e4fb5ca443e13d3a9251787f4899 Author: Markus Jung AuthorDate: Fri Jan 26 08:15:49 2024 +0100 [JOHNZON-401] fix serialization of nested polymorphic objects --- .../johnzon/jsonb/polymorphism/JsonbPolymorphismTest.java | 15 +++ .../org/apache/johnzon/mapper/MappingGeneratorImpl.java | 12 ++-- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismTest.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismTest.java index 87d83899..52351430 100644 --- a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismTest.java +++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismTest.java @@ -41,6 +41,17 @@ public class JsonbPolymorphismTest { @Rule public JsonbRule jsonb = new JsonbRule(); +@Test +public void testNestedSerialization() { +Labrador labrador = new Labrador(); +labrador.dogAge = 3; +labrador.labradorName = "john"; +AnimalWrapper wrapper = new AnimalWrapper(); +wrapper.animal = labrador; + + assertEquals("{\"animal\":{\"@animal\":\"dog\",\"@dog\":\"labrador\",\"dogAge\":3,\"labradorName\":\"john\"}}", jsonb.toJson(wrapper)); +} + @Test public void testSerialization() { Labrador labrador = new Labrador(); @@ -100,6 +111,10 @@ public class JsonbPolymorphismTest { } +public static class AnimalWrapper { +public Animal animal; +} + @JsonbTypeInfo(key = "@animal", value = @JsonbSubtype(alias = "dog", type = Dog.class)) public interface Animal { } diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingGeneratorImpl.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingGeneratorImpl.java index cf44c5c7..c06f38df 100644 --- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingGeneratorImpl.java +++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingGeneratorImpl.java @@ -192,12 +192,6 @@ public class MappingGeneratorImpl implements MappingGenerator { generator.writeStartObject(); } -if (classMapping.serializedPolymorphicProperties != null) { -for (Map.Entry polymorphicProperty : classMapping.serializedPolymorphicProperties) { -generator.write(polymorphicProperty.getKey(), polymorphicProperty.getValue()); -} -} - final boolean writeEnd = doWriteObjectBody(object, ignoredProperties, jsonPointer, generator); if (writeEnd && writeBody) { generator.writeEnd(); @@ -376,6 +370,12 @@ public class MappingGeneratorImpl implements MappingGenerator { return true; } +if (classMapping.serializedPolymorphicProperties != null) { +for (Map.Entry polymorphicProperty : classMapping.serializedPolymorphicProperties) { +generator.write(polymorphicProperty.getKey(), polymorphicProperty.getValue()); +} +} + for (final Map.Entry getterEntry : classMapping.getters.entrySet()) { final Mappings.Getter getter = getterEntry.getValue(); if (ignored != null && ignored.contains(getterEntry.getKey())) {
(maven-shade-plugin) 02/03: [MSHADE-467] Fix concurrency problem with dependency-reduced POM
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git commit ae907a870b8f585952a62eeaaa5a13fe6d7768ef Author: Alexander Kriegisch AuthorDate: Sat Jan 20 12:09:42 2024 +0700 [MSHADE-467] Fix concurrency problem with dependency-reduced POM It looks as if running MShade concurrently somehow bleeds MavenSession state into other mojo executions. Therefore, in the lower critical section of ShadeMojo::rewriteDependencyReducedPomIfWeHaveReduction, we use a final static ReentrantLock instance to block concurrent entry to the section. --- .../apache/maven/plugins/shade/mojo/ShadeMojo.java | 24 +++--- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java b/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java index 396bed1..3a7eaaa 100644 --- a/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java +++ b/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java @@ -35,6 +35,8 @@ import java.util.LinkedHashSet; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; import org.apache.maven.RepositoryUtils; import org.apache.maven.artifact.Artifact; @@ -1048,6 +1050,8 @@ public class ShadeMojo extends AbstractMojo { rewriteDependencyReducedPomIfWeHaveReduction(dependencies, modified, transitiveDeps, model); } +private static final Lock LOCK = new ReentrantLock(); + private void rewriteDependencyReducedPomIfWeHaveReduction( List dependencies, boolean modified, List transitiveDeps, Model model) throws IOException, ProjectBuildingException, DependencyGraphBuilderException { @@ -1112,15 +1116,21 @@ public class ShadeMojo extends AbstractMojo { w.close(); } -ProjectBuildingRequest projectBuildingRequest = -new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); - projectBuildingRequest.setLocalRepository(session.getLocalRepository()); - projectBuildingRequest.setRemoteRepositories(project.getRemoteArtifactRepositories()); +// Lock critical section to fix MSHADE-467 +try { +LOCK.lock(); +ProjectBuildingRequest projectBuildingRequest = +new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); + projectBuildingRequest.setLocalRepository(session.getLocalRepository()); + projectBuildingRequest.setRemoteRepositories(project.getRemoteArtifactRepositories()); -ProjectBuildingResult result = projectBuilder.build(f, projectBuildingRequest); +ProjectBuildingResult result = projectBuilder.build(f, projectBuildingRequest); -getLog().debug("updateExcludesInDeps()"); -modified = updateExcludesInDeps(result.getProject(), dependencies, transitiveDeps); +getLog().debug("updateExcludesInDeps()"); +modified = updateExcludesInDeps(result.getProject(), dependencies, transitiveDeps); +} finally { +LOCK.unlock(); +} } project.setFile(dependencyReducedPomLocation);
(maven-shade-plugin) 01/03: [MSHADE-467] Reproduce concurrency problem in an IT
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git commit 87a4f14ef7e5ff898ec9dcb7ef47c71e31c448fd Author: Alexander Kriegisch AuthorDate: Sat Jan 20 13:03:50 2024 +0700 [MSHADE-467] Reproduce concurrency problem in an IT --- .../invoker.properties | 18 ++ .../pom.xml| 184 + .../shadeMT1/pom.xml | 38 + .../shadeMT2/pom.xml | 38 + .../shadeMT3/pom.xml | 38 + .../shadeMT4/pom.xml | 38 + .../verify.groovy | 25 +++ 7 files changed, 379 insertions(+) diff --git a/src/it/projects/MSHADE-467_parallel-dependency-reduced-pom/invoker.properties b/src/it/projects/MSHADE-467_parallel-dependency-reduced-pom/invoker.properties new file mode 100644 index 000..af49e5c --- /dev/null +++ b/src/it/projects/MSHADE-467_parallel-dependency-reduced-pom/invoker.properties @@ -0,0 +1,18 @@ +# 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. + +invoker.goals = package -T 4 diff --git a/src/it/projects/MSHADE-467_parallel-dependency-reduced-pom/pom.xml b/src/it/projects/MSHADE-467_parallel-dependency-reduced-pom/pom.xml new file mode 100644 index 000..99be908 --- /dev/null +++ b/src/it/projects/MSHADE-467_parallel-dependency-reduced-pom/pom.xml @@ -0,0 +1,184 @@ + + +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 https://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + +org.apache.maven.its.shade.parallel +MSHADE-467 +1.0.0-SNAPSHOT + +pom + + +shadeMT1 +shadeMT2 +shadeMT3 +shadeMT4 + + + + +org.apache.commons +commons-vfs2 +2.9.0 + + +commons-logging +commons-logging + + +org.apache.hadoop +* + + + + +com.vividsolutions +jts +1.13 + + +xercesImpl +xerces + + + + +com.itextpdf +itextpdf +5.5.13.3 + + +* +* + + + + +org.apache.xmlgraphics +batik-swing +1.17 + + +xml-apis +xml-apis + + +org.apache.xmlgraphics +batik-ext + + + + +org.apache.xmlgraphics +batik-dom +1.17 + + +xerces +xercesImpl + + + + +org.apache.xmlgraphics +batik-transcoder +1.17 + + +* +org.apache.avalon + + +org.apache.xmlgraphics +fop + + + + +org.springframework.boot +spring-boot-starter-test +2.7.18 +test + + +org.junit.jupiter +junit-jupiter + + + + +io.grpc +grpc-core +1.58.0 + + +io.micrometer +micrometer-registry-stackdriver +1.9.16 + + +javax.annotation +
(maven-shade-plugin) 03/03: [MSHADE-467] Improved concurrency problem fix
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git commit e7077c628c2cbb059c829ffb124690f211ba36b0 Author: Alexander Kriegisch AuthorDate: Sun Jan 21 03:44:15 2024 +0700 [MSHADE-467] Improved concurrency problem fix Code review: Synchronising on session.getProjectBuildingRequest() is less invasive than a global reentrant lock and therefore preferable to the reviewer. Co-authored-by: Romain Manni-Bucau --- .../java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java| 10 +- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java b/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java index 3a7eaaa..a8475d9 100644 --- a/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java +++ b/src/main/java/org/apache/maven/plugins/shade/mojo/ShadeMojo.java @@ -35,8 +35,6 @@ import java.util.LinkedHashSet; import java.util.List; import java.util.Map; import java.util.Set; -import java.util.concurrent.locks.Lock; -import java.util.concurrent.locks.ReentrantLock; import org.apache.maven.RepositoryUtils; import org.apache.maven.artifact.Artifact; @@ -1050,8 +1048,6 @@ public class ShadeMojo extends AbstractMojo { rewriteDependencyReducedPomIfWeHaveReduction(dependencies, modified, transitiveDeps, model); } -private static final Lock LOCK = new ReentrantLock(); - private void rewriteDependencyReducedPomIfWeHaveReduction( List dependencies, boolean modified, List transitiveDeps, Model model) throws IOException, ProjectBuildingException, DependencyGraphBuilderException { @@ -1116,9 +1112,7 @@ public class ShadeMojo extends AbstractMojo { w.close(); } -// Lock critical section to fix MSHADE-467 -try { -LOCK.lock(); +synchronized (session.getProjectBuildingRequest()) { // Lock critical section to fix MSHADE-467 ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); projectBuildingRequest.setLocalRepository(session.getLocalRepository()); @@ -1128,8 +1122,6 @@ public class ShadeMojo extends AbstractMojo { getLog().debug("updateExcludesInDeps()"); modified = updateExcludesInDeps(result.getProject(), dependencies, transitiveDeps); -} finally { -LOCK.unlock(); } }
(maven-shade-plugin) branch master updated (4753d8e -> e7077c6)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git from 4753d8e Bump org.codehaus.plexus:plexus-utils from 3.5.1 to 4.0.0 new 87a4f14 [MSHADE-467] Reproduce concurrency problem in an IT new ae907a8 [MSHADE-467] Fix concurrency problem with dependency-reduced POM new e7077c6 [MSHADE-467] Improved concurrency problem fix The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../invoker.properties | 2 +- .../pom.xml| 184 + .../shadeMT1}/pom.xml | 31 ++-- .../shadeMT2}/pom.xml | 31 ++-- .../shadeMT3}/pom.xml | 31 ++-- .../shadeMT4}/pom.xml | 31 ++-- .../verify.groovy | 9 +- .../apache/maven/plugins/shade/mojo/ShadeMojo.java | 16 +- 8 files changed, 261 insertions(+), 74 deletions(-) copy src/it/projects/{MSHADE-382_skip_execution => MSHADE-467_parallel-dependency-reduced-pom}/invoker.properties (96%) create mode 100644 src/it/projects/MSHADE-467_parallel-dependency-reduced-pom/pom.xml copy src/it/projects/{MSHADE-413-parallel => MSHADE-467_parallel-dependency-reduced-pom/shadeMT1}/pom.xml (64%) copy src/it/projects/{MSHADE-413-parallel => MSHADE-467_parallel-dependency-reduced-pom/shadeMT2}/pom.xml (64%) copy src/it/projects/{MSHADE-413-parallel => MSHADE-467_parallel-dependency-reduced-pom/shadeMT3}/pom.xml (64%) copy src/it/projects/{MSHADE-413-parallel => MSHADE-467_parallel-dependency-reduced-pom/shadeMT4}/pom.xml (64%) copy src/it/projects/{MSHADE-382_skip_execution => MSHADE-467_parallel-dependency-reduced-pom}/verify.groovy (78%)
(openwebbeans) branch main updated: [upgrade] move to surefire 3.2.2
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/openwebbeans.git The following commit(s) were added to refs/heads/main by this push: new 76f696ae2 [upgrade] move to surefire 3.2.2 76f696ae2 is described below commit 76f696ae29cda9f03f73756fcdf28bfb020835e7 Author: Romain Manni-Bucau AuthorDate: Wed Nov 8 18:04:27 2023 +0100 [upgrade] move to surefire 3.2.2 --- pom.xml| 2 +- webbeans-junit5/pom.xml| 3 +++ .../apache/openwebbeans/junit5/{reusable => }/CdiWithOnStartTest.java | 3 +-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 64ec4d830..6da990850 100644 --- a/pom.xml +++ b/pom.xml @@ -389,7 +389,7 @@ org.apache.maven.plugins maven-surefire-plugin -3.0.0-M4 +3.2.2 **/*Test.java diff --git a/webbeans-junit5/pom.xml b/webbeans-junit5/pom.xml index 4fe91963e..c78e6a0db 100644 --- a/webbeans-junit5/pom.xml +++ b/webbeans-junit5/pom.xml @@ -92,6 +92,9 @@ + +true + diff --git a/webbeans-junit5/src/test/java/org/apache/openwebbeans/junit5/reusable/CdiWithOnStartTest.java b/webbeans-junit5/src/test/java/org/apache/openwebbeans/junit5/CdiWithOnStartTest.java similarity index 94% rename from webbeans-junit5/src/test/java/org/apache/openwebbeans/junit5/reusable/CdiWithOnStartTest.java rename to webbeans-junit5/src/test/java/org/apache/openwebbeans/junit5/CdiWithOnStartTest.java index fabeeb35f..2b824bd95 100644 --- a/webbeans-junit5/src/test/java/org/apache/openwebbeans/junit5/reusable/CdiWithOnStartTest.java +++ b/webbeans-junit5/src/test/java/org/apache/openwebbeans/junit5/CdiWithOnStartTest.java @@ -16,9 +16,8 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.openwebbeans.junit5.reusable; +package org.apache.openwebbeans.junit5; -import org.apache.openwebbeans.junit5.Cdi; import org.junit.jupiter.api.Test; import java.io.Closeable;
[johnzon] branch master updated: Fixing persistence and transaction api scopes (they are not intended to come with johnzon)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new f6a8bc89 Fixing persistence and transaction api scopes (they are not intended to come with johnzon) f6a8bc89 is described below commit f6a8bc8901ca64bcef277bb23db39a1da48866b7 Author: Romain Manni-Bucau AuthorDate: Wed Oct 4 16:19:44 2023 +0400 Fixing persistence and transaction api scopes (they are not intended to come with johnzon) --- johnzon-mapper/pom.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index d808dcad..a97e6868 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -39,11 +39,13 @@ jakarta.persistence jakarta.persistence-api 3.1.0 + test jakarta.transaction jakarta.transaction-api 2.0.1 + test org.apache.openjpa
[johnzon] branch master updated: [JOHNZON-400] ensure we always set the locale when changing the case
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new d9d6d2f8 [JOHNZON-400] ensure we always set the locale when changing the case d9d6d2f8 is described below commit d9d6d2f82285c236d3cdb2eea7adb86365fa78d4 Author: Romain Manni-Bucau AuthorDate: Mon Sep 4 06:37:43 2023 +0400 [JOHNZON-400] ensure we always set the locale when changing the case --- johnzon-core/src/main/java/org/apache/johnzon/core/JsonPatchImpl.java | 4 +++- .../src/main/java/org/apache/johnzon/mapper/ExceptionMessages.java| 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonPatchImpl.java b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonPatchImpl.java index afd34f9c..76a9edb9 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonPatchImpl.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonPatchImpl.java @@ -34,6 +34,8 @@ import jakarta.json.JsonStructure; import jakarta.json.JsonValue; import jakarta.json.spi.JsonProvider; +import static java.util.Locale.ROOT; + class JsonPatchImpl implements JsonPatch { private final JsonProvider provider; @@ -238,7 +240,7 @@ class JsonPatchImpl implements JsonPatch { synchronized (this) { if (json == null) { JsonObjectBuilder builder = provider.createObjectBuilder() -.add("op", operation.name().toLowerCase()) +.add("op", operation.name().toLowerCase(ROOT)) .add("path", path); if (fromPointer != null) { diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/ExceptionMessages.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/ExceptionMessages.java index 33690c0c..7745af37 100644 --- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/ExceptionMessages.java +++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/ExceptionMessages.java @@ -28,6 +28,7 @@ import static jakarta.json.JsonValue.ValueType.NUMBER; import static jakarta.json.JsonValue.ValueType.OBJECT; import static jakarta.json.JsonValue.ValueType.STRING; import static jakarta.json.JsonValue.ValueType.TRUE; +import static java.util.Locale.ROOT; public final class ExceptionMessages { @@ -79,7 +80,7 @@ public final class ExceptionMessages { public static String description(final JsonValue.ValueType type) { if (type == OBJECT || type == ARRAY || type == STRING) { -return "json " + type.toString().toLowerCase() + " value"; +return "json " + type.toString().toLowerCase(ROOT) + " value"; } if (type == NUMBER) { return "json numeric value";
[openwebbeans-meecrowave] branch master updated (3e0a6a5 -> 3b4f5cb)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans-meecrowave.git from 3e0a6a5 update our site configuration and fresh content new 535e49c Tomcat 9.0.76 new 5bdcbef Johnzon 1.2.20 new facb6bb log4j2 2.20.0 new 4f9afac DBCP 2.9.0 new 7ca8a43 xbean 4.23 new a0755a3 commons-cli 1.5.0 new 00a3498 JUnit 5.9.3 new 132fe25 H2 2.2.220 new 701ad6a Fix a few typos in docs new c387e1c Adds GH actions new 03bfaa3 OpenJPA 3.2.2 new 53c7bef DeltaSpike 1.9.6 new 3b4f5cb Merge pull request #20 from rzo1/dep-updates The 713 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .github/workflows/maven.yml| 44 ++ .../src/main/jbake/content/community.adoc | 2 +- .../content/meecrowave-core/configuration.adoc | 8 ++-- .../main/jbake/content/meecrowave-jpa/index.adoc | 4 +- .../main/jbake/content/meecrowave-maven/index.adoc | 4 +- meecrowave-junit/pom.xml | 2 +- pom.xml| 18 - 7 files changed, 63 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/maven.yml
[johnzon] branch master updated: [doc] a word on BigDecimal/BigInteger
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 5eb2c7ff [doc] a word on BigDecimal/BigInteger 5eb2c7ff is described below commit 5eb2c7ff643700a8ba77dbe9c29d6500f54031ef Author: Romain Manni-Bucau AuthorDate: Tue Jul 25 12:19:55 2023 +0200 [doc] a word on BigDecimal/BigInteger --- src/site/markdown/security.md | 10 ++ 1 file changed, 10 insertions(+) diff --git a/src/site/markdown/security.md b/src/site/markdown/security.md index f072a33b..0b554bb0 100644 --- a/src/site/markdown/security.md +++ b/src/site/markdown/security.md @@ -37,3 +37,13 @@ If you need to report a bug that isn't an undisclosed security vulnerability, pl should be addressed to the [mailing list](http://johnzon.apache.org/mail-lists.html). The private security mailing address is: security (at) apache (dot) org + +## BigInteger and Java + +JSON-P/JSON-B exposes API using `BigDecimal` and `BigInteger`. +The bridge between these two types is `BigDecimal#toBigInteger` which has a slow implementation in Java without careness or scale max validation. + +Johnzon does some sanity checks on this value but at some point we recommend you to stay away from these API and handle big numbers using `String` type and parse them yourself since you are the only ones knowing the correct functional and relevant validation of the scale before a instantiation. + +If you know you don't need such big types, prefer using plain primitives (or wrappers). +
[openjpa] branch master updated: moving to Class.forName to force clinit call instead of creating a dead instance
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openjpa.git The following commit(s) were added to refs/heads/master by this push: new a494966e8 moving to Class.forName to force clinit call instead of creating a dead instance a494966e8 is described below commit a494966e8b04e1a31f9895947f7b4ac68d4f888b Author: Romain Manni-Bucau AuthorDate: Mon Jul 17 19:48:36 2023 +0200 moving to Class.forName to force clinit call instead of creating a dead instance --- .../org/apache/openjpa/enhance/ManagedClassSubclasser.java | 10 +- .../java/org/apache/openjpa/util/ClassLoaderProxyService.java | 8 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ManagedClassSubclasser.java b/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ManagedClassSubclasser.java index cde3f0412..08ea4d3ec 100644 --- a/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ManagedClassSubclasser.java +++ b/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ManagedClassSubclasser.java @@ -291,15 +291,7 @@ public class ManagedClassSubclasser { // this is the new subclass ClassLoader loader = GeneratedClasses.getMostDerivedLoader(cls, PersistenceCapable.class); String className = cnt.getClassNode().name.replace("/", "."); -final Class subclass = GeneratedClasses.loadAsmClass(className, byteArray, cls, loader); -try { -// Ugly workaround to trigger clinit static initializer block :( -subclass.newInstance(); -} -catch (Exception e) { -throw new RuntimeException(e); -} -subs.add(subclass); +subs.add(GeneratedClasses.loadAsmClass(className, byteArray, cls, loader)); } } } diff --git a/openjpa-kernel/src/main/java/org/apache/openjpa/util/ClassLoaderProxyService.java b/openjpa-kernel/src/main/java/org/apache/openjpa/util/ClassLoaderProxyService.java index 4ba872cae..61627cd29 100644 --- a/openjpa-kernel/src/main/java/org/apache/openjpa/util/ClassLoaderProxyService.java +++ b/openjpa-kernel/src/main/java/org/apache/openjpa/util/ClassLoaderProxyService.java @@ -111,6 +111,14 @@ public class ClassLoaderProxyService classes.put(key, existing); } } +try +{ +Class.forName(existing.getName(), true, existing.getClassLoader()); +} +catch (ClassNotFoundException e) +{ +// no-op, not critical, will be done at first instantiation but shouldn't happen anyway +} } return existing; }
[maven] branch MNG-7831 deleted (was 981f64d3c)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MNG-7831 in repository https://gitbox.apache.org/repos/asf/maven.git was 981f64d3c [MNG-7831] Ensure XmlUtils does not fail when xmlpullparser detects an entityref and parser.name is null This change permanently discards the following revisions: discard 981f64d3c [MNG-7831] Ensure XmlUtils does not fail when xmlpullparser detects an entityref and parser.name is null
[maven] 01/01: [MNG-7831] Ensure XmlUtils does not fail when xmlpullparser detects an entityref and parser.name is null
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch MNG-7831 in repository https://gitbox.apache.org/repos/asf/maven.git commit 981f64d3cd1a7a61da9f6a223b79f1d9038092ee Author: Romain Manni-Bucau AuthorDate: Sun Jul 2 19:29:15 2023 +0200 [MNG-7831] Ensure XmlUtils does not fail when xmlpullparser detects an entityref and parser.name is null --- .../ConsumerPomArtifactTransformerTest.java| 26 ++ .../test/resources/projects/transform/before2.pom | 11 + .../maven/model/transform/pull/XmlUtils.java | 20 - 3 files changed, 56 insertions(+), 1 deletion(-) diff --git a/maven-core/src/test/java/org/apache/maven/internal/transformation/ConsumerPomArtifactTransformerTest.java b/maven-core/src/test/java/org/apache/maven/internal/transformation/ConsumerPomArtifactTransformerTest.java index 27c4d15e6..68ab7097c 100644 --- a/maven-core/src/test/java/org/apache/maven/internal/transformation/ConsumerPomArtifactTransformerTest.java +++ b/maven-core/src/test/java/org/apache/maven/internal/transformation/ConsumerPomArtifactTransformerTest.java @@ -18,8 +18,11 @@ */ package org.apache.maven.internal.transformation; +import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; @@ -33,7 +36,9 @@ import org.junit.jupiter.api.Test; import org.mockito.Mockito; import org.xmlunit.assertj.XmlAssert; +import static java.util.stream.Collectors.joining; import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.when; @@ -52,6 +57,27 @@ class ConsumerPomArtifactTransformerTest { } } +@Test +void transform2() throws Exception { +Path beforePomFile = + Paths.get("src/test/resources/projects/transform/before2.pom").toAbsolutePath(); +try (BufferedReader result = new BufferedReader(new InputStreamReader( +ConsumerPomArtifactTransformer.transform(beforePomFile, new NoTransformerContext()), +StandardCharsets.UTF_8))) { +assertEquals( +"\n" ++ "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\;>\n" ++ " 4.0.0\n" ++ "\n" ++ " com.apache.maven\n" ++ " transform-me\n" ++ " 1.0.0-SNAPSHOT\n" ++ " 1 2\n" ++ "", +result.lines().collect(joining("\n"))); +} +} + @Test void injectTransformedArtifactsWithoutPomShouldNotInjectAnyArtifacts() throws IOException { MavenProject emptyProject = new MavenProject(); diff --git a/maven-core/src/test/resources/projects/transform/before2.pom b/maven-core/src/test/resources/projects/transform/before2.pom new file mode 100644 index 0..e32b2b6ae --- /dev/null +++ b/maven-core/src/test/resources/projects/transform/before2.pom @@ -0,0 +1,11 @@ + +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;> + 4.0.0 + + com.apache.maven + transform-me + 1.0.0-SNAPSHOT + 1 2 + diff --git a/maven-model-transform/src/main/java/org/apache/maven/model/transform/pull/XmlUtils.java b/maven-model-transform/src/main/java/org/apache/maven/model/transform/pull/XmlUtils.java index a2f71aa55..80d2c62b7 100644 --- a/maven-model-transform/src/main/java/org/apache/maven/model/transform/pull/XmlUtils.java +++ b/maven-model-transform/src/main/java/org/apache/maven/model/transform/pull/XmlUtils.java @@ -78,7 +78,25 @@ public class XmlUtils { serializer.cdsect(parser.getText()); break; case XmlPullParser.ENTITY_REF: -serializer.entityRef(parser.getName()); +final String name = parser.getName(); +if (name != null) { +serializer.entityRef(name); +} else { // mxparser is pseudo-bugy so handle this case (escaped xml char) in a tag without cdata +final String text = parser.getText(); +switch (text) { +
[maven] branch MNG-7831 created (now 981f64d3c)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MNG-7831 in repository https://gitbox.apache.org/repos/asf/maven.git at 981f64d3c [MNG-7831] Ensure XmlUtils does not fail when xmlpullparser detects an entityref and parser.name is null This branch includes the following new commits: new 981f64d3c [MNG-7831] Ensure XmlUtils does not fail when xmlpullparser detects an entityref and parser.name is null The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[maven] 01/01: [MNG-7827] Ensure maven 4 Log API is the primary and documented API for mojos
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch MNG-7827 in repository https://gitbox.apache.org/repos/asf/maven.git commit 74be0f4143e22e098cd03013e731498418ac8542 Author: Romain Manni-Bucau AuthorDate: Mon Jun 26 19:35:00 2023 +0200 [MNG-7827] Ensure maven 4 Log API is the primary and documented API for mojos --- maven-plugin-api/pom.xml | 14 +++ .../java/org/apache/maven/plugin/AbstractMojo.java | 48 +++- .../maven/plugin/logging/SystemStreamLog.java | 56 -- .../org/apache/maven/internal/impl/DefaultLog.java | 118 .../org/apache/maven/plugin/AbstractMojoTest.java | 123 + 5 files changed, 348 insertions(+), 11 deletions(-) diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml index 274a62ef6..db3000e36 100644 --- a/maven-plugin-api/pom.xml +++ b/maven-plugin-api/pom.xml @@ -52,6 +52,20 @@ under the License. org.codehaus.plexus plexus-classworlds + + + ${project.groupId} + maven-api-core + ${project.version} + provided + + + + org.slf4j + slf4j-jdk14 + ${slf4jVersion} + test + diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java index 5e76c40d9..dba25a40f 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java @@ -18,11 +18,18 @@ */ package org.apache.maven.plugin; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.lang.reflect.Proxy; import java.util.Map; +import java.util.function.Supplier; import org.apache.maven.plugin.logging.Log; import org.apache.maven.plugin.logging.SystemStreamLog; +import static java.util.Optional.ofNullable; + /** * Abstract class to provide most of the infrastructure required to implement a Mojo except for * the execute method. @@ -147,7 +154,7 @@ public abstract class AbstractMojo implements Mojo, ContextEnabled { private Map pluginContext; /** - * @deprecated Use SLF4J directly + * @deprecated Use an injected {@link Log} instead in the mojo or component. */ @Deprecated @Override @@ -167,13 +174,48 @@ public abstract class AbstractMojo implements Mojo, ContextEnabled { * method directly whenever you need the logger, it is fast enough and needs no caching. * * @see org.apache.maven.plugin.Mojo#getLog() - * @deprecated Use SLF4J directly + * @deprecated Use an injected {@link org.apache.maven.api.plugin.Log} instead in the mojo or component. */ @Deprecated @Override public Log getLog() { if (log == null) { -log = new SystemStreamLog(); +// unlikely for a standard plugin, idea is to try to fallback on maven-core impl else use stdout/stderr +try { +// ensure we have slf4j +final ClassLoader loader = ofNullable(getClass().getClassLoader()) +.orElseGet(() -> Thread.currentThread().getContextClassLoader()); +final Class lf = loader.loadClass("org.slf4j.LoggerFactory"); +final Method getLogger = lf.getDeclaredMethod("getLogger", Class.class); +if (!getLogger.isAccessible()) { +getLogger.setAccessible(true); +} + +// ensure we have maven-core - else we don't care to align on it +final Constructor delegatingLogConstructor = loader.loadClass( +"org.apache.maven.internal.impl.DefaultLog") +.getDeclaredConstructor(getLogger.getReturnType()); +if (!delegatingLogConstructor.isAccessible()) { +delegatingLogConstructor.setAccessible(true); +} + +// load the slf4j logger and its log impl + create a facade to comply the deprecated API +final Object logger = getLogger.invoke(null, getClass()); +final Object delegate = delegatingLogConstructor.newInstance(logger); +log = (Log) Proxy.newProxyInstance( // Supplier is mainly an "unwrap" impl for advanced cases +loader, new Class[] {Log.class, Supplier.class}, (proxy, method, args) -> { +if (method.getDeclaringClass() == Supplier.class) { +return delegate; +} +try { +return method.invoke(delegate, args); +} catch (InvocationTargetException
[maven] branch MNG-7827 created (now 74be0f414)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MNG-7827 in repository https://gitbox.apache.org/repos/asf/maven.git at 74be0f414 [MNG-7827] Ensure maven 4 Log API is the primary and documented API for mojos This branch includes the following new commits: new 74be0f414 [MNG-7827] Ensure maven 4 Log API is the primary and documented API for mojos The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[johnzon] branch master updated: switch packaging to pom (#102)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 20d6e572 switch packaging to pom (#102) 20d6e572 is described below commit 20d6e57242588d7d7a1724d188e262b42fbc0699 Author: Hervé Boutemy AuthorDate: Mon Apr 24 20:01:21 2023 +0200 switch packaging to pom (#102) instead of manually disabling plugins from jar packaging --- johnzon-distribution/pom.xml | 22 +- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/johnzon-distribution/pom.xml b/johnzon-distribution/pom.xml index e77d1ee5..f91dc176 100644 --- a/johnzon-distribution/pom.xml +++ b/johnzon-distribution/pom.xml @@ -26,6 +26,7 @@ 4.0.0 apache-johnzon + pom Johnzon :: Distribution @@ -195,27 +196,6 @@ - -org.apache.maven.plugins -maven-source-plugin - - true - - - -org.apache.maven.plugins -maven-jar-plugin - - false - - - -org.apache.maven.plugins -maven-javadoc-plugin - - true - - org.apache.maven.plugins maven-site-plugin
[johnzon] branch master updated: minor fixes in reflection usage for JSON-B polymorphism (no functional change except complete meta support)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new fcdd26e2 minor fixes in reflection usage for JSON-B polymorphism (no functional change except complete meta support) fcdd26e2 is described below commit fcdd26e2dcbdba51ef08d83f5a2c6606b12686f3 Author: Romain Manni-Bucau AuthorDate: Thu Apr 20 14:13:38 2023 +0200 minor fixes in reflection usage for JSON-B polymorphism (no functional change except complete meta support) --- johnzon-distribution/pom.xml | 10 ++-- .../polymorphism/JsonbPolymorphismHandler.java | 53 -- .../polymorphism/JsonbPolymorphismTypeInfo.java| 4 +- pom.xml| 4 +- 4 files changed, 36 insertions(+), 35 deletions(-) diff --git a/johnzon-distribution/pom.xml b/johnzon-distribution/pom.xml index 69576e2b..e77d1ee5 100644 --- a/johnzon-distribution/pom.xml +++ b/johnzon-distribution/pom.xml @@ -161,7 +161,9 @@ +org.apache.maven.plugins maven-assembly-plugin +3.4.2 source-assembly @@ -203,14 +205,8 @@ org.apache.maven.plugins maven-jar-plugin - - -default-jar - - - - true + false diff --git a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismHandler.java b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismHandler.java index 5710ed0b..36f1aed5 100644 --- a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismHandler.java +++ b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/polymorphism/JsonbPolymorphismHandler.java @@ -26,6 +26,8 @@ import jakarta.json.JsonValue; import jakarta.json.bind.JsonbException; import jakarta.json.bind.annotation.JsonbSubtype; import jakarta.json.bind.annotation.JsonbTypeInfo; + +import java.lang.reflect.AnnotatedElement; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; @@ -36,7 +38,7 @@ public class JsonbPolymorphismHandler { private final Map, JsonbPolymorphismTypeInfo> typeInfoCache = new HashMap<>(); public boolean hasPolymorphism(Class clazz) { -return clazz.isAnnotationPresent(JsonbTypeInfo.class) || getParentWithTypeInfo(clazz) != null; +return Meta.getAnnotation((AnnotatedElement) clazz, JsonbTypeInfo.class) != null || getParentWithTypeInfo(clazz) != null; } public Map.Entry[] getPolymorphismPropertiesToSerialize(Class clazz, Collection otherProperties) { @@ -47,8 +49,8 @@ public class JsonbPolymorphismHandler { // Only try to resolve types when there's a JsonbTypeInfo Annotation present on the current type, Meta.getAnnotation tries to // walk up parents by itself until it finds the given Annotation and could incorrectly cause JsonbExceptions to be thrown // (multiple JsonbTypeInfos with same key found even if thats not actually the case) -if (current.isAnnotationPresent(JsonbTypeInfo.class)) { -JsonbTypeInfo typeInfo = Meta.getAnnotation(current, JsonbTypeInfo.class); +JsonbTypeInfo typeInfo = Meta.getAnnotation((AnnotatedElement) current, JsonbTypeInfo.class); +if (typeInfo != null) { if (otherProperties.contains(typeInfo.key())) { throw new JsonbException("JsonbTypeInfo key '" + typeInfo.key() + "' collides with other properties in json"); } @@ -76,34 +78,38 @@ public class JsonbPolymorphismHandler { } public Class getTypeToDeserialize(JsonObject jsonObject, Class clazz) { -if (!typeInfoCache.containsKey(clazz)) { +JsonbPolymorphismTypeInfo typeInfo = typeInfoCache.get(clazz); +if (typeInfo == null) { return clazz; } -JsonbPolymorphismTypeInfo typeInfo = typeInfoCache.get(clazz); -if (!jsonObject.containsKey(typeInfo.getTypeKey())) { +JsonValue typeValue = jsonObject.get(typeInfo.getTypeKey()); +if (typeValue == null) { return clazz; } -JsonValue typeValue = jsonObject.get(typeInfo.getTypeKey()); if (typeValue.getValueType() != JsonValue.ValueType.STRING) { throw new JsonbException("Property '" + typeInfo.getTypeKey() + "' isn't a String, resolving JsonbSubtype is impossible"); } String typeValueString = ((JsonString) typeValue).getString(); -if (!typeInfo.getAliases().containsKey(typeValueString)) { +final Class result = typeInfo.getAliases().get(typeValueString);
[johnzon] branch master updated: Implement JSON-B 3 Polymorphism (#100)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 9080e292 Implement JSON-B 3 Polymorphism (#100) 9080e292 is described below commit 9080e292749b5157cae0ad6b0e7c1de3a7ace275 Author: Markus Jung <54570207+ju...@users.noreply.github.com> AuthorDate: Thu Apr 20 13:54:34 2023 +0200 Implement JSON-B 3 Polymorphism (#100) * Implement JSON-B 3 polymorphism (WIP) * Implement more JSON-B 3 polymorphism validations * JSON-B 3 polymorphism tests * Allow JsonbSubtype for type=annotated type * MapperBuilder#setPolymorphismHandler javadoc * use JsonbRule in tests * Allow custom Mappings to be used * Implement JsonbMappings for polymorphism * create Mappings via Function instead of using reflection * use Meta.getAnnotation instead of Class.getAnnotation * restore old ClassMapping constructor for better backwards compatibility * update docs on jsonb-extras polymorphism * restore MapperConfig constructor * cache JsonbTypeInfos to avoid reflections --- .../org/apache/johnzon/jsonb/JohnzonBuilder.java | 9 +- .../org/apache/johnzon/jsonb/JsonbMappings.java| 74 .../polymorphism/JsonbPolymorphismHandler.java | 203 + .../polymorphism/JsonbPolymorphismTypeInfo.java| 46 + .../jsonb/polymorphism/JsonbPolymorphismTest.java | 92 ++ .../JsonbPolymorphismValidationTest.java | 143 +++ .../java/org/apache/johnzon/mapper/Mapper.java | 2 +- .../org/apache/johnzon/mapper/MapperBuilder.java | 10 +- .../org/apache/johnzon/mapper/MapperConfig.java| 13 +- .../johnzon/mapper/MappingGeneratorImpl.java | 29 +-- .../apache/johnzon/mapper/MappingParserImpl.java | 14 +- .../java/org/apache/johnzon/mapper/Mappings.java | 24 ++- .../org/apache/johnzon/mapper/access/Meta.java | 2 +- .../test/java/org/superbiz/ExtendMappingTest.java | 4 +- pom.xml| 4 +- src/site/markdown/index.md | 4 +- 16 files changed, 638 insertions(+), 35 deletions(-) diff --git a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java index 4e32ed97..278e814a 100644 --- a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java +++ b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java @@ -31,6 +31,7 @@ import org.apache.johnzon.mapper.Converter; import org.apache.johnzon.mapper.Mapper; import org.apache.johnzon.mapper.MapperBuilder; import org.apache.johnzon.mapper.MapperConfig; +import org.apache.johnzon.mapper.Mappings; import org.apache.johnzon.mapper.ObjectConverter; import org.apache.johnzon.mapper.SerializeValueFilter; import org.apache.johnzon.mapper.access.AccessMode; @@ -58,6 +59,7 @@ import java.lang.reflect.Type; import java.nio.charset.StandardCharsets; import java.util.*; import java.util.concurrent.atomic.AtomicReference; +import java.util.function.Function; import java.util.function.Supplier; import java.util.stream.Stream; @@ -336,6 +338,11 @@ public class JohnzonBuilder implements JsonbBuilder { if (Closeable.class.isInstance(accessMode)) { builder.addCloseable(Closeable.class.cast(accessMode)); } + + builder.setMappingsFactory(config.getProperty("johnzon.mappings-factory") +.map(it -> (Function) it) +.orElse(JsonbMappings::new)); + return doCreateJsonb(skipCdi, ijson, builder.build()); } @@ -469,4 +476,4 @@ public class JohnzonBuilder implements JsonbBuilder { protected abstract T doCreate(); } -} +} \ No newline at end of file diff --git a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbMappings.java b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbMappings.java new file mode 100644 index ..b399eb85 --- /dev/null +++ b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbMappings.java @@ -0,0 +1,74 @@ +/* + * 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, eit
[bval] branch master updated: workaround for arquillian/owb/suite bug
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/bval.git The following commit(s) were added to refs/heads/master by this push: new 19c8cf9 workaround for arquillian/owb/suite bug 19c8cf9 is described below commit 19c8cf9e79cf0bd06f1b8b8e92a940d9e31d5cc4 Author: Romain Manni-Bucau AuthorDate: Thu Feb 9 10:58:45 2023 +0100 workaround for arquillian/owb/suite bug --- .../apache/bval/tck/TCKSuiteOWBEnhancements.java | 63 ++ ...org.jboss.arquillian.core.spi.LoadableExtension | 1 + 2 files changed, 64 insertions(+) diff --git a/bval-tck/src/test/java/org/apache/bval/tck/TCKSuiteOWBEnhancements.java b/bval-tck/src/test/java/org/apache/bval/tck/TCKSuiteOWBEnhancements.java new file mode 100644 index 000..15c827e --- /dev/null +++ b/bval-tck/src/test/java/org/apache/bval/tck/TCKSuiteOWBEnhancements.java @@ -0,0 +1,63 @@ +/* + * 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. + */ +package org.apache.bval.tck; + +import org.apache.webbeans.arquillian.standalone.OwbArquillianSingletonService; +import org.apache.webbeans.arquillian.standalone.OwbStandaloneConfiguration; +import org.apache.webbeans.arquillian.standalone.OwbStandaloneContainer; +import org.apache.webbeans.config.WebBeansFinder; +import org.jboss.arquillian.container.spi.client.container.DeployableContainer; +import org.jboss.arquillian.core.spi.LoadableExtension; + +import java.lang.invoke.MethodHandles; +import java.util.Collection; +import java.util.List; + +public class TCKSuiteOWBEnhancements implements LoadableExtension { +@Override +public void register(final ExtensionBuilder extensionBuilder) { +extensionBuilder.override(DeployableContainer.class, OwbStandaloneContainer.class, ExtendedOwbStandaloneContainer.class); +} + +// testng suites handling looks buggy since it does not shutdown previous container when running another suite so this does not work with owb +public static class ExtendedOwbStandaloneContainer extends OwbStandaloneContainer { +@Override +public void setup(final OwbStandaloneConfiguration owbStandaloneConfiguration) { +final var singletonService = WebBeansFinder.getSingletonService(); +if (singletonService instanceof OwbArquillianSingletonService) { +setParent("singletonService", (OwbArquillianSingletonService) singletonService, OwbArquillianSingletonService.class); +setParent("useOnlyArchiveResources", true, boolean.class); +setParent("useOnlyArchiveResourcesExcludes", List.of("META-INF/services/jakarta.validation.spi.ValidationProvider"), Collection.class); +return; +} +super.setup(owbStandaloneConfiguration); +} + +private void setParent(final String field, final T value, final Class type) { +try { +MethodHandles.privateLookupIn(OwbStandaloneContainer.class, MethodHandles.lookup()) +.findSetter(OwbStandaloneContainer.class, field, type) +.bindTo(this) +.invoke(value); +} catch (final Throwable e) { +throw new IllegalStateException(e); +} +} +} +} diff --git a/bval-tck/src/test/resources/META-INF/services/org.jboss.arquillian.core.spi.LoadableExtension b/bval-tck/src/test/resources/META-INF/services/org.jboss.arquillian.core.spi.LoadableExtension new file mode 100644 index 000..535064d --- /dev/null +++ b/bval-tck/src/test/resources/META-INF/services/org.jboss.arquillian.core.spi.LoadableExtension @@ -0,0 +1 @@ +org.apache.bval.tck.TCKSuiteOWBEnhancements
[bval] branch master updated: Make jsr module tests passing
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/bval.git The following commit(s) were added to refs/heads/master by this push: new 195f4e2 Make jsr module tests passing 195f4e2 is described below commit 195f4e2748607920cf5cf022b3602e37ae9a0990 Author: Romain Manni-Bucau AuthorDate: Wed Feb 8 16:53:51 2023 +0100 Make jsr module tests passing --- bval-jsr/pom.xml | 4 ++-- .../main/java/org/apache/bval/jsr/xml/ValidationMappingParser.java| 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bval-jsr/pom.xml b/bval-jsr/pom.xml index 6eaf0f2..fd320fa 100644 --- a/bval-jsr/pom.xml +++ b/bval-jsr/pom.xml @@ -243,7 +243,7 @@ org.codehaus.mojo jaxb2-maven-plugin -2.5.0 +3.1.0 xjc @@ -280,7 +280,7 @@ com.sun.xml.bind jaxb-impl -3.0.0 +4.0.1 diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/xml/ValidationMappingParser.java b/bval-jsr/src/main/java/org/apache/bval/jsr/xml/ValidationMappingParser.java index dbeaaac..b9763f4 100644 --- a/bval-jsr/src/main/java/org/apache/bval/jsr/xml/ValidationMappingParser.java +++ b/bval-jsr/src/main/java/org/apache/bval/jsr/xml/ValidationMappingParser.java @@ -57,10 +57,10 @@ public class ValidationMappingParser implements MetadataSource { "META-INF/validation-mapping-1.0.xsd") .add(XmlBuilder.Version.v11.getId(), "http://jboss.org/xml/ns/javax/validation/mapping;, "META-INF/validation-mapping-1.1.xsd") +.add(XmlBuilder.Version.v20.getId(), "http://xmlns.jcp.org/xml/ns/validation/mapping;, +"META-INF/validation-mapping-2.0.xsd") .add(XmlBuilder.Version.v30.getId(), "https://jakarta.ee/xml/ns/validation/mapping;, "META-INF/validation-mapping-3.0.xsd") -.add(XmlBuilder.Version.v20.getId(), "http://xmlns.jcp.org/xml/ns/validation/mapping;, -"META-INF/validation-mapping-2.0.xsd") .build(); private ApacheValidatorFactory validatorFactory;
[johnzon] branch master updated: JOHNZON-305 : Java Modules (#99)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 157cedb5 JOHNZON-305 : Java Modules (#99) 157cedb5 is described below commit 157cedb52c8b4245e60af6dec88a144fc6595814 Author: Samael AuthorDate: Fri Jan 27 09:05:43 2023 + JOHNZON-305 : Java Modules (#99) * JOHNZON-305: Add Automatic-Module-Name to manifest * JOHNZON-305: core and jaxrs now use module-info * configure Automatic-Module-Name in other modules * set Automatic-Module-Name using bundle plugin --- johnzon-core/pom.xml | 1 + johnzon-jaxrs/pom.xml | 9 + johnzon-jsonb/pom.xml | 1 + johnzon-jsonlogic/pom.xml | 9 + johnzon-jsonschema/pom.xml | 9 + johnzon-mapper/pom.xml | 1 + johnzon-websocket/pom.xml | 27 ++- pom.xml| 1 + 8 files changed, 49 insertions(+), 9 deletions(-) diff --git a/johnzon-core/pom.xml b/johnzon-core/pom.xml index e17434d7..00cf51c4 100644 --- a/johnzon-core/pom.xml +++ b/johnzon-core/pom.xml @@ -40,6 +40,7 @@ maven-bundle-plugin + org.apache.johnzon.core osgi.extender;filter:="(osgi.extender=osgi.serviceloader.registrar)" osgi.serviceloader;osgi.serviceloader=jakarta.json.spi.JsonProvider diff --git a/johnzon-jaxrs/pom.xml b/johnzon-jaxrs/pom.xml index c408766c..3ca4a654 100644 --- a/johnzon-jaxrs/pom.xml +++ b/johnzon-jaxrs/pom.xml @@ -65,6 +65,15 @@ + +org.apache.felix +maven-bundle-plugin + + + org.apache.johnzon.jaxrs + + + org.apache.maven.plugins maven-shade-plugin diff --git a/johnzon-jsonb/pom.xml b/johnzon-jsonb/pom.xml index 7bcfd30b..5ad89d04 100644 --- a/johnzon-jsonb/pom.xml +++ b/johnzon-jsonb/pom.xml @@ -144,6 +144,7 @@ maven-bundle-plugin + org.apache.johnzon.jsonb javax.ws.rs.*;resolution:=optional, * diff --git a/johnzon-jsonlogic/pom.xml b/johnzon-jsonlogic/pom.xml index 48cffa60..e2a47521 100644 --- a/johnzon-jsonlogic/pom.xml +++ b/johnzon-jsonlogic/pom.xml @@ -40,6 +40,15 @@ + +org.apache.felix +maven-bundle-plugin + + + org.apache.johnzon.jsonlogic + + + org.apache.maven.plugins maven-shade-plugin diff --git a/johnzon-jsonschema/pom.xml b/johnzon-jsonschema/pom.xml index 21347f86..d4e65049 100644 --- a/johnzon-jsonschema/pom.xml +++ b/johnzon-jsonschema/pom.xml @@ -54,6 +54,15 @@ + +org.apache.felix +maven-bundle-plugin + + + org.apache.johnzon.jsonschema + + + org.apache.maven.plugins maven-shade-plugin diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index 312b5343..c4666137 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -78,6 +78,7 @@ maven-bundle-plugin + org.apache.johnzon.mapper {local-packages};-split-package:=error,org.apache.johnzon.mapper.internal diff --git a/johnzon-websocket/pom.xml b/johnzon-websocket/pom.xml index d8adbf69..a86963ea 100644 --- a/johnzon-websocket/pom.xml +++ b/johnzon-websocket/pom.xml @@ -144,15 +144,24 @@ - - org.apache.maven.plugins - maven-surefire-plugin - - - https://repo1.maven.org/maven2/ - - - + +org.apache.maven.plugins +maven-surefire-plugin + + + https://repo1.maven.org/maven2/ + + + + +org.apache.felix +maven-bundle-plugin + + + org.apache.johnzon.websocket + + + org.apache.maven.plugins maven-shade-plugin diff --git a/pom.xml b/pom.xml index 521f2d10..86e68aa2 100644 --- a/pom.xml +++ b/pom.xml @@ -304,6 +304,7 @@ UTF-8 + **/module-info* true true true
[johnzon] branch master updated: [JOHNZON-390] ensure jsonb creator/constructor parameters respect naming strategy
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new b25243b2 [JOHNZON-390] ensure jsonb creator/constructor parameters respect naming strategy b25243b2 is described below commit b25243b23f36f257e47d8fce9b914bb5c882889c Author: Romain Manni-Bucau AuthorDate: Thu Dec 8 11:39:58 2022 +0100 [JOHNZON-390] ensure jsonb creator/constructor parameters respect naming strategy --- .../org/apache/johnzon/jsonb/JsonbAccessMode.java | 6 +-- .../java/org/apache/johnzon/jsonb/NamingTest.java | 61 ++ .../org/apache/johnzon/jsonb/test/JsonbRule.java | 5 ++ .../jsonschema/JsonSchemaValidatorFactory.java | 15 +++--- .../jsonschema/JsonSchemaValidatorTest.java| 29 ++ pom.xml| 1 + 6 files changed, 108 insertions(+), 9 deletions(-) diff --git a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java index a0d0d8c6..49411f56 100644 --- a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java +++ b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java @@ -252,13 +252,13 @@ public class JsonbAccessMode implements AccessMode, Closeable, Cleanable naming.translateName(parameter.getName())) : +naming.translateName(parameter.getName())); final JsonbTypeAdapter adapter = getAnnotation(parameter, JsonbTypeAdapter.class); final JsonbDateFormat dateFormat = getAnnotation(parameter, JsonbDateFormat.class); diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/NamingTest.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/NamingTest.java new file mode 100644 index ..715523af --- /dev/null +++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/NamingTest.java @@ -0,0 +1,61 @@ +/* + * 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. + */ +package org.apache.johnzon.jsonb; + +import org.apache.johnzon.jsonb.test.JsonbRule; +import org.junit.Rule; +import org.junit.Test; + +import javax.json.bind.annotation.JsonbCreator; +import javax.json.bind.config.PropertyNamingStrategy; +import java.util.StringJoiner; + +import static org.junit.Assert.assertEquals; + +public class NamingTest { +@Rule +public final JsonbRule jsonb = new JsonbRule() + .withPropertyNamingStrategy(PropertyNamingStrategy.LOWER_CASE_WITH_UNDERSCORES); + +@Test +public void lower() { +assertEquals("{\"first_name\":\"test\"}", jsonb.toJson(new Model("test"))); +assertEquals("Model[firstName='test']", jsonb.fromJson("{\"first_name\":\"test\"}", Model.class).toString()); +} + +public static class Model { +public final String firstName; + +private Model(final String firstName) { +this.firstName = firstName; +} + +@Override +public String toString() { +return new StringJoiner(", ", Model.class.getSimpleName() + "[", "]") +.add("firstName='" + firstName + "'") +.toString(); +} + +@JsonbCreator +public static Model create(final String firstName) { +return new Model(firstName); +} +} +} diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java index 62779863..f617fe1e 100644 --- a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java +++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java @@ -47,6 +47,11 @@ public class JsonbRule implements TestRule, Jsonb, JsonbExtension { return this; } +public JsonbRule withPropertyNamingStrategy(final String propertyorderstrategy) { +
[johnzon] branch master updated: update maven plugins (#96)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 039fe142 update maven plugins (#96) 039fe142 is described below commit 039fe142944de529fbe8c84badea67b848dc2ff8 Author: Samael AuthorDate: Mon Nov 14 16:04:14 2022 + update maven plugins (#96) * Update Maven Plugins (except those from base pom) * Fix Javadoc errors * Replace findbugs with spotbugs --- .github/workflows/maven.yml| 3 - .../org/apache/johnzon/jsonb/JsonbRecordTest.java | 2 +- .../java/org/apache/johnzon/mapper/Adapter.java| 10 +- .../org/apache/johnzon/mapper/JohnzonRecord.java | 2 +- .../mapper/internal/JsonPointerTracker.java| 2 +- .../org/apache/johnzon/mapper/util/BeanUtil.java | 10 +- johnzon-maven-plugin/pom.xml | 26 ++- johnzon-osgi/pom.xml | 4 + johnzon-websocket/pom.xml | 7 - pom.xml| 202 - 10 files changed, 157 insertions(+), 111 deletions(-) diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 8a0ad739..4fe88968 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -26,6 +26,3 @@ jobs: env: MAVEN_OPTS: -Dmaven.artifact.threads=64 run: mvn -V package --no-transfer-progress - - #- name: Maven javadoc - # run: mvn javadoc:javadoc -Ddoclint=all --no-transfer-progress diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbRecordTest.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbRecordTest.java index 81e28e3d..8560ee9c 100644 --- a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbRecordTest.java +++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbRecordTest.java @@ -46,7 +46,7 @@ public class JsonbRecordTest { private final String name; public Record(@JohnzonRecord.Name("age") final int age, - @JohnzonRecord.Name("name") @JsonbProperty("_name") final String name) { // simulate custom constructor + @JohnzonRecord.Name("name") @JsonbProperty("_name") final String name) { // simulate custom constructor this.age = age; this.name = name; } diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java index abbd25c7..0ffad873 100644 --- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java +++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java @@ -29,25 +29,23 @@ package org.apache.johnzon.mapper; * Our {@code Mapper} should treat it as a {@code java.util.Date}. * For doing so we create a {@code DateHolderAdapter} like the following example shows: * - * {@code - * public static class DateHolderAdapter implements Adapter { - * @Override + * {@code public static class DateHolderAdapter implements Adapter} { + * {@code @Override} * public DateHolder to(Date date) { * DateHolder dh = new DateHolder(date.getTime()); * return dh; * } * - * @Override + * {@code @Override} * public Date from(DateHolder dateHolder) { *return new Date(dateHolder.getDate()); * } * } - * } * * * Consider a POJO has a DateHolder. * When serialising the {@code Mapper} will first use the {@code DateHolderAdapter#from(DateHolder)} and from there to JSON. - * When reading JSON the {@code to(Date}} method will be used. + * When reading JSON the {@code to(Date)} method will be used. * * @param The Java type in the POJO (Plain Old Java Object) * @param The Java Type which will be used to transform to JSON. diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/JohnzonRecord.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/JohnzonRecord.java index d57a0b8c..8516a0f1 100644 --- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/JohnzonRecord.java +++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/JohnzonRecord.java @@ -28,7 +28,7 @@ import java.lang.annotation.Target; /** * Forces method named as properties to be used as getters (String foo() will match the attribute foo). * Also enables a constructor with all properties even if not marked as @ConstructorProperties or equivalent. - * It simulates java >= 14 record style. + * It simulates Java 14+ records. */ @Target({ TYPE }) @Retention(RUNTIME) diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/internal/JsonPointerTracker.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/internal/Js
[johnzon] branch master updated: fixes for Javadoc errors and some warnings (#95)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new e7418157 fixes for Javadoc errors and some warnings (#95) e7418157 is described below commit e7418157680f3fbd29fa7a5e79b269565d24f7fc Author: Samael AuthorDate: Mon Nov 14 10:23:29 2022 + fixes for Javadoc errors and some warnings (#95) --- .../main/java/org/apache/johnzon/core/BufferStrategyFactory.java | 2 ++ johnzon-core/src/main/java/org/apache/johnzon/core/Buffered.java | 3 ++- .../main/java/org/apache/johnzon/core/JsonStreamParserImpl.java | 1 + .../src/main/java/org/apache/johnzon/core/util/ArrayUtil.java | 2 ++ .../src/main/java/org/apache/johnzon/mapper/Adapter.java | 8 +++- .../src/main/java/org/apache/johnzon/mapper/Converter.java| 4 ++-- .../java/org/apache/johnzon/mapper/JohnzonDeduplicateObjects.java | 2 +- 7 files changed, 17 insertions(+), 5 deletions(-) diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/BufferStrategyFactory.java b/johnzon-core/src/main/java/org/apache/johnzon/core/BufferStrategyFactory.java index 62556a57..dd092a53 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/BufferStrategyFactory.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/BufferStrategyFactory.java @@ -51,6 +51,8 @@ public class BufferStrategyFactory { * * You can also pass in a fully qualified class name of a custom {@link BufferStrategy}. * + * @param strategyName one of the supported BufferStrategies as per above + * @return an instance of the chosen BufferStrategy * @throws IllegalArgumentException if the given strategyName does not resolve to a BufferStrategy. */ public static BufferStrategy valueOf(String strategyName) { diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/Buffered.java b/johnzon-core/src/main/java/org/apache/johnzon/core/Buffered.java index 40cabfb7..17f29f39 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/Buffered.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/Buffered.java @@ -17,7 +17,7 @@ package org.apache.johnzon.core; /** - * A Buffered is a source or destination of data that is buffered + * A Buffered is a source or destination of data that is buffered * before writing or reading. The bufferSize method allows all participants * in the underlying stream to align on this buffer size for optimization. * @@ -31,6 +31,7 @@ public interface Buffered { // https://github.com/apache/johnzon/pull/84#discuss /** * The buffer size used by this stream while reading input or before writing * output to the underlying stream. + * @return the size of the buffer */ int bufferSize(); } diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonStreamParserImpl.java b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonStreamParserImpl.java index c511e0d4..c854069d 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonStreamParserImpl.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonStreamParserImpl.java @@ -208,6 +208,7 @@ public class JsonStreamParserImpl extends JohnzonJsonParserImpl implements JsonC } /** + * @param currentLength length of the buffer * @return the amount of bytes the current buffer should get extended with */ protected int getBufferExtends(int currentLength) { diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/util/ArrayUtil.java b/johnzon-core/src/main/java/org/apache/johnzon/core/util/ArrayUtil.java index 22904d31..b1942387 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/util/ArrayUtil.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/util/ArrayUtil.java @@ -146,6 +146,8 @@ public final class ArrayUtil { /** * Take the given array object and fill a fresh Collection with it. + * @param array an array that is to be duplicated + * @return a new collection of the original array elements * @throws IllegalArgumentException if the given value this is not an array. */ public static Collection newCollection(Object array) { diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java index fd635492..abbd25c7 100644 --- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java +++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/Adapter.java @@ -22,13 +22,14 @@ package org.apache.johnzon.mapper; * An Adapter is similar to a {@link Converter}. * The main difference is that a Converter always converts from/to a String. * An adapter might e.g. convert to a Date or any other Object which will - * then be json-ified. + * then be json-ified
[johnzon] branch master updated: make build reproducible (#93)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 514250ad make build reproducible (#93) 514250ad is described below commit 514250adb46fc13fa42c5e48d1151f6cb83f6429 Author: Hervé Boutemy AuthorDate: Sun Nov 13 17:22:09 2022 +0100 make build reproducible (#93) --- johnzon-core/pom.xml | 1 - johnzon-jaxrs/pom.xml| 1 - johnzon-json-extras/pom.xml | 1 - johnzon-jsonb/pom.xml| 1 - johnzon-jsonlogic/pom.xml| 1 - johnzon-jsonp-strict/pom.xml | 1 - johnzon-jsonschema/pom.xml | 1 - johnzon-mapper/pom.xml | 1 - johnzon-websocket/pom.xml| 1 - pom.xml | 9 - 10 files changed, 4 insertions(+), 14 deletions(-) diff --git a/johnzon-core/pom.xml b/johnzon-core/pom.xml index 03d084e5..4128b995 100644 --- a/johnzon-core/pom.xml +++ b/johnzon-core/pom.xml @@ -48,7 +48,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 diff --git a/johnzon-jaxrs/pom.xml b/johnzon-jaxrs/pom.xml index 5ffaa968..32d9b2ac 100644 --- a/johnzon-jaxrs/pom.xml +++ b/johnzon-jaxrs/pom.xml @@ -68,7 +68,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 diff --git a/johnzon-json-extras/pom.xml b/johnzon-json-extras/pom.xml index 522fa81f..ea9918b7 100644 --- a/johnzon-json-extras/pom.xml +++ b/johnzon-json-extras/pom.xml @@ -53,7 +53,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 diff --git a/johnzon-jsonb/pom.xml b/johnzon-jsonb/pom.xml index 51c53d53..f5b99c1e 100644 --- a/johnzon-jsonb/pom.xml +++ b/johnzon-jsonb/pom.xml @@ -110,7 +110,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 org.apache.felix diff --git a/johnzon-jsonlogic/pom.xml b/johnzon-jsonlogic/pom.xml index cecae60d..c1760532 100644 --- a/johnzon-jsonlogic/pom.xml +++ b/johnzon-jsonlogic/pom.xml @@ -43,7 +43,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 diff --git a/johnzon-jsonp-strict/pom.xml b/johnzon-jsonp-strict/pom.xml index 9720adfd..5733925e 100644 --- a/johnzon-jsonp-strict/pom.xml +++ b/johnzon-jsonp-strict/pom.xml @@ -46,7 +46,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 org.apache.felix diff --git a/johnzon-jsonschema/pom.xml b/johnzon-jsonschema/pom.xml index 61e7e6cc..7b3a796e 100644 --- a/johnzon-jsonschema/pom.xml +++ b/johnzon-jsonschema/pom.xml @@ -57,7 +57,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index 05bc495f..3390665a 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -68,7 +68,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 diff --git a/johnzon-websocket/pom.xml b/johnzon-websocket/pom.xml index f845ab60..1dc39f11 100644 --- a/johnzon-websocket/pom.xml +++ b/johnzon-websocket/pom.xml @@ -143,7 +143,6 @@ org.apache.maven.plugins maven-shade-plugin -3.2.2 org.codehaus.mojo diff --git a/pom.xml b/pom.xml index 75689dcd..7af69dc6 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ org.apache apache -21 +27 org.apache.johnzon @@ -39,10 +39,11 @@ 1.5 1.4 UTF-8 +10 https://svn.apache.org/repos/asf/johnzon/site/publish/ scm:svn:${johnzon.site.url} ${project.build.directory}/site -5.1.4 +5.1.8 [$(version;==;$(@)),$(version;+;$(@))) 6.1.0 1.8 @@ -102,7 +103,7 @@ org.apache.maven.plugins maven-shade-plugin - 3.2.2 + 3.2.3 jakarta @@ -353,7 +354,6 @@ org.apache.maven.plugins maven-source-plugin -2.3 generate-sources @@ -367,7 +367,6 @@ org.apache.maven.plugins maven-jar-plugin -2.5 true
[openwebbeans-meecrowave] branch master updated: fix: MEECROWAVE-323 - incorrect filename
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans-meecrowave.git The following commit(s) were added to refs/heads/master by this push: new 46b2ba8 fix: MEECROWAVE-323 - incorrect filename new 710b8d0 Merge pull request #17 from bvfalcon/master 46b2ba8 is described below commit 46b2ba8ece7263fc774070250d39032a37b5154a Author: Vladimir V. Bychkov AuthorDate: Thu Oct 13 21:02:36 2022 +0200 fix: MEECROWAVE-323 - incorrect filename Bug with erroneous automatic renaming file solved Signed-off-by: Vladimir V. Bychkov --- meecrowave-core/pom.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/meecrowave-core/pom.xml b/meecrowave-core/pom.xml index e027019..142daa0 100644 --- a/meecrowave-core/pom.xml +++ b/meecrowave-core/pom.xml @@ -617,6 +617,9 @@ javax.annotation jakarta.annotation + +javax.annotation.processing.** + javax.el
[johnzon] branch master updated (b550cb2a -> e8c504f2)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from b550cb2a [maven-release-plugin] prepare for next development iteration new a25349d0 add github action new 017dae0a adopt version for JDK 1.8 should be '8' new 0c123b09 changes as per PR comments new b707cff7 changes as per PR comments new e8c504f2 Merge pull request #94 from SingingBush/github_actions The 952 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .github/workflows/maven.yml | 31 +++ .travis.yml | 10 -- 2 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 .github/workflows/maven.yml delete mode 100644 .travis.yml
[maven] 01/01: [MNG-7532] Log shouldn't have been deprecated so ensure it is not
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch MNG-7532 in repository https://gitbox.apache.org/repos/asf/maven.git commit 1f0ed60ba0d9e8c691588cd4c285966d28b614c9 Author: Romain Manni-Bucau AuthorDate: Wed Aug 24 08:53:23 2022 +0200 [MNG-7532] Log shouldn't have been deprecated so ensure it is not --- .../src/main/java/org/apache/maven/plugin/AbstractMojo.java | 6 -- maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java| 4 .../src/main/java/org/apache/maven/plugin/logging/Log.java | 2 -- .../main/java/org/apache/maven/plugin/logging/SystemStreamLog.java | 2 -- 4 files changed, 14 deletions(-) diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java index 4042f84de..6a74a64eb 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java @@ -149,10 +149,6 @@ public abstract class AbstractMojo /** Plugin container context */ private Map pluginContext; -/** - * @deprecated Use SLF4J directly - */ -@Deprecated @Override public void setLog( Log log ) { @@ -171,9 +167,7 @@ public abstract class AbstractMojo * method directly whenever you need the logger, it is fast enough and needs no caching. * * @see org.apache.maven.plugin.Mojo#getLog() - * @deprecated Use SLF4J directly */ -@Deprecated @Override public Log getLog() { diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java index 041917605..aa277f933 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java @@ -55,9 +55,7 @@ public interface Mojo * * @param log a new logger * - * @deprecated Use SLF4J directly */ -@Deprecated void setLog( Log log ); /** @@ -65,8 +63,6 @@ public interface Mojo * * @return a log4j-like logger object which allows plugins to create messages at levels of "debug", * "info", "warn", and "error". - * @deprecated Use SLF4J directly */ -@Deprecated Log getLog(); } diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java index 04d85bd96..a2cf2a05b 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java @@ -29,9 +29,7 @@ package org.apache.maven.plugin.logging; * * @author jdcasey * - * @deprecated Use SLF4J directly */ -@Deprecated public interface Log { /** diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java index f0fc6189d..885eead00 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java @@ -27,9 +27,7 @@ import java.io.StringWriter; * * @author jdcasey * - * @deprecated Use SLF4J directly */ -@Deprecated public class SystemStreamLog implements Log {
[maven] branch MNG-7532 updated (079bd7fca -> 1f0ed60ba)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MNG-7532 in repository https://gitbox.apache.org/repos/asf/maven.git discard 079bd7fca MNG-7532 Log shouldn't have been deprecated so ensure it is not new 1f0ed60ba [MNG-7532] Log shouldn't have been deprecated so ensure it is not This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (079bd7fca) \ N -- N -- N refs/heads/MNG-7532 (1f0ed60ba) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes:
[maven] branch MNG-7532 created (now 079bd7fca)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MNG-7532 in repository https://gitbox.apache.org/repos/asf/maven.git at 079bd7fca MNG-7532 Log shouldn't have been deprecated so ensure it is not This branch includes the following new commits: new 079bd7fca MNG-7532 Log shouldn't have been deprecated so ensure it is not The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[maven] 01/01: MNG-7532 Log shouldn't have been deprecated so ensure it is not
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch MNG-7532 in repository https://gitbox.apache.org/repos/asf/maven.git commit 079bd7fca343478d5b2c7b61f5e971199e36c730 Author: Romain Manni-Bucau AuthorDate: Wed Aug 24 08:53:23 2022 +0200 MNG-7532 Log shouldn't have been deprecated so ensure it is not --- .../src/main/java/org/apache/maven/plugin/AbstractMojo.java | 6 -- maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java| 4 .../src/main/java/org/apache/maven/plugin/logging/Log.java | 2 -- .../main/java/org/apache/maven/plugin/logging/SystemStreamLog.java | 2 -- 4 files changed, 14 deletions(-) diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java index 4042f84de..6a74a64eb 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/AbstractMojo.java @@ -149,10 +149,6 @@ public abstract class AbstractMojo /** Plugin container context */ private Map pluginContext; -/** - * @deprecated Use SLF4J directly - */ -@Deprecated @Override public void setLog( Log log ) { @@ -171,9 +167,7 @@ public abstract class AbstractMojo * method directly whenever you need the logger, it is fast enough and needs no caching. * * @see org.apache.maven.plugin.Mojo#getLog() - * @deprecated Use SLF4J directly */ -@Deprecated @Override public Log getLog() { diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java index 041917605..aa277f933 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/Mojo.java @@ -55,9 +55,7 @@ public interface Mojo * * @param log a new logger * - * @deprecated Use SLF4J directly */ -@Deprecated void setLog( Log log ); /** @@ -65,8 +63,6 @@ public interface Mojo * * @return a log4j-like logger object which allows plugins to create messages at levels of "debug", * "info", "warn", and "error". - * @deprecated Use SLF4J directly */ -@Deprecated Log getLog(); } diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java index 04d85bd96..a2cf2a05b 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java @@ -29,9 +29,7 @@ package org.apache.maven.plugin.logging; * * @author jdcasey * - * @deprecated Use SLF4J directly */ -@Deprecated public interface Log { /** diff --git a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java index f0fc6189d..885eead00 100644 --- a/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java +++ b/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java @@ -27,9 +27,7 @@ import java.io.StringWriter; * * @author jdcasey * - * @deprecated Use SLF4J directly */ -@Deprecated public class SystemStreamLog implements Log {
svn commit: r1903623 - in /johnzon/site/publish: ./ apidocs/ apidocs/org/apache/johnzon/core/ apidocs/org/apache/johnzon/core/class-use/ apidocs/org/apache/johnzon/core/io/ apidocs/org/apache/johnzon/
Author: rmannibucau Date: Mon Aug 22 07:08:46 2022 New Revision: 1903623 URL: http://svn.apache.org/viewvc?rev=1903623=rev Log: Site checkin for project Apache Johnzon [This commit notification would consist of 88 parts, which exceeds the limit of 50 ones, so it was shortened to the summary.]
[openwebbeans-meecrowave] branch master updated: OpenWebBeans 2.0.27 and Johnzon 1.2.19
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans-meecrowave.git The following commit(s) were added to refs/heads/master by this push: new e5d415c OpenWebBeans 2.0.27 and Johnzon 1.2.19 e5d415c is described below commit e5d415cd56227d5e1ea0d0dd5a075134eb76ea42 Author: Romain Manni-Bucau AuthorDate: Mon Aug 22 09:03:50 2022 +0200 OpenWebBeans 2.0.27 and Johnzon 1.2.19 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 1f3c1f7..7675e77 100644 --- a/pom.xml +++ b/pom.xml @@ -52,9 +52,9 @@ 4.13.2 9.0.62 -2.0.26 +2.0.27 3.5.2 -1.2.18 +1.2.19 2.17.2 1.9.5 2.2.11
[openwebbeans] branch master updated: simple test on DefaultBeanArchiveServiceTest to ensure we ignore the namespace
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans.git The following commit(s) were added to refs/heads/master by this push: new 30c34ba04 simple test on DefaultBeanArchiveServiceTest to ensure we ignore the namespace 30c34ba04 is described below commit 30c34ba04ef1c8c94a1c6de8f9eaec485002f04b Author: Romain Manni-Bucau AuthorDate: Thu Aug 18 11:00:15 2022 +0200 simple test on DefaultBeanArchiveServiceTest to ensure we ignore the namespace --- .../xml/DefaultBeanArchiveServiceTest.java | 89 ++ 1 file changed, 89 insertions(+) diff --git a/webbeans-impl/src/test/java/org/apache/webbeans/xml/DefaultBeanArchiveServiceTest.java b/webbeans-impl/src/test/java/org/apache/webbeans/xml/DefaultBeanArchiveServiceTest.java new file mode 100644 index 0..53c8f42a1 --- /dev/null +++ b/webbeans-impl/src/test/java/org/apache/webbeans/xml/DefaultBeanArchiveServiceTest.java @@ -0,0 +1,89 @@ +/* + * 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. + */ +package org.apache.webbeans.xml; + +import org.apache.webbeans.spi.BeanArchiveService; +import org.junit.Test; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; + +import static java.util.Arrays.asList; +import static org.apache.webbeans.spi.BeanArchiveService.BeanDiscoveryMode.ANNOTATED; +import static org.junit.Assert.assertEquals; + +public class DefaultBeanArchiveServiceTest +{ +private static final String CONTENT = "" + +"\n" + +" com.acme.First\n" + +" com.acme.Second\n" + +"" + +""; + +@Test +public void parseEE8() throws IOException +{ +assertBeansXml("" + +"http://xmlns.jcp.org/xml/ns/javaee\; xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\; \n" + +"xsi:schemaLocation=\"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_2_0.xsd\"; + +" bean-discovery-mode=\"annotated\" version=\"2.0\"> \n" + +CONTENT + +"" + +"", "2.0"); +} + +@Test +public void parseEE9() throws IOException +{ +assertBeansXml("" + +"https://jakarta.ee/xml/ns/jakartaee\"\n; + +" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n; + +" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_3_0.xsd\"\n; + +"version=\"3.0\" bean-discovery-mode=\"annotated\">\n" + +CONTENT + +"" + +"", "3.0"); +} + +@Test +public void parseEE10() throws IOException +{ +assertBeansXml("" + +"https://jakarta.ee/xml/ns/jakartaee\"\n; + +" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n; + +" xsi:schemaLocation=\"https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd\"\n; + +" version=\"4.0\" bean-discovery-mode=\"annotated\">\n" + +CONTENT + +"" + +"", "4.0"); +} + +private void assertBeansXml(final String beansXml, final String version) throws IOException +{ +try (final InputStream stream = new ByteArrayInputStream(beansXml.getBytes(StandardCharsets.UTF_8))) { +final BeanArchiveService.BeanArchiveInformation info = new DefaultBeanArchiveService().readBeansXml(stream, "mem"); +assertEquals(version, info.getVersion()); +assertEquals(ANNOTATED, info.getBeanDiscoveryMode()); +assertEquals(asList("com.acme.First", "com.acme.Second"), info.getInterceptors()); +} +} +}
svn commit: r56335 - in /dev/johnzon: apache-johnzon-1.2.19-src.zip apache-johnzon-1.2.19-src.zip.asc apache-johnzon-1.2.19-src.zip.sha512
Author: rmannibucau Date: Wed Aug 17 08:46:09 2022 New Revision: 56335 Log: johnzon 1.2.19 staging artifacts Added: dev/johnzon/apache-johnzon-1.2.19-src.zip (with props) dev/johnzon/apache-johnzon-1.2.19-src.zip.asc dev/johnzon/apache-johnzon-1.2.19-src.zip.sha512 Added: dev/johnzon/apache-johnzon-1.2.19-src.zip == Binary file - no diff available. Propchange: dev/johnzon/apache-johnzon-1.2.19-src.zip -- svn:mime-type = application/octet-stream Added: dev/johnzon/apache-johnzon-1.2.19-src.zip.asc == --- dev/johnzon/apache-johnzon-1.2.19-src.zip.asc (added) +++ dev/johnzon/apache-johnzon-1.2.19-src.zip.asc Wed Aug 17 08:46:09 2022 @@ -0,0 +1,11 @@ +-BEGIN PGP SIGNATURE- + +iQEzBAABCgAdFiEEz4CgVaKtKOnvv5QqcxKfWN5h7L0FAmL8qDwACgkQcxKfWN5h +7L346gf8CvwsZ3Sz9bWdFt5AbVEta92vYme+dbAAPyWLPH1ZM5UUE/FKFb9BwzmH +ddQcl2Nbaka+3kBm2Frr/mfdBJ/ULVJBdVq6XuQ7e6t3LH2vpPAP6IIIkomAeFzZ +iP2RtUvkNh49cBCFscaEnDoMluxPkw0ipaPiHZFpRWdoPxuVu9Ot9pm0M2uw01Sx +tE1JVCE3wfm6cfwIjy0b81Mm5qOVBvlF99Dk+K24jsRuc6QHVhPiiVT881HwCuyW +3WmHyKKBCWYEqSfxxJrYKVgVHQaAzaQ2hUuQ2lK3MEDB4l+JvG3H10drbZnk3A+W +olQwQqEFS+deem3s9MobQ3LNc8O1Sw== +=ld4S +-END PGP SIGNATURE- Added: dev/johnzon/apache-johnzon-1.2.19-src.zip.sha512 == --- dev/johnzon/apache-johnzon-1.2.19-src.zip.sha512 (added) +++ dev/johnzon/apache-johnzon-1.2.19-src.zip.sha512 Wed Aug 17 08:46:09 2022 @@ -0,0 +1 @@ +e6067e07e3a15cfe133b478f32ce1566152cb1051fff174640cebaad53f535c80f54f23e7feef57bcccb61f4936235346fd2b36d5eaf5e2064f088093332f568 apache-johnzon-1.2.19-src.zip
[johnzon] 01/02: [maven-release-plugin] prepare release v1.2.19
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit a438327965a4a22d1238b28cbbd9f86d6a9cc707 Author: Romain Manni-Bucau AuthorDate: Wed Aug 17 10:26:30 2022 +0200 [maven-release-plugin] prepare release v1.2.19 --- johnzon-core/pom.xml | 2 +- johnzon-distribution/pom.xml | 2 +- johnzon-jaxrs/pom.xml| 2 +- johnzon-json-extras/pom.xml | 2 +- johnzon-jsonb/pom.xml| 2 +- johnzon-jsonlogic/pom.xml| 2 +- johnzon-jsonp-strict/pom.xml | 2 +- johnzon-jsonschema/pom.xml | 2 +- johnzon-mapper/pom.xml | 2 +- johnzon-maven-plugin/pom.xml | 2 +- johnzon-osgi/pom.xml | 2 +- johnzon-websocket/pom.xml| 2 +- pom.xml | 4 ++-- 13 files changed, 14 insertions(+), 14 deletions(-) diff --git a/johnzon-core/pom.xml b/johnzon-core/pom.xml index 483340b0..86b8634e 100644 --- a/johnzon-core/pom.xml +++ b/johnzon-core/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-distribution/pom.xml b/johnzon-distribution/pom.xml index 2923ee0d..c8b3d0fe 100644 --- a/johnzon-distribution/pom.xml +++ b/johnzon-distribution/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-jaxrs/pom.xml b/johnzon-jaxrs/pom.xml index 111ae929..84f811ae 100644 --- a/johnzon-jaxrs/pom.xml +++ b/johnzon-jaxrs/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-json-extras/pom.xml b/johnzon-json-extras/pom.xml index 01ad93fc..62a6e1d8 100644 --- a/johnzon-json-extras/pom.xml +++ b/johnzon-json-extras/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-jsonb/pom.xml b/johnzon-jsonb/pom.xml index 86afd25f..0eb19eb9 100644 --- a/johnzon-jsonb/pom.xml +++ b/johnzon-jsonb/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-jsonlogic/pom.xml b/johnzon-jsonlogic/pom.xml index a9d7643f..e8e74184 100644 --- a/johnzon-jsonlogic/pom.xml +++ b/johnzon-jsonlogic/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-jsonp-strict/pom.xml b/johnzon-jsonp-strict/pom.xml index 9b4192bd..c5c4e416 100644 --- a/johnzon-jsonp-strict/pom.xml +++ b/johnzon-jsonp-strict/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-jsonschema/pom.xml b/johnzon-jsonschema/pom.xml index 38464977..ac91796c 100644 --- a/johnzon-jsonschema/pom.xml +++ b/johnzon-jsonschema/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index 03403814..3f71731b 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-maven-plugin/pom.xml b/johnzon-maven-plugin/pom.xml index c3bad907..0fc4df96 100644 --- a/johnzon-maven-plugin/pom.xml +++ b/johnzon-maven-plugin/pom.xml @@ -23,7 +23,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 johnzon-maven-plugin diff --git a/johnzon-osgi/pom.xml b/johnzon-osgi/pom.xml index d87fe655..3d77d5ab 100644 --- a/johnzon-osgi/pom.xml +++ b/johnzon-osgi/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/johnzon-websocket/pom.xml b/johnzon-websocket/pom.xml index f3fd9c4f..2e717af2 100644 --- a/johnzon-websocket/pom.xml +++ b/johnzon-websocket/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19-SNAPSHOT +1.2.19 4.0.0 diff --git a/pom.xml b/pom.xml index c5ef5793..0a188e19 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ org.apache.johnzon johnzon pom - 1.2.19-SNAPSHOT + 1.2.19 Apache Johnzon Apache Johnzon is an implementation of JSR-353 (JavaTM API for JSON Processing). 2014 @@ -510,7 +510,7 @@ scm:git:https://git-wip-us.apache.org/repos/asf/johnzon.git scm:git:https://git-wip-us.apache.org/repos/asf/johnzon.git https://git-wip-us.apache.org/repos/asf?p=johnzon.git -HEAD +v1.2.19
[johnzon] 02/02: [maven-release-plugin] prepare for next development iteration
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit b550cb2ac2097c2a934f94ac0328a9ba8e6f1499 Author: Romain Manni-Bucau AuthorDate: Wed Aug 17 10:29:04 2022 +0200 [maven-release-plugin] prepare for next development iteration --- johnzon-core/pom.xml | 2 +- johnzon-distribution/pom.xml | 2 +- johnzon-jaxrs/pom.xml| 2 +- johnzon-json-extras/pom.xml | 2 +- johnzon-jsonb/pom.xml| 2 +- johnzon-jsonlogic/pom.xml| 2 +- johnzon-jsonp-strict/pom.xml | 2 +- johnzon-jsonschema/pom.xml | 2 +- johnzon-mapper/pom.xml | 2 +- johnzon-maven-plugin/pom.xml | 2 +- johnzon-osgi/pom.xml | 2 +- johnzon-websocket/pom.xml| 2 +- pom.xml | 4 ++-- 13 files changed, 14 insertions(+), 14 deletions(-) diff --git a/johnzon-core/pom.xml b/johnzon-core/pom.xml index 86b8634e..03d084e5 100644 --- a/johnzon-core/pom.xml +++ b/johnzon-core/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-distribution/pom.xml b/johnzon-distribution/pom.xml index c8b3d0fe..9630f5bb 100644 --- a/johnzon-distribution/pom.xml +++ b/johnzon-distribution/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-jaxrs/pom.xml b/johnzon-jaxrs/pom.xml index 84f811ae..5ffaa968 100644 --- a/johnzon-jaxrs/pom.xml +++ b/johnzon-jaxrs/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-json-extras/pom.xml b/johnzon-json-extras/pom.xml index 62a6e1d8..522fa81f 100644 --- a/johnzon-json-extras/pom.xml +++ b/johnzon-json-extras/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonb/pom.xml b/johnzon-jsonb/pom.xml index 0eb19eb9..51c53d53 100644 --- a/johnzon-jsonb/pom.xml +++ b/johnzon-jsonb/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonlogic/pom.xml b/johnzon-jsonlogic/pom.xml index e8e74184..cecae60d 100644 --- a/johnzon-jsonlogic/pom.xml +++ b/johnzon-jsonlogic/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonp-strict/pom.xml b/johnzon-jsonp-strict/pom.xml index c5c4e416..9720adfd 100644 --- a/johnzon-jsonp-strict/pom.xml +++ b/johnzon-jsonp-strict/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonschema/pom.xml b/johnzon-jsonschema/pom.xml index ac91796c..61e7e6cc 100644 --- a/johnzon-jsonschema/pom.xml +++ b/johnzon-jsonschema/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index 3f71731b..05bc495f 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-maven-plugin/pom.xml b/johnzon-maven-plugin/pom.xml index 0fc4df96..899dafc6 100644 --- a/johnzon-maven-plugin/pom.xml +++ b/johnzon-maven-plugin/pom.xml @@ -23,7 +23,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT johnzon-maven-plugin diff --git a/johnzon-osgi/pom.xml b/johnzon-osgi/pom.xml index 3d77d5ab..7c4e041f 100644 --- a/johnzon-osgi/pom.xml +++ b/johnzon-osgi/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/johnzon-websocket/pom.xml b/johnzon-websocket/pom.xml index 2e717af2..f845ab60 100644 --- a/johnzon-websocket/pom.xml +++ b/johnzon-websocket/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.19 +1.2.20-SNAPSHOT 4.0.0 diff --git a/pom.xml b/pom.xml index 0a188e19..75689dcd 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ org.apache.johnzon johnzon pom - 1.2.19 + 1.2.20-SNAPSHOT Apache Johnzon Apache Johnzon is an implementation of JSR-353 (JavaTM API for JSON Processing). 2014 @@ -510,7 +510,7 @@ scm:git:https://git-wip-us.apache.org/repos/asf/johnzon.git scm:git:https://git-wip-us.apache.org/repos/asf/johnzon.git https://git-wip-us.apache.org/repos/asf?p=johnzon.git -v1.2.19 +HEAD
[johnzon] annotated tag v1.2.19 created (now 37f9cabc)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to annotated tag v1.2.19 in repository https://gitbox.apache.org/repos/asf/johnzon.git at 37f9cabc (tag) tagging a438327965a4a22d1238b28cbbd9f86d6a9cc707 (commit) replaces v1.2.18 by Romain Manni-Bucau on Wed Aug 17 10:29:03 2022 +0200 - Log - [maven-release-plugin] copy for tag v1.2.19 --- This annotated tag includes the following new commits: new a4383279 [maven-release-plugin] prepare release v1.2.19 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[johnzon] branch master updated (10444f1f -> b550cb2a)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from 10444f1f [JOHNZON-387] basic support of enums in PojoGenerator new a4383279 [maven-release-plugin] prepare release v1.2.19 new b550cb2a [maven-release-plugin] prepare for next development iteration The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: johnzon-core/pom.xml | 2 +- johnzon-distribution/pom.xml | 2 +- johnzon-jaxrs/pom.xml| 2 +- johnzon-json-extras/pom.xml | 2 +- johnzon-jsonb/pom.xml| 2 +- johnzon-jsonlogic/pom.xml| 2 +- johnzon-jsonp-strict/pom.xml | 2 +- johnzon-jsonschema/pom.xml | 2 +- johnzon-mapper/pom.xml | 2 +- johnzon-maven-plugin/pom.xml | 2 +- johnzon-osgi/pom.xml | 2 +- johnzon-websocket/pom.xml| 2 +- pom.xml | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-)
[johnzon] annotated tag v1.2.19 deleted (was 79cbbe59)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to annotated tag v1.2.19 in repository https://gitbox.apache.org/repos/asf/johnzon.git *** WARNING: tag v1.2.19 was deleted! *** tag was 79cbbe59 The revisions that were on this annotated tag are still contained in other references; therefore, this change does not discard any commits from the repository.
[johnzon] branch master updated: [JOHNZON-387] basic support of enums in PojoGenerator
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 10444f1f [JOHNZON-387] basic support of enums in PojoGenerator 10444f1f is described below commit 10444f1f338d430dadbad430b5b029c4ad38fefa Author: Romain Manni-Bucau AuthorDate: Wed Aug 17 10:22:38 2022 +0200 [JOHNZON-387] basic support of enums in PojoGenerator --- .../johnzon/jsonschema/generator/PojoGenerator.java | 17 - 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 8835b45f..45022f85 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -53,6 +53,7 @@ public class PojoGenerator { protected final Set imports = new TreeSet<>(String::compareTo); protected final List attributes = new ArrayList<>(); protected final Map nested = new TreeMap<>(String::compareTo); +private boolean isEnum; public PojoGenerator(final PojoConfiguration configuration) { this.configuration = configuration; @@ -64,6 +65,10 @@ public class PojoGenerator { } public Map generate() { +if (isEnum) { +return nested; +} + final String name = configuration.getPackageName() + '.' + configuration.getClassName(); final String path = name.replace('.', '/') + ".java"; attributes.sort(comparing(a -> a.javaName)); @@ -169,6 +174,12 @@ public class PojoGenerator { public PojoGenerator visitSchema(final JsonObject schema) { if (!schema.containsKey("properties")) { +if (schema.containsKey("enum")) { +isEnum = true; +doEnum(schema.getJsonArray("enum"), configuration.getClassName()); +return this; +} + throw new IllegalArgumentException("Unsupported schema since it does not contain any properties: " + schema); } @@ -334,6 +345,11 @@ public class PojoGenerator { protected String onEnum(final String javaName, final JsonValue enumList, final JsonObject schema) { final String className = enumName(javaName, schema); +doEnum(enumList, className); +return className; +} + +private void doEnum(final JsonValue enumList, final String className) { final Map values = enumList.asJsonArray().stream() .map(JsonString.class::cast) .map(JsonString::getString) @@ -370,7 +386,6 @@ public class PojoGenerator { "") + beforeEnumEnd() + "}\n"); -return className; } protected String enumName(final String javaName, final JsonObject schema) {
[johnzon] 02/02: reverting version after rolling back the release
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit 5f3aa3f1a673de2dbf5e371ee0ff9c12bdee02b0 Author: Romain Manni-Bucau AuthorDate: Wed Aug 17 09:45:22 2022 +0200 reverting version after rolling back the release --- johnzon-core/pom.xml | 2 +- johnzon-distribution/pom.xml | 2 +- johnzon-jaxrs/pom.xml| 2 +- johnzon-json-extras/pom.xml | 2 +- johnzon-jsonb/pom.xml| 2 +- johnzon-jsonlogic/pom.xml| 2 +- johnzon-jsonp-strict/pom.xml | 2 +- johnzon-jsonschema/pom.xml | 2 +- johnzon-mapper/pom.xml | 2 +- johnzon-maven-plugin/pom.xml | 2 +- johnzon-osgi/pom.xml | 2 +- johnzon-websocket/pom.xml| 2 +- pom.xml | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/johnzon-core/pom.xml b/johnzon-core/pom.xml index 03d084e5..483340b0 100644 --- a/johnzon-core/pom.xml +++ b/johnzon-core/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-distribution/pom.xml b/johnzon-distribution/pom.xml index 9630f5bb..2923ee0d 100644 --- a/johnzon-distribution/pom.xml +++ b/johnzon-distribution/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-jaxrs/pom.xml b/johnzon-jaxrs/pom.xml index 5ffaa968..111ae929 100644 --- a/johnzon-jaxrs/pom.xml +++ b/johnzon-jaxrs/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-json-extras/pom.xml b/johnzon-json-extras/pom.xml index 522fa81f..01ad93fc 100644 --- a/johnzon-json-extras/pom.xml +++ b/johnzon-json-extras/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonb/pom.xml b/johnzon-jsonb/pom.xml index 51c53d53..86afd25f 100644 --- a/johnzon-jsonb/pom.xml +++ b/johnzon-jsonb/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonlogic/pom.xml b/johnzon-jsonlogic/pom.xml index cecae60d..a9d7643f 100644 --- a/johnzon-jsonlogic/pom.xml +++ b/johnzon-jsonlogic/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonp-strict/pom.xml b/johnzon-jsonp-strict/pom.xml index 9720adfd..9b4192bd 100644 --- a/johnzon-jsonp-strict/pom.xml +++ b/johnzon-jsonp-strict/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-jsonschema/pom.xml b/johnzon-jsonschema/pom.xml index 61e7e6cc..38464977 100644 --- a/johnzon-jsonschema/pom.xml +++ b/johnzon-jsonschema/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index 05bc495f..03403814 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-maven-plugin/pom.xml b/johnzon-maven-plugin/pom.xml index 899dafc6..c3bad907 100644 --- a/johnzon-maven-plugin/pom.xml +++ b/johnzon-maven-plugin/pom.xml @@ -23,7 +23,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT johnzon-maven-plugin diff --git a/johnzon-osgi/pom.xml b/johnzon-osgi/pom.xml index 7c4e041f..d87fe655 100644 --- a/johnzon-osgi/pom.xml +++ b/johnzon-osgi/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/johnzon-websocket/pom.xml b/johnzon-websocket/pom.xml index f845ab60..f3fd9c4f 100644 --- a/johnzon-websocket/pom.xml +++ b/johnzon-websocket/pom.xml @@ -21,7 +21,7 @@ johnzon org.apache.johnzon -1.2.20-SNAPSHOT +1.2.19-SNAPSHOT 4.0.0 diff --git a/pom.xml b/pom.xml index 75689dcd..c5ef5793 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ org.apache.johnzon johnzon pom - 1.2.20-SNAPSHOT + 1.2.19-SNAPSHOT Apache Johnzon Apache Johnzon is an implementation of JSR-353 (JavaTM API for JSON Processing). 2014
[johnzon] 01/02: fixing all args constructor, fluent setter indentation+returned type for pojo generator
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit 645fa23fd595dbe1ed00b8894c5c9f2f5a67fe0a Author: Romain Manni-Bucau AuthorDate: Wed Aug 17 09:45:13 2022 +0200 fixing all args constructor, fluent setter indentation+returned type for pojo generator --- .../apache/johnzon/jsonschema/generator/PojoGenerator.java| 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 2b36e3cd..8835b45f 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -89,8 +89,7 @@ public class PojoGenerator { "@Override\n" + "public boolean equals(final Object other) {\n" + "return other instanceof " + configuration.getClassName() + ";\n" + -"}\n" + -"}\n") : +"}\n") : (attributes.stream() .map(a -> "" + (configuration.isAddJsonbProperty() && !Objects.equals(a.javaName, a.jsonName) ? @@ -115,7 +114,9 @@ public class PojoGenerator { .collect(joining()), "", ") {\n" + -" // no-op\n" + + attributes.stream() + .map(a -> "this." + a.getJavaName() + " = " + a.javaName + ";\n") + .collect(joining()) + " }\n\n")) : "") + attributes.stream() @@ -127,10 +128,10 @@ public class PojoGenerator { "}\n" + "\n" + "public " + - (configuration.isFluentSetters() ? a.type : "void") + + (configuration.isFluentSetters() ? configuration.getClassName() : "void") + " set" + marker + "(final " + a.type + " " + a.javaName + ") {\n" + "this." + a.javaName + " = " + a.javaName + ";\n" + - (configuration.isFluentSetters() ? "return this;\n" : "") + + (configuration.isFluentSetters() ? "return this;\n" : "") + "}\n" + ""; })
[johnzon] branch master updated (c8a58309 -> 5f3aa3f1)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from c8a58309 [maven-release-plugin] prepare for next development iteration new 645fa23f fixing all args constructor, fluent setter indentation+returned type for pojo generator new 5f3aa3f1 reverting version after rolling back the release The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: johnzon-core/pom.xml | 2 +- johnzon-distribution/pom.xml | 2 +- johnzon-jaxrs/pom.xml | 2 +- johnzon-json-extras/pom.xml | 2 +- johnzon-jsonb/pom.xml | 2 +- johnzon-jsonlogic/pom.xml | 2 +- johnzon-jsonp-strict/pom.xml | 2 +- johnzon-jsonschema/pom.xml| 2 +- .../apache/johnzon/jsonschema/generator/PojoGenerator.java| 11 ++- johnzon-mapper/pom.xml| 2 +- johnzon-maven-plugin/pom.xml | 2 +- johnzon-osgi/pom.xml | 2 +- johnzon-websocket/pom.xml | 2 +- pom.xml | 2 +- 14 files changed, 19 insertions(+), 18 deletions(-)
[johnzon] branch master updated: PojoGenerator extension point before declaration
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 60ba23ca PojoGenerator extension point before declaration 60ba23ca is described below commit 60ba23cac6ac770e9f7edb4301c4ec5d492d2481 Author: Romain Manni-Bucau AuthorDate: Tue Aug 9 10:44:55 2022 +0200 PojoGenerator extension point before declaration --- .../org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 10 ++ 1 file changed, 10 insertions(+) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 5db62394..0f0ba037 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -77,6 +77,7 @@ public class PojoGenerator { .sorted() .map(it -> "import " + it + ";") .collect(joining("\n", "", "\n\n"))) + +beforeClassDeclaration() + "public class " + configuration.getClassName() + afterClassName() + " {\n" + (attributes.isEmpty() ? ("" + @@ -223,6 +224,14 @@ public class PojoGenerator { return ""; } +protected String beforeEnumDeclaration() { +return ""; +} + +protected String beforeClassDeclaration() { +return ""; +} + protected String asType(final String javaName, final JsonObject schema, final boolean required) { final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { @@ -334,6 +343,7 @@ public class PojoGenerator { "package " + configuration.getPackageName() + ";\n" + "\n" + enumImports() + +beforeEnumDeclaration() + "public enum " + className + afterEnumName(values, injectValues) + " {\n" + values.entrySet().stream() .map(it -> "" +
[johnzon] 02/02: [JOHNZON-387] inject more data in afterEnumName to avoid subclasses to recompute it
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit f4d074be27122e7bf022c64b1f37704fcb84b42c Author: Romain Manni-Bucau AuthorDate: Tue Aug 9 10:31:33 2022 +0200 [JOHNZON-387] inject more data in afterEnumName to avoid subclasses to recompute it --- .../org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 7264ddc5..5db62394 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -210,7 +210,12 @@ public class PojoGenerator { return ""; } -protected String afterEnumName() { +/** + * @param values the enum values (key is json name, value is java name). + * @param valuesAreInjected is there a toString() with json name or is the enum anemic (only values, no method) + * @return the data to add after enum name and before the opening brace in enum declaration. + */ +protected String afterEnumName(final Map values, final boolean valuesAreInjected) { return ""; } @@ -329,7 +334,7 @@ public class PojoGenerator { "package " + configuration.getPackageName() + ";\n" + "\n" + enumImports() + -"public enum " + className + afterEnumName() + " {\n" + +"public enum " + className + afterEnumName(values, injectValues) + " {\n" + values.entrySet().stream() .map(it -> "" + (injectValues && configuration.isAddJsonbProperty() ?
[johnzon] 01/02: [JOHNZON-387] expose toJavaName to subclasses in PojoGenerator
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit c98558803b72a5ddf32c62ca1cdd523a95ca72cb Author: Romain Manni-Bucau AuthorDate: Tue Aug 9 10:29:54 2022 +0200 [JOHNZON-387] expose toJavaName to subclasses in PojoGenerator --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index c50c4af2..7264ddc5 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -544,7 +544,7 @@ public class PojoGenerator { return JsonValue.class.getSimpleName(); } -private String toJavaName(final String key) { +protected String toJavaName(final String key) { String name = key.chars() .mapToObj(i -> Character.toString(!Character.isJavaIdentifierPart(i) ? '_' : (char) i)) .collect(joining());
[johnzon] branch master updated (ca39ffc8 -> f4d074be)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from ca39ffc8 [JOHNZON-387] enum extension points in PojoGenerator new c9855880 [JOHNZON-387] expose toJavaName to subclasses in PojoGenerator new f4d074be [JOHNZON-387] inject more data in afterEnumName to avoid subclasses to recompute it The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../apache/johnzon/jsonschema/generator/PojoGenerator.java| 11 --- 1 file changed, 8 insertions(+), 3 deletions(-)
[johnzon] branch master updated: [JOHNZON-387] enum extension points in PojoGenerator
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new ca39ffc8 [JOHNZON-387] enum extension points in PojoGenerator ca39ffc8 is described below commit ca39ffc8e45b0c9d4e407a35297e3740b6342737 Author: Romain Manni-Bucau AuthorDate: Tue Aug 9 10:25:28 2022 +0200 [JOHNZON-387] enum extension points in PojoGenerator --- .../johnzon/jsonschema/generator/PojoGenerator.java | 16 +++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 00989c38..c50c4af2 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -198,6 +198,10 @@ public class PojoGenerator { return null; // todo: check if already in nested for ex } +protected String beforeEnumEnd() { +return ""; +} + protected String beforeClassEnd() { return ""; } @@ -206,6 +210,14 @@ public class PojoGenerator { return ""; } +protected String afterEnumName() { +return ""; +} + +protected String enumImports() { +return ""; +} + protected String asType(final String javaName, final JsonObject schema, final boolean required) { final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { @@ -316,7 +328,8 @@ public class PojoGenerator { configuration.getPackageName().replace('.', '/') + '/' + className + ".java", "" + "package " + configuration.getPackageName() + ";\n" + "\n" + -"public enum " + className + " {\n" + +enumImports() + +"public enum " + className + afterEnumName() + " {\n" + values.entrySet().stream() .map(it -> "" + (injectValues && configuration.isAddJsonbProperty() ? @@ -338,6 +351,7 @@ public class PojoGenerator { "}\n" + "" : "") + +beforeEnumEnd() + "}\n"); return className; }
[johnzon] branch master updated: ensure sub pojogenerators can have the schema they relate to
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 19764534 ensure sub pojogenerators can have the schema they relate to 19764534 is described below commit 197645342ff8d844765886dd15a0f2b69a3111ff Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 19:19:07 2022 +0200 ensure sub pojogenerators can have the schema they relate to --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 5b02aed8..00989c38 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -425,7 +425,7 @@ public class PojoGenerator { .setClassName(className) .setAddJsonbProperty(configuration.isAddJsonbProperty()) .setAddAllArgsConstructor(configuration.isAddAllArgsConstructor()) -.setOnRef(configuration.getOnRef())) +.setOnRef(configuration.getOnRef()), schema) .visitSchema(schema) .generate()); return className; @@ -435,7 +435,7 @@ public class PojoGenerator { return JsonObject.class.getSimpleName(); } -protected PojoGenerator newSubPojoGenerator(final PojoConfiguration pojoConfiguration) { +protected PojoGenerator newSubPojoGenerator(final PojoConfiguration pojoConfiguration, final JsonObject schema) { return new PojoGenerator(pojoConfiguration); } @@ -467,7 +467,7 @@ public class PojoGenerator { .setClassName(className) .setAddJsonbProperty(configuration.isAddJsonbProperty()) .setAddAllArgsConstructor(configuration.isAddAllArgsConstructor()) -.setOnRef(configuration.getOnRef())) +.setOnRef(configuration.getOnRef()), schema) .visitSchema(schema) .generate()); return className;
[johnzon] branch master updated: Expose PojoGenerator#Attribute attributesfields to subclasses
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new cfdf37a5 Expose PojoGenerator#Attribute attributesfields to subclasses cfdf37a5 is described below commit cfdf37a5d16a42a0e8e254d61af7e5628cad82a2 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 19:17:23 2022 +0200 Expose PojoGenerator#Attribute attributesfields to subclasses --- .../johnzon/jsonschema/generator/PojoGenerator.java| 18 +++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index f63761ba..5b02aed8 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -670,15 +670,27 @@ public class PojoGenerator { } protected static class Attribute { -private final String javaName; -private final String jsonName; -private final String type; +protected final String javaName; +protected final String jsonName; +protected final String type; protected Attribute(final String javaName, final String jsonName, final String type) { this.javaName = javaName; this.jsonName = jsonName; this.type = type; } + +public String getJavaName() { +return javaName; +} + +public String getJsonName() { +return jsonName; +} + +public String getType() { +return type; +} } public static class Ref {
[johnzon] branch master updated: fixing field name in PojoGenerator (starting uppercase)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new dde6cd7d fixing field name in PojoGenerator (starting uppercase) dde6cd7d is described below commit dde6cd7df6f1bbecb5bf8b3ac8f29121e1e003ac Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 17:47:40 2022 +0200 fixing field name in PojoGenerator (starting uppercase) --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 9fd9f4c4..f63761ba 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -560,7 +560,7 @@ public class PojoGenerator { protected String toCamelCase(final String name) { final StringBuilder out = new StringBuilder(name.length()); -boolean up = true; +boolean up = false; for (final char c : name.toCharArray()) { if (up) { out.append(Character.toUpperCase(c));
[johnzon] branch master updated: try to have more java friendly names in PojoGenerator - bad completion
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 62dbff7b try to have more java friendly names in PojoGenerator - bad completion 62dbff7b is described below commit 62dbff7b08764c98bf7b1dff8e437322d073a51d Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 17:33:26 2022 +0200 try to have more java friendly names in PojoGenerator - bad completion --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 29316bec..9fd9f4c4 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -563,7 +563,7 @@ public class PojoGenerator { boolean up = true; for (final char c : name.toCharArray()) { if (up) { -out.append(Character.isUpperCase(c)); +out.append(Character.toUpperCase(c)); up = false; } else if (c == '_') { up = true;
[johnzon] branch master updated: try to have more java friendly names in PojoGenerator
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 544311af try to have more java friendly names in PojoGenerator 544311af is described below commit 544311af11052adaa686368c8cf8b1a57935c024 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 17:31:53 2022 +0200 try to have more java friendly names in PojoGenerator --- .../johnzon/jsonschema/generator/PojoGenerator.java | 20 1 file changed, 20 insertions(+) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 62bb2ccb..29316bec 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -548,12 +548,32 @@ public class PojoGenerator { name += "Value"; } +if (name.contains("_")) { +name = toCamelCase(name); +} + if (!Objects.equals(key, name) && configuration.isAddJsonbProperty()) { imports.add(JsonbProperty.class.getName()); } return name; } +protected String toCamelCase(final String name) { +final StringBuilder out = new StringBuilder(name.length()); +boolean up = true; +for (final char c : name.toCharArray()) { +if (up) { +out.append(Character.isUpperCase(c)); +up = false; +} else if (c == '_') { +up = true; +} else { +out.append(c); +} +} +return out.toString(); +} + protected boolean isReserved(final String name) { return "continue".equals(name) || "break".equals(name) || "default".equals(name) || "do".equals(name) || "while".equals(name) ||
[johnzon] branch master updated: adding enum to reserved words for pojo generator and being stricter on forbidden starting chars for fields
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new af7a399c adding enum to reserved words for pojo generator and being stricter on forbidden starting chars for fields af7a399c is described below commit af7a399ce876d98be44f60d7834c0e47f0d07530 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 16:48:38 2022 +0200 adding enum to reserved words for pojo generator and being stricter on forbidden starting chars for fields --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java| 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 28dbd705..62bb2ccb 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -537,7 +537,7 @@ public class PojoGenerator { if (Character.isDigit(name.charAt(0))) { name = "a" + name; } -while (name.startsWith("_")) { +while (!name.isEmpty() && (!Character.isJavaIdentifierStart(name.charAt(0)) || name.charAt(0) == '_' || name.charAt(0) == '$')) { name = name.substring(1); } if (name.isEmpty()) { @@ -559,6 +559,7 @@ public class PojoGenerator { "do".equals(name) || "while".equals(name) || "for".equals(name) || "if".equals(name) || "else".equals(name) || +"enum".equals(name) || "int".equals(name) || "long".equals(name) || "float".equals(name) ||
[johnzon] branch master updated: [JOHNZON-387] ensure ref has enclosing name - wrong param order
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new f908ae55 [JOHNZON-387] ensure ref has enclosing name - wrong param order f908ae55 is described below commit f908ae55b818f7c231a36e7bf3931773016f7900 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 16:16:13 2022 +0200 [JOHNZON-387] ensure ref has enclosing name - wrong param order --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 7f058ad9..28dbd705 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -443,8 +443,8 @@ public class PojoGenerator { final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { final String name = onRef(new Ref( -configuration.getClassName(), -JsonString.class.cast(ref).getString(), imports, attributes, nested)); +JsonString.class.cast(ref).getString(), configuration.getClassName(), +imports, attributes, nested)); if (name != null) { return name; }
[johnzon] 02/02: [JOHNZON-387] ensure ref has enclosing name
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit e70c27e5c0f0b8cb93a2cf3b64ecdb790c625686 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 16:12:41 2022 +0200 [JOHNZON-387] ensure ref has enclosing name --- .../johnzon/jsonschema/generator/PojoGenerator.java | 15 --- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 7625a2fb..7f058ad9 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -209,7 +209,8 @@ public class PojoGenerator { protected String asType(final String javaName, final JsonObject schema, final boolean required) { final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { -final String name = onRef(new Ref(JsonString.class.cast(ref).getString(), imports, attributes, nested)); +final String name = onRef(new Ref( +JsonString.class.cast(ref).getString(), configuration.getClassName(), imports, attributes, nested)); if (name != null) { return name; } @@ -441,7 +442,9 @@ public class PojoGenerator { protected String onItemSchema(final String javaName, final JsonObject schema) { final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { -final String name = onRef(new Ref(JsonString.class.cast(ref).getString(), imports, attributes, nested)); +final String name = onRef(new Ref( +configuration.getClassName(), +JsonString.class.cast(ref).getString(), imports, attributes, nested)); if (name != null) { return name; } @@ -659,18 +662,24 @@ public class PojoGenerator { public static class Ref { private final String ref; +private final String enclosingClass; private final Set imports; private final List attributes; private final Map nested; -private Ref(final String ref, final Set imports, +private Ref(final String ref, final String enclosingClass, final Set imports, final List attributes, final Map nested) { this.ref = ref; +this.enclosingClass = enclosingClass; this.imports = imports; this.attributes = attributes; this.nested = nested; } +public String getEnclosingClass() { +return enclosingClass; +} + public String getRef() { return ref; }
[johnzon] 01/02: adding int64 and int32 format support
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit 2dfde39e5421a3719d0a90f76f92d92df6d415ef Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 15:10:48 2022 +0200 adding int64 and int32 format support --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 6 ++ 1 file changed, 6 insertions(+) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 7c3a9a63..7625a2fb 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -258,8 +258,10 @@ public class PojoGenerator { return required ? "double" : "Double"; // openapi types case "int": +case "int32": case "integer": return required ? "int" : "Integer"; +case "int64": case "long": return required ? "long" : "Long"; case "float": @@ -383,9 +385,11 @@ public class PojoGenerator { imports.add(Map.class.getName()); return "Map"; case "int": +case "int32": case "integer": imports.add(Map.class.getName()); return "Map"; +case "int64": case "long": imports.add(Map.class.getName()); return "Map"; @@ -492,8 +496,10 @@ public class PojoGenerator { case "double": return "Double"; case "int": +case "int32": case "integer": return "Integer"; +case "int64": case "long": return "Long"; case "float":
[johnzon] branch master updated (e6316ce9 -> e70c27e5)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from e6316ce9 [JOHNZON-387] better modelisation of ref in pojo generator new 2dfde39e adding int64 and int32 format support new e70c27e5 [JOHNZON-387] ensure ref has enclosing name The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../johnzon/jsonschema/generator/PojoGenerator.java | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-)
[johnzon] branch master updated: [JOHNZON-387] better modelisation of ref in pojo generator
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new e6316ce9 [JOHNZON-387] better modelisation of ref in pojo generator e6316ce9 is described below commit e6316ce90b60e6c9e5f79b6d6dc390aa718e6512 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 15:01:53 2022 +0200 [JOHNZON-387] better modelisation of ref in pojo generator --- .../jsonschema/generator/PojoGenerator.java| 65 +++--- 1 file changed, 58 insertions(+), 7 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index d7b161ad..7c3a9a63 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -35,6 +35,7 @@ import java.util.Objects; import java.util.Set; import java.util.TreeMap; import java.util.TreeSet; +import java.util.function.Function; import java.util.stream.IntStream; import java.util.stream.Stream; @@ -190,7 +191,10 @@ public class PojoGenerator { * @param ref the reference to resolve. * @return the reference class name if resolved else null. */ -protected String onRef(final String ref) { +protected String onRef(final Ref ref) { +if (configuration.getOnRef() != null) { +return configuration.getOnRef().apply(ref); +} return null; // todo: check if already in nested for ex } @@ -205,7 +209,7 @@ public class PojoGenerator { protected String asType(final String javaName, final JsonObject schema, final boolean required) { final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { -final String name = onRef(JsonString.class.cast(ref).getString()); +final String name = onRef(new Ref(JsonString.class.cast(ref).getString(), imports, attributes, nested)); if (name != null) { return name; } @@ -411,11 +415,12 @@ public class PojoGenerator { } } else if (hasProperties) { final String className = configuration.getClassName() + Character.toUpperCase(javaName.charAt(0)) + javaName.substring(1); -nested.putAll(new PojoGenerator(new PojoConfiguration() +nested.putAll(newSubPojoGenerator(new PojoConfiguration() .setPackageName(configuration.getPackageName()) .setClassName(className) .setAddJsonbProperty(configuration.isAddJsonbProperty()) - .setAddAllArgsConstructor(configuration.isAddAllArgsConstructor())) + .setAddAllArgsConstructor(configuration.isAddAllArgsConstructor()) +.setOnRef(configuration.getOnRef())) .visitSchema(schema) .generate()); return className; @@ -425,10 +430,14 @@ public class PojoGenerator { return JsonObject.class.getSimpleName(); } +protected PojoGenerator newSubPojoGenerator(final PojoConfiguration pojoConfiguration) { +return new PojoGenerator(pojoConfiguration); +} + protected String onItemSchema(final String javaName, final JsonObject schema) { final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { -final String name = onRef(JsonString.class.cast(ref).getString()); +final String name = onRef(new Ref(JsonString.class.cast(ref).getString(), imports, attributes, nested)); if (name != null) { return name; } @@ -446,11 +455,12 @@ public class PojoGenerator { throw new IllegalStateException("Array of array unsupported"); case "object": final String className = configuration.getClassName() + Character.toUpperCase(javaName.charAt(0)) + javaName.substring(1); -nested.putAll(new PojoGenerator(new PojoConfiguration() +nested.putAll(newSubPojoGenerator(new PojoConfiguration() .setPackageName(configuration.getPackageName()) .setClassName(className) .setAddJsonbProperty(configuration.isAddJsonbProperty()) - .setAddAllArgsConstructor(configuration.isAddAllArgsConstructor())) + .setAddAllArgsConstructor(configuration.isAddAllArgsConstructor()) +
[johnzon] branch master updated: [JOHNZON-387] fixing ref name in jsonschema
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 58fd2082 [JOHNZON-387] fixing ref name in jsonschema 58fd2082 is described below commit 58fd208253d555e67bb2a867153a5aa9c12ca132 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 14:46:03 2022 +0200 [JOHNZON-387] fixing ref name in jsonschema --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index 1cb7193c..d7b161ad 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -203,7 +203,7 @@ public class PojoGenerator { } protected String asType(final String javaName, final JsonObject schema, final boolean required) { -final JsonValue ref = schema.get("ref"); +final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { final String name = onRef(JsonString.class.cast(ref).getString()); if (name != null) { @@ -426,7 +426,7 @@ public class PojoGenerator { } protected String onItemSchema(final String javaName, final JsonObject schema) { -final JsonValue ref = schema.get("ref"); +final JsonValue ref = schema.get("$ref"); if (ref != null && ref.getValueType() == JsonValue.ValueType.STRING) { final String name = onRef(JsonString.class.cast(ref).getString()); if (name != null) {
[johnzon] branch master updated: adding default to reserved keywords
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 7295128a adding default to reserved keywords 7295128a is described below commit 7295128a94fd0b4cc829c22353c42e5db0bc19e1 Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 12:12:15 2022 +0200 adding default to reserved keywords --- .../java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java index b410e848..1cb7193c 100644 --- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -536,7 +536,7 @@ public class PojoGenerator { } protected boolean isReserved(final String name) { -return "continue".equals(name) || "break".equals(name) || +return "continue".equals(name) || "break".equals(name) || "default".equals(name) || "do".equals(name) || "while".equals(name) || "for".equals(name) || "if".equals(name) || "else".equals(name) ||
[johnzon] branch master updated: [JOHNZON-387] basic jsonschema to pojo generation logic
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 5ca42f7f [JOHNZON-387] basic jsonschema to pojo generation logic 5ca42f7f is described below commit 5ca42f7f9013b5aaf31ec66803929be35f98152d Author: Romain Manni-Bucau AuthorDate: Mon Aug 8 11:56:06 2022 +0200 [JOHNZON-387] basic jsonschema to pojo generation logic --- johnzon-jsonschema/pom.xml | 2 +- .../jsonschema/generator/PojoGenerator.java| 633 .../jsonschema/generator/PojoGeneratorTest.java| 624 .../src/test/resources/ConfigMap.json | 193 +++ johnzon-jsonschema/src/test/resources/Node.json| 634 + .../johnzon/maven/plugin/JsonSchemaToPojoMojo.java | 129 + pom.xml| 4 +- 7 files changed, 2216 insertions(+), 3 deletions(-) diff --git a/johnzon-jsonschema/pom.xml b/johnzon-jsonschema/pom.xml index a03ba174..38464977 100644 --- a/johnzon-jsonschema/pom.xml +++ b/johnzon-jsonschema/pom.xml @@ -32,7 +32,7 @@ org.jruby.joni joni - 2.1.16 + 2.1.41 provided true diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java new file mode 100644 index ..b410e848 --- /dev/null +++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/generator/PojoGenerator.java @@ -0,0 +1,633 @@ +/* + * 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. + */ +package org.apache.johnzon.jsonschema.generator; + +import javax.json.JsonObject; +import javax.json.JsonString; +import javax.json.JsonValue; +import javax.json.bind.annotation.JsonbProperty; +import java.time.Duration; +import java.time.LocalDate; +import java.time.LocalTime; +import java.time.OffsetDateTime; +import java.util.AbstractMap; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.TreeMap; +import java.util.TreeSet; +import java.util.stream.IntStream; +import java.util.stream.Stream; + +import static java.util.Collections.singletonMap; +import static java.util.Comparator.comparing; +import static java.util.function.Function.identity; +import static java.util.stream.Collectors.joining; +import static java.util.stream.Collectors.toList; +import static java.util.stream.Collectors.toMap; + +// todo: support ref resolution for schema and avoid to generate as much classes as attributes +public class PojoGenerator { +private final PojoConfiguration configuration; + +protected final Set imports = new TreeSet<>(String::compareTo); +protected final List attributes = new ArrayList<>(); +protected final Map nested = new TreeMap<>(String::compareTo); + +public PojoGenerator(final PojoConfiguration configuration) { +this.configuration = configuration; +} + +public PojoGenerator setNested(final Map nested) { +this.nested.putAll(nested); +return this; +} + +public Map generate() { +final String name = configuration.getPackageName() + '.' + configuration.getClassName(); +final String path = name.replace('.', '/') + ".java"; +attributes.sort(comparing(a -> a.javaName)); +if (!attributes.isEmpty()) { +imports.add(Objects.class.getName()); +} +final String content = "" + +"package " + configuration.getPackageName() + ";\n" + +"\n" + +(imports.isEmpty() ? "" : imports.stream() +.sorted() +.map(it -> "import " + it + ";") +.collect(joining("\n", "",
[maven-wrapper] branch enable-to-customize-classworlds.conf created (now 70289ea)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch enable-to-customize-classworlds.conf in repository https://gitbox.apache.org/repos/asf/maven-wrapper.git at 70289ea Enable to customize classworlds.conf This branch includes the following new commits: new 70289ea Enable to customize classworlds.conf The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[maven-wrapper] 01/01: Enable to customize classworlds.conf
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch enable-to-customize-classworlds.conf in repository https://gitbox.apache.org/repos/asf/maven-wrapper.git commit 70289ea81465aa5c4410127833fe906b5f71c3c9 Author: Romain Manni-Bucau AuthorDate: Thu Aug 4 11:15:36 2022 +0200 Enable to customize classworlds.conf --- .../apache/maven/wrapper/BootstrapMainStarter.java | 37 -- .../org/apache/maven/wrapper/WrapperExecutor.java | 2 +- .../apache/maven/wrapper/WrapperExecutorTest.java | 8 +++-- 3 files changed, 41 insertions(+), 6 deletions(-) diff --git a/maven-wrapper/src/main/java/org/apache/maven/wrapper/BootstrapMainStarter.java b/maven-wrapper/src/main/java/org/apache/maven/wrapper/BootstrapMainStarter.java index 71f4186..f64ca7f 100644 --- a/maven-wrapper/src/main/java/org/apache/maven/wrapper/BootstrapMainStarter.java +++ b/maven-wrapper/src/main/java/org/apache/maven/wrapper/BootstrapMainStarter.java @@ -21,6 +21,7 @@ package org.apache.maven.wrapper; import java.io.FileNotFoundException; import java.io.IOException; +import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.net.URL; import java.net.URLClassLoader; @@ -29,6 +30,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.util.Iterator; import java.util.Locale; +import java.util.Properties; /** * Maven starter, from a provided Maven home directory. @@ -37,22 +39,51 @@ import java.util.Locale; */ public class BootstrapMainStarter { -public void start( String[] args, Path mavenHome ) +public void start( String[] args, Path mavenHome, Properties properties ) throws Exception { final Path mavenJar = findLauncherJar( mavenHome ); URLClassLoader contextClassLoader = new URLClassLoader( new URL[] { mavenJar.toUri().toURL() }, - ClassLoader.getSystemClassLoader().getParent() ); +ClassLoader.getSystemClassLoader().getParent() ); + +// can be useful to leak the classloader with some daemon mojo but generally a wrong idea so off by default +if ( Boolean.parseBoolean( properties.getProperty( getClass().getName() + ".leakClassloader" ) ) ) +{ +doStart( args, mavenHome, properties, contextClassLoader ); +return; +} + +try ( final URLClassLoader ref = contextClassLoader ) +{ +doStart( args, mavenHome, properties, contextClassLoader ); +} +} + +private void doStart( final String[] args, final Path mavenHome, + final Properties properties, + final URLClassLoader contextClassLoader ) +throws ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException +{ Thread.currentThread().setContextClassLoader( contextClassLoader ); Class mainClass = contextClassLoader.loadClass( "org.codehaus.plexus.classworlds.launcher.Launcher" ); System.setProperty( "maven.home", mavenHome.toAbsolutePath().toString() ); -System.setProperty( "classworlds.conf", mavenHome.resolve( "bin/m2.conf" ).toAbsolutePath().toString() ); +System.setProperty( "classworlds.conf", getClassworldsConf( properties, mavenHome ) ); Method mainMethod = mainClass.getMethod( "main", String[].class ); mainMethod.invoke( null, new Object[] { args } ); } +private String getClassworldsConf( Properties properties, Path mavenHome ) +{ +final String override = properties.getProperty( "classworlds.conf" ); +if ( override != null ) +{ +return override; +} +return mavenHome.resolve( "bin/m2.conf" ).toAbsolutePath().toString(); +} + private Path findLauncherJar( Path mavenHome ) throws IOException { diff --git a/maven-wrapper/src/main/java/org/apache/maven/wrapper/WrapperExecutor.java b/maven-wrapper/src/main/java/org/apache/maven/wrapper/WrapperExecutor.java index f69d7cc..f606fba 100644 --- a/maven-wrapper/src/main/java/org/apache/maven/wrapper/WrapperExecutor.java +++ b/maven-wrapper/src/main/java/org/apache/maven/wrapper/WrapperExecutor.java @@ -177,7 +177,7 @@ public class WrapperExecutor throws Exception { Path mavenHome = install.createDist( config ); -bootstrapMainStarter.start( args, mavenHome ); +bootstrapMainStarter.start( args, mavenHome, properties ); } private String getProperty( String propertyName ) diff --git a/maven-wrapper/src/test/java/org/apache/maven/wrapper/WrapperExecutorTest.java b/maven-wrapper/src/test/java/org/apache/maven/wrapper/WrapperExecutorTest.java index fb91f2d..9e874d6 100644 --- a/maven-wrapper/src
[johnzon] branch master updated: fixing too much exception wrapping test and impl
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 87fd97f9 fixing too much exception wrapping test and impl 87fd97f9 is described below commit 87fd97f91321eb269537ae72047512b7bb1ca5d5 Author: Romain Manni-Bucau AuthorDate: Thu Aug 4 07:58:23 2022 +0200 fixing too much exception wrapping test and impl --- .../apache/johnzon/mapper/MappingParserImpl.java | 80 +++--- .../MapperBeanConstructorExceptionsTest.java | 8 +-- 2 files changed, 43 insertions(+), 45 deletions(-) diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java index f98edb6d..711453d8 100644 --- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java +++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java @@ -69,12 +69,14 @@ import java.util.TreeSet; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import java.util.function.Function; import java.util.stream.DoubleStream; import java.util.stream.IntStream; import java.util.stream.LongStream; import java.util.stream.Stream; import static java.util.Arrays.asList; +import static java.util.stream.Collectors.joining; import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toMap; import static javax.json.JsonValue.ValueType.ARRAY; @@ -253,13 +255,8 @@ public class MappingParserImpl implements MappingParser { private Object buildObject(final Type inType, final JsonObject object, final boolean applyObjectConverter, final JsonPointerTracker jsonPointer, final Collection> skippedConverters) { -Type type = inType; -if (inType == Object.class) { -type = new JohnzonParameterizedType(Map.class, String.class, Object.class); -} - +final Type type = inType == Object.class ? new JohnzonParameterizedType(Map.class, String.class, Object.class) : inType; if (applyObjectConverter && !(type instanceof ParameterizedType)) { - if (!(type instanceof Class)) { throw new MapperException("ObjectConverters are only supported for Classes not Types"); } @@ -295,7 +292,6 @@ public class MappingParserImpl implements MappingParser { final Type[] fieldArgTypes = aType.getActualTypeArguments(); if (fieldArgTypes.length >= 2) { final Class raw = Class.class.cast(aType.getRawType()); - final Map map; if (SortedMap.class.isAssignableFrom(raw) || NavigableMap.class == raw || TreeMap.class == raw) { map = config.getAttributeOrder() == null ? new TreeMap() : new TreeMap(config.getAttributeOrder()); @@ -314,14 +310,7 @@ public class MappingParserImpl implements MappingParser { } if (map != null) { - -Type keyType; -if (ParameterizedType.class.isInstance(fieldArgTypes[0])) { -keyType = fieldArgTypes[0]; -} else { -keyType = fieldArgTypes[0]; -} - +final Type keyType = fieldArgTypes[0]; final boolean any = fieldArgTypes.length < 2 || fieldArgTypes[1] == Object.class; for (final Map.Entry value : object.entrySet()) { final JsonValue jsonValue = value.getValue(); @@ -367,12 +356,10 @@ public class MappingParserImpl implements MappingParser { if (classMapping.factory == null) { throw new MissingFactoryException(classMapping.clazz, object, config.getSnippet().of(object)); } - if (config.isFailOnUnknown()) { if (!classMapping.setters.keySet().containsAll(object.keySet())) { -throw new MapperException("(fail on unknown properties): " + new HashSet(object.keySet()) {{ -removeAll(classMapping.setters.keySet()); -}}); +throw new MapperException("(fail on unknown properties): " + +object.keySet().stream().filter(it -> !classMapping.setters.containsKey(it)).collect(joining(", ", "[", "]"))); } } @@ -381,13 +368,17 @@ public class MappingParserImpl implements MappingParser { if (classMapping.factory.getParameterTypes() == null || classMapping.factory.getParameterTypes().length ==
[johnzon] branch master updated: checkstyle fix
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new f655ae33 checkstyle fix f655ae33 is described below commit f655ae33f7fe56136ee2f04a5c62f0728559591f Author: Romain Manni-Bucau AuthorDate: Tue Jul 19 13:42:03 2022 +0200 checkstyle fix --- .../src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java | 1 - .../src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java| 2 +- .../src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java index bbeb2d46..400dfcfa 100644 --- a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java +++ b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java @@ -55,7 +55,6 @@ import java.io.Closeable; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; -import java.lang.reflect.TypeVariable; import java.nio.charset.StandardCharsets; import java.util.*; import java.util.concurrent.atomic.AtomicReference; diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java index e690f211..256f855a 100644 --- a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java +++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java @@ -32,7 +32,7 @@ public class JsonbAdapterTest { public JsonbRule jsonbRule = new JsonbRule().withTypeAdapter(new ColorIdAdapter()); @Test -public void test_inherited_adapter_recognized() { +public void testInheritedAdapterRecognized() { // given ColorId colorId = new ColorId("#336699"); diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java index 43575ed4..62779863 100644 --- a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java +++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/test/JsonbRule.java @@ -18,7 +18,6 @@ */ package org.apache.johnzon.jsonb.test; -import org.apache.johnzon.jsonb.JsonbAdapterTest; import org.apache.johnzon.jsonb.api.experimental.JsonbExtension; import org.junit.rules.TestRule; import org.junit.runner.Description;
[johnzon] branch master updated: [JOHNZON-386] Make JsonbAdapter inheritable
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 6b106280 [JOHNZON-386] Make JsonbAdapter inheritable new a6ae280c Merge pull request #92 from bmarwell/JOHNZON-386_inherited_jsonbadapter 6b106280 is described below commit 6b106280436466fe7b920a97c774075b98d34832 Author: Benjamin Marwell AuthorDate: Tue Jul 19 12:32:15 2022 +0200 [JOHNZON-386] Make JsonbAdapter inheritable Co-authored-by: Romain Manni-Bucau --- .../org/apache/johnzon/jsonb/JohnzonBuilder.java | 15 ++-- .../org/apache/johnzon/jsonb/JsonbAdapterTest.java | 79 ++ .../org/apache/johnzon/jsonb/test/JsonbRule.java | 8 +++ 3 files changed, 92 insertions(+), 10 deletions(-) diff --git a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java index 2e2f2a48..bbeb2d46 100644 --- a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java +++ b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JohnzonBuilder.java @@ -55,13 +55,9 @@ import java.io.Closeable; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; +import java.lang.reflect.TypeVariable; import java.nio.charset.StandardCharsets; -import java.util.Base64; -import java.util.Comparator; -import java.util.HashMap; -import java.util.Locale; -import java.util.Map; -import java.util.Optional; +import java.util.*; import java.util.concurrent.atomic.AtomicReference; import java.util.function.Supplier; import java.util.stream.Stream; @@ -238,10 +234,10 @@ public class JohnzonBuilder implements JsonbBuilder { .ifPresent(builder::setSnippetMaxLength); // user adapters +final Types types = new Types(); + config.getProperty(JsonbConfig.ADAPTERS).ifPresent(adapters -> Stream.of(JsonbAdapter[].class.cast(adapters)).forEach(adapter -> { -final ParameterizedType pt = ParameterizedType.class.cast( -Stream.of(adapter.getClass().getGenericInterfaces()) - .filter(i -> ParameterizedType.class.isInstance(i) && ParameterizedType.class.cast(i).getRawType() == JsonbAdapter.class).findFirst().orElse(null)); +final ParameterizedType pt = types.findParameterizedType(adapter.getClass(), JsonbAdapter.class); if (pt == null) { throw new IllegalArgumentException(adapter + " doesn't implement JsonbAdapter"); } @@ -286,7 +282,6 @@ public class JohnzonBuilder implements JsonbBuilder { getBeanManager(); // force detection } -final Types types = new Types(); builder.setReadAttributeBeforeWrite( config.getProperty("johnzon.readAttributeBeforeWrite").map(Boolean.class::cast).orElse(false)); builder.setAutoAdjustStringBuffers( diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java new file mode 100644 index ..e690f211 --- /dev/null +++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterTest.java @@ -0,0 +1,79 @@ +/* + * 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. + */ +package org.apache.johnzon.jsonb; + +import org.apache.johnzon.jsonb.test.JsonbRule; +import org.junit.Rule; +import org.junit.Test; + +import javax.json.bind.adapter.JsonbAdapter; + +import static org.junit.Assert.assertEquals; + +public class JsonbAdapterTest { + +@Rule +public JsonbRule jsonbRule = new JsonbRule().withTypeAdapter(new ColorIdAdapter()); + +@Test +public void test_inherited_adapter_recognized() { +// given +ColorId colorId = new ColorId("#336699"); + +// when +String json = jsonbRule.toJson(colorId); + +// then +assertEquals("\"#336699\"", js
svn commit: r55800 - /release/incubator/batchee/
Author: rmannibucau Date: Sun Jul 17 16:16:32 2022 New Revision: 55800 Log: dropping batchee incubator since project is no more incubating Removed: release/incubator/batchee/
[bval] branch tck-jakarta updated: don't clone parameter values when validating parameters
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch tck-jakarta in repository https://gitbox.apache.org/repos/asf/bval.git The following commit(s) were added to refs/heads/tck-jakarta by this push: new 079aa79 don't clone parameter values when validating parameters 079aa79 is described below commit 079aa79b6f2a5077b802f2d080b2ee1a28abce1f Author: Romain Manni-Bucau AuthorDate: Thu Jun 2 11:16:45 2022 +0200 don't clone parameter values when validating parameters --- .../main/java/org/apache/bval/jsr/job/ValidateParameters.java | 2 +- bval-tck-jakarta/work-tests-suite.xml | 10 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/job/ValidateParameters.java b/bval-jsr/src/main/java/org/apache/bval/jsr/job/ValidateParameters.java index 25ab986..a6b9ced 100644 --- a/bval-jsr/src/main/java/org/apache/bval/jsr/job/ValidateParameters.java +++ b/bval-jsr/src/main/java/org/apache/bval/jsr/job/ValidateParameters.java @@ -167,7 +167,7 @@ public abstract class ValidateParameters extends Valida super(validatorContext, groups, meta); this.object = object; this.parameterValues = -Validate.notNull(parameterValues, IllegalArgumentException::new, "null parameter values").clone(); +Validate.notNull(parameterValues, IllegalArgumentException::new, "null parameter values"); final Type[] genericParameterTypes = executable.getGenericParameterTypes(); Exceptions.raiseUnless(parameterValues.length == genericParameterTypes.length, IllegalArgumentException::new, diff --git a/bval-tck-jakarta/work-tests-suite.xml b/bval-tck-jakarta/work-tests-suite.xml index bd872ff..d665347 100644 --- a/bval-tck-jakarta/work-tests-suite.xml +++ b/bval-tck-jakarta/work-tests-suite.xml @@ -21,11 +21,11 @@ think to add -Dvalidation.provider=org.apache.bval.jsr.ApacheValidationProvider - - - + + + + +
[bval] branch tck-jakarta updated: fix testenricher cdi setup
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch tck-jakarta in repository https://gitbox.apache.org/repos/asf/bval.git The following commit(s) were added to refs/heads/tck-jakarta by this push: new 1b72e83 fix testenricher cdi setup 1b72e83 is described below commit 1b72e835e332b5a1483742b1a8f0fe759cd881ed Author: Romain Manni-Bucau AuthorDate: Thu Jun 2 10:54:23 2022 +0200 fix testenricher cdi setup --- bval-tck-jakarta/pom.xml | 14 -- bval-tck-jakarta/work-tests-suite.xml | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/bval-tck-jakarta/pom.xml b/bval-tck-jakarta/pom.xml index 0ad1293..04ce792 100644 --- a/bval-tck-jakarta/pom.xml +++ b/bval-tck-jakarta/pom.xml @@ -31,8 +31,9 @@ under the License. Aggregates dependencies and runs the JSR-380 TCK with Jakarta Bean Validation 3.0 + ${project.basedir}/src/test/beanvalidation-tck-tests-suite.xml 3.0.0 -2.0.27-SNAPSHOT +2.0.28-SNAPSHOT 1.7.0.Alpha10 org.apache.bval.jsr.ApacheValidationProvider 10.0.21 @@ -108,8 +109,17 @@ under the License. org.apache.openwebbeans * + +org.jboss.arquillian.testenricher +arquillian-testenricher-cdi + + +org.jboss.arquillian.testenricher +arquillian-testenricher-cdi-jakarta +1.7.0.Alpha10 + org.apache.openwebbeans openwebbeans-spi @@ -217,7 +227,7 @@ under the License. -Duser.language=en - ${basedir}/src/test/beanvalidation-tck-tests-suite.xml +${suite} diff --git a/bval-tck-jakarta/work-tests-suite.xml b/bval-tck-jakarta/work-tests-suite.xml index 9997a27..bd872ff 100644 --- a/bval-tck-jakarta/work-tests-suite.xml +++ b/bval-tck-jakarta/work-tests-suite.xml @@ -21,7 +21,7 @@ think to add -Dvalidation.provider=org.apache.bval.jsr.ApacheValidationProvider - +
[johnzon] branch master updated: adding a test showing the PR review comment and why current exception handling is not yet release ready
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new c2bf6945 adding a test showing the PR review comment and why current exception handling is not yet release ready c2bf6945 is described below commit c2bf6945c2ca43befa93e15d821e0dee439aa8de Author: Romain Manni-Bucau AuthorDate: Mon May 16 08:53:12 2022 +0200 adding a test showing the PR review comment and why current exception handling is not yet release ready --- .../MapperBeanConstructorExceptionsTest.java | 66 ++ 1 file changed, 66 insertions(+) diff --git a/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/MapperBeanConstructorExceptionsTest.java b/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/MapperBeanConstructorExceptionsTest.java index 2615fe0a..3abb1ce6 100644 --- a/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/MapperBeanConstructorExceptionsTest.java +++ b/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/MapperBeanConstructorExceptionsTest.java @@ -20,11 +20,50 @@ import org.junit.Test; import java.beans.ConstructorProperties; import java.lang.reflect.Type; +import java.util.Collection; +import java.util.Iterator; +import java.util.Spliterator; + +import static java.util.Spliterators.spliteratorUnknownSize; +import static java.util.stream.Collectors.toList; +import static java.util.stream.StreamSupport.stream; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.fail; public class MapperBeanConstructorExceptionsTest { private static final RuntimeException USER_EXCEPTION = new RuntimeException("I am user, hear me roar"); +@Test +public void singleExceptionMapperInCause() { +try (final Mapper mapper = new MapperBuilder().setSnippetMaxLength(20).build()) { +mapper.readObject("{ \"string\" : \"whatever\" }", Rectangle.class); +fail("should have failed"); +} catch (final MapperException me) { +final Collection exceptionStack = stream(spliteratorUnknownSize(new Iterator() { +private Throwable current = me; + +@Override +public boolean hasNext() { +return current != null; +} + +@Override +public Throwable next() { +final Throwable throwable = current; +current = current.getCause() == current ? null : current.getCause(); +return throwable; +} +}, Spliterator.IMMUTABLE), false).collect(toList()); +assertEquals(3, exceptionStack.size()); + +// warn: this *must* be 1 which requires to ensure the MapperException thrown by +// org.apache.johnzon.mapper.MappingParserImpl.toValue is mutable to add the context/right message +// (no need to strip it, an alternative could be to use addSuppressed but it would keep creating stacks for nothing) +assertEquals(2, exceptionStack.stream().filter(MapperException.class::isInstance).count()); +} +} + @Test public void constructor() { ExceptionAsserts.fromMapperReadObject("{ \"string\" : \"Supercalifragilisticexpialidocious\" }", Circle.class) @@ -105,6 +144,23 @@ public class MapperBeanConstructorExceptionsTest { } } +public static class Rectangle { +private String string; + +@ConstructorProperties({"string"}) +public Rectangle(@JohnzonConverter(FailingConverter.class) final String string) { +fail("shouldn't be reached"); +} + +public String getString() { +return string; +} + +public void setString(final String string) { +this.string = string; +} +} + public static class Oval { private String s; @@ -128,5 +184,15 @@ public class MapperBeanConstructorExceptionsTest { public interface Sphere { } +public static class FailingConverter implements Converter { +@Override +public String toString(final T instance) { +throw USER_EXCEPTION; +} +@Override +public T fromString(final String text) { +throw USER_EXCEPTION; +} +} }
[johnzon] branch master updated (62fc2346 -> 877fe134)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from 62fc2346 support jakarta classifier for jsonlogic module new 3250243a Catalog of deserialization error messages as they are now new ee3fc2f4 Merge branch 'master' of github.com:apache/johnzon into exception-messages new fd91756d JOHNZON-370 Include class, property, type and json value in mapping exceptions new 7d43052d JOHNZON-372 Entire json value serialized in exception new 70441979 JOHNZON-372 Entire json value serialized in exception new c7b6ce5f JOHNZON-372 Entire json value serialized in exception new 2312ec83 Align wording in "Can't map JSON Object" exception with other exceptions new 11603885 Test cases for all primitive arrays show handling as-is Prior to fixing JOHNZON-371 new e743eed6 JOHNZON-371 NullPointerException thrown when null value present in primitive arrays new 0f6c80eb Add final to static-utility class new c797e133 JOHNZON-376 Mapper API Bean setter user exceptions tests new 21fd9dd3 JOHNZON-376 Mapper API Bean getter user exceptions tests new 9a0f70a2 JOHNZON-382 Diagnose and guide users on invalid bean constructors JOHNZON-376 Mapper API Bean constructor exceptions tests new e49def40 JOHNZON-374 Mapper API Adapter method exception tests new 19fa465a JOHNZON-375 Mapper API Converter methods and constructor exceptions tests new 550bbb1a JOHNZON-381 JsonbAdapter methods and constructor exceptions tests new d8bb51e6 JOHNZON-377 Jsonb bean setter user exceptions test new b0b10cb1 JOHNZON-377 Jsonb bean getter and constructor exception tests new 014889d8 JOHNZON-379 & JOHNZON-380 Jsonb{De}Serializer methods and constructor new 95e8b23a JOHNZON-378 JsonbCreator constructor and factory method exceptions tests new 5e38eda6 Use ExceptionAsserts new 3621f9bd JOHNZON-370 Deserialization Exception message tests for Mapper API new befd7f5a Add Wildcard and GenericArray handling to ExceptionMessages.simpleName new f6e918a1 Prevent recursive wrapping new 877fe134 Merge pull request #91 from dblevins/exception-message-improvements The 916 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../DeserializationExceptionMessagesTest.java | 1540 .../org/apache/johnzon/jsonb/ExceptionAsserts.java | 123 ++ .../johnzon/jsonb/JsonbAdapterExceptionsTest.java | 261 .../jsonb/JsonbBeanConstructorExceptionsTest.java | 133 ++ .../jsonb/JsonbBeanGetterUserExceptionsTest.java | 47 + .../jsonb/JsonbBeanSetterUserExceptionsTest.java | 479 ++ .../johnzon/jsonb/JsonbCreatorExceptionsTest.java | 82 ++ .../jsonb/JsonbSerializerExceptionsTest.java | 212 +++ .../apache/johnzon/jsonb/SnippetMaxLengthTest.java | 24 +- .../apache/johnzon/mapper/ExceptionMessages.java | 108 ++ .../johnzon/mapper/FactoryCreateException.java | 27 +- .../apache/johnzon/mapper/MappingParserImpl.java | 141 +- .../johnzon/mapper/MissingFactoryException.java| 65 + .../johnzon/mapper/SetterMappingException.java | 42 + .../DeserializationExceptionMessagesTest.java | 1539 +++ .../apache/johnzon/mapper/ExceptionAsserts.java| 106 ++ .../mapper/MapperAdapterExceptionsTest.java| 193 +++ .../MapperBeanConstructorExceptionsTest.java | 132 ++ .../mapper/MapperBeanGetterUserExceptionsTest.java | 45 + .../mapper/MapperBeanSetterUserExceptionsTest.java | 478 ++ .../mapper/MapperConverterExceptionsTest.java | 215 +++ .../apache/johnzon/mapper/TypeSimpleNameTest.java | 88 ++ 22 files changed, 6015 insertions(+), 65 deletions(-) create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/DeserializationExceptionMessagesTest.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/ExceptionAsserts.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbAdapterExceptionsTest.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbBeanConstructorExceptionsTest.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbBeanGetterUserExceptionsTest.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbBeanSetterUserExceptionsTest.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbCreatorExceptionsTest.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/JsonbSerializerExceptionsTest.java create mode 100644 johnzon-mapper/src/main/java/org/apache/johnzon/m
[openwebbeans] branch master updated: [OWB-1404] drop jboss http repository from the build to enable mvn 3.8 build
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans.git The following commit(s) were added to refs/heads/master by this push: new 7549493fb [OWB-1404] drop jboss http repository from the build to enable mvn 3.8 build 7549493fb is described below commit 7549493fb82b9fd024341a1627cc944a9c68cddd Author: Romain Manni-Bucau AuthorDate: Fri May 13 08:37:38 2022 +0200 [OWB-1404] drop jboss http repository from the build to enable mvn 3.8 build --- pom.xml | 23 +-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e26d7381f..7cc5bf74b 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,23 @@ scm:git:https://gitbox.apache.org/repos/asf/openwebbeans.git https://github.com/apache/openwebbeans openwebbeans-2.0.25 - + + + + +jboss-public-repository-group +JBoss Public Maven Repository Group +https://repository.jboss.org/nexus/content/groups/public + +true +never + + +false +never + + + jira @@ -77,7 +93,7 @@ 2.3.6 4.18 1.1.13.Final -2.0.3.Final +2.0.5.Final 4.5.13 2.4 @@ -85,6 +101,9 @@ 2.0 3.2.4 + + +false
[johnzon] branch master updated: support jakarta classifier for jsonlogic module
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 62fc2346 support jakarta classifier for jsonlogic module 62fc2346 is described below commit 62fc2346a750743bf935c6ae19b2ac2e64fe5d61 Author: Romain Manni-Bucau AuthorDate: Thu May 12 17:35:09 2022 +0200 support jakarta classifier for jsonlogic module --- johnzon-jsonlogic/pom.xml | 10 ++ 1 file changed, 10 insertions(+) diff --git a/johnzon-jsonlogic/pom.xml b/johnzon-jsonlogic/pom.xml index 1710bfa0..a9d7643f 100644 --- a/johnzon-jsonlogic/pom.xml +++ b/johnzon-jsonlogic/pom.xml @@ -37,4 +37,14 @@ test + + + + +org.apache.maven.plugins +maven-shade-plugin +3.2.2 + + +
[johnzon] 01/01: ensure johnzon-core is not used in mapper/jsonb + minor fixed on Snippet buffering
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git commit cc3a51197a21298f0e44aec358df8a1e9cbaed30 Merge: 133273d5 ab20eea0 Author: Romain Manni-Bucau AuthorDate: Thu Apr 28 10:06:49 2022 +0200 ensure johnzon-core is not used in mapper/jsonb + minor fixed on Snippet buffering .../java/org/apache/johnzon/core/Buffered.java | 2 +- .../johnzon/core/JsonGeneratorFactoryImpl.java | 42 +++--- .../main/java/org/apache/johnzon/core/Snippet.java | 163 - .../main/java/org/apache/johnzon/core/Types.java | 15 -- .../java/org/apache/johnzon/core/SnippetTest.java | 2 +- .../org/apache/johnzon/jsonb/JohnzonBuilder.java | 18 +-- .../org/apache/johnzon/jsonb/JsonbAccessMode.java | 2 +- .../org/apache/johnzon/jsonb/reflect}/Types.java | 43 ++ .../org/apache/johnzon/mapper/JohnzonCores.java| 32 +++- .../johnzon/mapper/JohnzonVirtualObject.java | 3 - .../org/apache/johnzon/mapper/MapperBuilder.java | 5 +- .../org/apache/johnzon/mapper/MapperConfig.java| 15 +- ...hnzonVirtualObject.java => SnippetFactory.java} | 35 + .../mapper/internal/JsonPointerTracker.java| 55 --- 14 files changed, 208 insertions(+), 224 deletions(-) diff --cc johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MapperConfig.java index eb8affc5,824c6707..1bc01752 --- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MapperConfig.java +++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MapperConfig.java @@@ -158,8 -157,8 +157,8 @@@ public /* DON'T MAKE IT HIDDEN */ clas final Predicate> deserializationPredicate, final Predicate> serializationPredicate, final Function, CustomEnumConverter> enumConverterFactory, - final Snippet snippet) { - //CHECKSTYLE:ON + final SnippetFactory snippet) { -//CHECKSTYLE:ON ++//CHECKSTYLE:ON this.objectConverterWriters = objectConverterWriters; this.objectConverterReaders = objectConverterReaders; this.version = version; @@@ -312,8 -311,8 +311,8 @@@ } private T findObjectConverter(final Class clazz, --final Map, T> from, --final Map, T> cache) { ++ final Map, T> from, ++ final Map, T> cache) { if (clazz == null) { throw new IllegalArgumentException("clazz must not be null"); }
[johnzon] branch master updated (133273d5 -> cc3a5119)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from 133273d5 Merge pull request #84 from dblevins/improved-exception-message add 01c1eeb8 JOHNZON-367 Show a chunk of json when mapping the object fails add 2a8d3f21 JOHNZON-367 Snippet accepts a JsonGeneratorFactory and is reusable add 6589e679 JOHNZON-367 Allow Snippet size to be configurable (via @rmannibucau) All code written by Romain Manni-Bucau add 90519216 JOHNZON-367 Tests that johnzon.snippetMaxLength works as expected add 391025cc JOHNZON-367 Fix Snippet buffering issues and expand tests add 4f24814d JOHNZON-367 Allow true, false and null json constants to be trimmed Not my preference, but implementing in the hope of compromise add 4dd7763c JOHNZON-367 Reduce calls to flush() to the bare minimum Call flush only before snippet.terminate() and snippet.get() Reduce calls to snippet.terminate() to only what is needed add 2ab67a96 rebase add dbe6a0d9 rename Buffered to IODescriptor add ab20eea0 fix the johnzon-core dependency in mapper/jsonb module + use BoundedOutputStreamWriter in Snippet new cc3a5119 ensure johnzon-core is not used in mapper/jsonb + minor fixed on Snippet buffering The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../java/org/apache/johnzon/core/Buffered.java | 2 +- .../johnzon/core/JsonGeneratorFactoryImpl.java | 42 +++--- .../main/java/org/apache/johnzon/core/Snippet.java | 163 - .../main/java/org/apache/johnzon/core/Types.java | 15 -- .../java/org/apache/johnzon/core/SnippetTest.java | 2 +- .../org/apache/johnzon/jsonb/JohnzonBuilder.java | 18 +-- .../org/apache/johnzon/jsonb/JsonbAccessMode.java | 2 +- .../org/apache/johnzon/jsonb/reflect}/Types.java | 43 ++ .../org/apache/johnzon/mapper/JohnzonCores.java| 32 +++- .../johnzon/mapper/JohnzonVirtualObject.java | 3 - .../org/apache/johnzon/mapper/MapperBuilder.java | 5 +- .../org/apache/johnzon/mapper/MapperConfig.java| 15 +- .../mapper/{Cleanable.java => SnippetFactory.java} | 6 +- .../mapper/internal/JsonPointerTracker.java| 55 --- 14 files changed, 209 insertions(+), 194 deletions(-) copy {johnzon-core/src/main/java/org/apache/johnzon/core => johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/reflect}/Types.java (74%) copy johnzon-mapper/src/main/java/org/apache/johnzon/mapper/{Cleanable.java => SnippetFactory.java} (89%)
[johnzon] branch master updated (6571c776 -> 133273d5)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git from 6571c776 [JOHNZON-369] adding org.apache.johnzon.boundedoutputstreamwriter support new 18d94b8b JOHNZON-367 Show a chunk of json when mapping the object fails new 39249323 JOHNZON-367 Snippet accepts a JsonGeneratorFactory and is reusable new 2ac98b78 JOHNZON-367 Allow Snippet size to be configurable (via @rmannibucau) All code written by Romain Manni-Bucau new 04196910 JOHNZON-367 Tests that johnzon.snippetMaxLength works as expected new 77936bb9 JOHNZON-367 Fix Snippet buffering issues and expand tests new fb227bdd JOHNZON-367 Allow true, false and null json constants to be trimmed Not my preference, but implementing in the hope of compromise new ddd0f241 JOHNZON-367 Reduce calls to flush() to the bare minimum Call flush only before snippet.terminate() and snippet.get() Reduce calls to snippet.terminate() to only what is needed new bc8b05e1 JOHNZON-367 Optimize buffering when new Buffered interface is supported new 076c610c Merge branch 'master' of github.com:apache/johnzon into improved-exception-message new d5d0fc79 JOHNZON-367 Incorporate PR feedback new 133273d5 Merge pull request #84 from dblevins/improved-exception-message The 877 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../java/org/apache/johnzon/core/Buffered.java | 36 ++ .../johnzon/core/JsonGeneratorFactoryImpl.java | 40 +- .../main/java/org/apache/johnzon/core/Snippet.java | 422 + .../java/org/apache/johnzon/core/SnippetTest.java | 517 + .../johnzon/jaxrs/ConfigurableJohnzonProvider.java | 4 + .../jaxrs/WildcardConfigurableJohnzonProvider.java | 4 + .../org/apache/johnzon/jsonb/JohnzonBuilder.java | 6 + .../apache/johnzon/jsonb/SnippetMaxLengthTest.java | 103 .../org/apache/johnzon/mapper/MapperBuilder.java | 10 +- .../org/apache/johnzon/mapper/MapperConfig.java| 47 +- .../apache/johnzon/mapper/MappingParserImpl.java | 4 +- 11 files changed, 1183 insertions(+), 10 deletions(-) create mode 100644 johnzon-core/src/main/java/org/apache/johnzon/core/Buffered.java create mode 100644 johnzon-core/src/main/java/org/apache/johnzon/core/Snippet.java create mode 100644 johnzon-core/src/test/java/org/apache/johnzon/core/SnippetTest.java create mode 100644 johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/SnippetMaxLengthTest.java
[johnzon] branch master updated: [JOHNZON-369] adding org.apache.johnzon.boundedoutputstreamwriter support
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 6571c776 [JOHNZON-369] adding org.apache.johnzon.boundedoutputstreamwriter support 6571c776 is described below commit 6571c7768b4897034a134b8664068b0f8bb2b02e Author: Romain Manni-Bucau AuthorDate: Wed Apr 27 09:48:53 2022 +0200 [JOHNZON-369] adding org.apache.johnzon.boundedoutputstreamwriter support --- .../johnzon/core/JsonGeneratorFactoryImpl.java | 20 - .../org/apache/johnzon/core/JsonGeneratorImpl.java | 9 -- .../johnzon/core/io/BoundedOutputStreamWriter.java | 98 ++ .../johnzon/core/JsonGeneratorFactoryImplTest.java | 70 .../core/io/BoundedOutputStreamWriterTest.java | 64 ++ src/site/markdown/index.md | 11 +++ 6 files changed, 260 insertions(+), 12 deletions(-) diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java index c4748697..af1b905d 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java @@ -18,6 +18,8 @@ */ package org.apache.johnzon.core; +import org.apache.johnzon.core.io.BoundedOutputStreamWriter; + import static java.nio.charset.StandardCharsets.UTF_8; import static java.util.Arrays.asList; import static java.util.Optional.ofNullable; @@ -35,21 +37,24 @@ import javax.json.stream.JsonGeneratorFactory; public class JsonGeneratorFactoryImpl extends AbstractJsonFactory implements JsonGeneratorFactory { public static final String GENERATOR_BUFFER_LENGTH = "org.apache.johnzon.default-char-buffer-generator"; +public static final String BOUNDED_OUTPUT_STREAM_WRITER_LEN = "org.apache.johnzon.boundedoutputstreamwriter"; public static final int DEFAULT_GENERATOR_BUFFER_LENGTH = Integer.getInteger(GENERATOR_BUFFER_LENGTH, 64 * 1024); //64k static final Collection SUPPORTED_CONFIG_KEYS = asList( -JsonGenerator.PRETTY_PRINTING, GENERATOR_BUFFER_LENGTH, BUFFER_STRATEGY, ENCODING +JsonGenerator.PRETTY_PRINTING, GENERATOR_BUFFER_LENGTH, BUFFER_STRATEGY, ENCODING, BOUNDED_OUTPUT_STREAM_WRITER_LEN ); private final Charset defaultEncoding; //key caching currently disabled private final boolean pretty; +private final int boundedOutputStreamWriter; private final BufferStrategy.BufferProvider bufferProvider; public JsonGeneratorFactoryImpl(final Map config) { super(config, SUPPORTED_CONFIG_KEYS, null); this.pretty = getBool(JsonGenerator.PRETTY_PRINTING, false); +this.boundedOutputStreamWriter = getInt(BOUNDED_OUTPUT_STREAM_WRITER_LEN, -1); this.defaultEncoding = ofNullable(getString(ENCODING, null)) .map(Charset::forName) .orElse(UTF_8); @@ -68,12 +73,21 @@ public class JsonGeneratorFactoryImpl extends AbstractJsonFactory implements Jso @Override public JsonGenerator createGenerator(final OutputStream out) { -return new JsonGeneratorImpl(new OutputStreamWriter(out, defaultEncoding), bufferProvider, pretty); +return new JsonGeneratorImpl( +boundedOutputStreamWriter <= 0 ? +new OutputStreamWriter(out, defaultEncoding) : +new BoundedOutputStreamWriter(out, defaultEncoding, boundedOutputStreamWriter), +bufferProvider, pretty); } @Override public JsonGenerator createGenerator(final OutputStream out, final Charset charset) { -return new JsonGeneratorImpl(out,charset, bufferProvider, pretty); +final Charset cs = charset == null ? defaultEncoding : charset; +return new JsonGeneratorImpl( +boundedOutputStreamWriter <= 0 ? +new OutputStreamWriter(out, cs) : +new BoundedOutputStreamWriter(out, cs, boundedOutputStreamWriter), +bufferProvider, pretty); } @Override diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorImpl.java b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorImpl.java index 0913804f..c011b1f6 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorImpl.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorImpl.java @@ -27,13 +27,10 @@ import javax.json.JsonValue; import javax.json.stream.JsonGenerationException; import javax.json.stream.JsonGenerator; import java.io.IOException; -import java.io.OutputStream; -import java.io.OutputStreamWriter; import java.io.Serializable; impo
[johnzon] branch master updated: [JOHNZON-368] ensure JsonGeneratorFactory respects the configured encoding
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new a20a8e57 [JOHNZON-368] ensure JsonGeneratorFactory respects the configured encoding a20a8e57 is described below commit a20a8e570d4623147d86a05610310c99ed1d355b Author: Romain Manni-Bucau AuthorDate: Wed Apr 27 09:05:04 2022 +0200 [JOHNZON-368] ensure JsonGeneratorFactory respects the configured encoding --- .../apache/johnzon/core/AbstractJsonFactory.java | 2 +- .../johnzon/core/JsonGeneratorFactoryImpl.java | 30 +- .../org/apache/johnzon/core/JsonGeneratorImpl.java | 8 -- .../apache/johnzon/core/JsonParserFactoryImpl.java | 1 - .../apache/johnzon/core/JsonWriterFactoryImpl.java | 4 +-- .../org/apache/johnzon/mapper/MapperBuilder.java | 6 ++--- 6 files changed, 24 insertions(+), 27 deletions(-) diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/AbstractJsonFactory.java b/johnzon-core/src/main/java/org/apache/johnzon/core/AbstractJsonFactory.java index c8517173..9b448a6f 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/AbstractJsonFactory.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/AbstractJsonFactory.java @@ -26,7 +26,7 @@ import java.util.Map; import java.util.logging.Logger; public abstract class AbstractJsonFactory implements Serializable { - +public static final String ENCODING = "org.apache.johnzon.encoding"; public static final String BUFFER_STRATEGY = "org.apache.johnzon.buffer-strategy"; public static final BufferStrategy DEFAULT_BUFFER_STRATEGY = BufferStrategyFactory.valueOf(System.getProperty(BUFFER_STRATEGY, "QUEUE")); diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java index 8d1f6ec2..c4748697 100644 --- a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java +++ b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorFactoryImpl.java @@ -18,9 +18,12 @@ */ package org.apache.johnzon.core; +import static java.nio.charset.StandardCharsets.UTF_8; import static java.util.Arrays.asList; +import static java.util.Optional.ofNullable; import java.io.OutputStream; +import java.io.OutputStreamWriter; import java.io.Writer; import java.nio.charset.Charset; import java.util.Collection; @@ -35,24 +38,27 @@ public class JsonGeneratorFactoryImpl extends AbstractJsonFactory implements Jso public static final int DEFAULT_GENERATOR_BUFFER_LENGTH = Integer.getInteger(GENERATOR_BUFFER_LENGTH, 64 * 1024); //64k static final Collection SUPPORTED_CONFIG_KEYS = asList( -JsonGenerator.PRETTY_PRINTING, GENERATOR_BUFFER_LENGTH, BUFFER_STRATEGY +JsonGenerator.PRETTY_PRINTING, GENERATOR_BUFFER_LENGTH, BUFFER_STRATEGY, ENCODING ); + +private final Charset defaultEncoding; + //key caching currently disabled private final boolean pretty; private final BufferStrategy.BufferProvider bufferProvider; public JsonGeneratorFactoryImpl(final Map config) { - - super(config, SUPPORTED_CONFIG_KEYS, null); - - this.pretty = getBool(JsonGenerator.PRETTY_PRINTING, false); - - final int bufferSize = getInt(GENERATOR_BUFFER_LENGTH, DEFAULT_GENERATOR_BUFFER_LENGTH); - if (bufferSize <= 0) { - throw new IllegalArgumentException("buffer length must be greater than zero"); - } +super(config, SUPPORTED_CONFIG_KEYS, null); +this.pretty = getBool(JsonGenerator.PRETTY_PRINTING, false); +this.defaultEncoding = ofNullable(getString(ENCODING, null)) +.map(Charset::forName) +.orElse(UTF_8); - this.bufferProvider = getBufferProvider().newCharProvider(bufferSize); +final int bufferSize = getInt(GENERATOR_BUFFER_LENGTH, DEFAULT_GENERATOR_BUFFER_LENGTH); +if (bufferSize <= 0) { +throw new IllegalArgumentException("buffer length must be greater than zero"); +} +this.bufferProvider = getBufferProvider().newCharProvider(bufferSize); } @Override @@ -62,7 +68,7 @@ public class JsonGeneratorFactoryImpl extends AbstractJsonFactory implements Jso @Override public JsonGenerator createGenerator(final OutputStream out) { -return new JsonGeneratorImpl(out, bufferProvider, pretty); +return new JsonGeneratorImpl(new OutputStreamWriter(out, defaultEncoding), bufferProvider, pretty); } @Override diff --git a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonGeneratorImpl.java b/johnzon-core/src/main/java/org/apache/johnzon/cor
[johnzon] branch master updated: upgrading to junit 4.13.1
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new b0088061 upgrading to junit 4.13.1 b0088061 is described below commit b0088061f4d5eb697121dea08465522c7d5c8ae8 Author: Romain Manni-Bucau AuthorDate: Mon Apr 25 09:03:47 2022 +0200 upgrading to junit 4.13.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b2f91b17..e2ae870e 100644 --- a/pom.xml +++ b/pom.xml @@ -91,7 +91,7 @@ junit junit - 4.12 + 4.13.1 test
[johnzon] branch master updated: simplifying some mappe dependencies, no main code change
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 8cb5377 simplifying some mappe dependencies, no main code change 8cb5377 is described below commit 8cb53770e58cc2bdd26c26bdade4eae9cb995544 Author: Romain Manni-Bucau AuthorDate: Mon Apr 25 09:02:24 2022 +0200 simplifying some mappe dependencies, no main code change --- johnzon-mapper/pom.xml | 22 +-- .../org/apache/johnzon/mapper/NoWarningTest.java | 73 +- johnzon-mapper/src/test/resources/JPATest.xml | 2 +- 3 files changed, 61 insertions(+), 36 deletions(-) diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index acaa20f..f4e3427 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -35,34 +35,16 @@ ${project.version} - - com.github.stefanbirkner - system-rules - 1.8.0 - test - - - commons-io - commons-io - - - - - commons-io - commons-io - 2.4 - test - org.apache.openjpa openjpa - 2.4.0 + 3.2.2 test com.h2database h2 - 1.3.166 + 2.1.210 test diff --git a/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/NoWarningTest.java b/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/NoWarningTest.java index fcb3656..3ffb94e 100644 --- a/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/NoWarningTest.java +++ b/johnzon-mapper/src/test/java/org/apache/johnzon/mapper/NoWarningTest.java @@ -19,29 +19,68 @@ package org.apache.johnzon.mapper; import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.io.UnsupportedEncodingException; import java.util.HashMap; import java.util.Map; +import java.util.logging.Handler; +import java.util.logging.LogRecord; +import java.util.logging.Logger; import javax.json.Json; -import org.junit.Rule; +import org.junit.After; +import org.junit.Before; import org.junit.Test; -import org.junit.contrib.java.lang.system.StandardErrorStreamLog; -import org.junit.contrib.java.lang.system.StandardOutputStreamLog; import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertFalse; public class NoWarningTest { - -@Rule -public final StandardOutputStreamLog out = new StandardOutputStreamLog(); +public ByteArrayOutputStream out; +public ByteArrayOutputStream err; +private PrintStream oldOut; +private PrintStream oldErr; +private Handler handler; + +@Before +public void capture() { +out = new ByteArrayOutputStream(); +err = new ByteArrayOutputStream(); +oldOut = System.out; +oldErr = System.err; +System.setOut(new PrintStream(out)); +final PrintStream stderr = new PrintStream(err); +System.setErr(stderr); +handler = new Handler() { +@Override +public void publish(final LogRecord record) { +stderr.println(record.getMessage()); +oldErr.println(record.getMessage()); +} + +@Override +public void flush() { +// no-op +} -@Rule -public final StandardErrorStreamLog err = new StandardErrorStreamLog(); +@Override +public void close() throws SecurityException { +flush(); +} +}; +Logger.getLogger("").addHandler(handler); +} + +@After +public void reset() { +System.setOut(oldOut); +System.setErr(oldErr); +Logger.getLogger("").removeHandler(handler); +} @Test -public void noWarn() { +public void noWarn() throws UnsupportedEncodingException { new MapperBuilder() .setEncoding("UTF-8") .setSupportConstructors(true) @@ -52,19 +91,23 @@ public class NoWarningTest { .setMaxSize(789465) .setSkipNull(true) .setSupportsComments(true) -.build(); +.build() +.close(); // no warn log -assertTrue(out.getLog().isEmpty()); -assertTrue(err.getLog().isEmpty()); +assertTrue(out.toString("UTF-8").isEmpty()); +assertTrue(err.toString("UTF-8").isEmpty()); } @Test -public void warn() { +public void warn() throws UnsupportedEncodingException { Map unsupportedConfig = new HashMap(); unsupportedConfig.put("xxx.yyy.zzz", ""); -Json.createGeneratorFactory(unsupportedConfig).createGenerator(new ByteArrayOutputStream()); +Json.createGeneratorFactory(unsuppor
[openwebbeans-meecrowave] branch master updated: MEECROWAVE-320 - upgrade to johnzon 1.2.17
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans-meecrowave.git The following commit(s) were added to refs/heads/master by this push: new 27a218f MEECROWAVE-320 - upgrade to johnzon 1.2.17 27a218f is described below commit 27a218fa942209250035376c13c1ebe55c6252c5 Author: Romain Manni-Bucau AuthorDate: Thu Apr 21 14:03:38 2022 +0200 MEECROWAVE-320 - upgrade to johnzon 1.2.17 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 519379f..6a92493 100644 --- a/pom.xml +++ b/pom.xml @@ -54,7 +54,7 @@ 9.0.62 2.0.26 3.5.2 -1.2.16 +1.2.17 2.17.2 1.9.5 2.2.11
[openwebbeans-meecrowave] branch master updated: MEECROWAVE-319 - log4j 2.17.2
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans-meecrowave.git The following commit(s) were added to refs/heads/master by this push: new 3cceb7c MEECROWAVE-319 - log4j 2.17.2 3cceb7c is described below commit 3cceb7c66548b5747082f3c5a77e0d74966a1966 Author: Romain Manni-Bucau AuthorDate: Tue Apr 12 09:02:08 2022 +0200 MEECROWAVE-319 - log4j 2.17.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c00ed93..519379f 100644 --- a/pom.xml +++ b/pom.xml @@ -55,7 +55,7 @@ 2.0.26 3.5.2 1.2.16 -2.17.1 +2.17.2 1.9.5 2.2.11 3.2.0
[openwebbeans-meecrowave] branch master updated: MEECROWAVE-318 - upgrade CXF to 3.5.2
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans-meecrowave.git The following commit(s) were added to refs/heads/master by this push: new bac2075 MEECROWAVE-318 - upgrade CXF to 3.5.2 bac2075 is described below commit bac20753d09c834de7f5e2d213515be1484a9f76 Author: Romain Manni-Bucau AuthorDate: Tue Apr 12 09:00:50 2022 +0200 MEECROWAVE-318 - upgrade CXF to 3.5.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c8e5f92..c00ed93 100644 --- a/pom.xml +++ b/pom.xml @@ -53,7 +53,7 @@ 4.13.2 9.0.62 2.0.26 -3.5.1 +3.5.2 1.2.16 2.17.1 1.9.5
[maven-shade-plugin] branch master updated: [MSHADE-412] avoid possible NPE since rawString was added in SimpleRelocator (#123)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git The following commit(s) were added to refs/heads/master by this push: new 17b87aa [MSHADE-412] avoid possible NPE since rawString was added in SimpleRelocator (#123) 17b87aa is described below commit 17b87aa368db6e0bcea4f6c2f1e07e46945f2f4b Author: Romain Manni-Bucau AuthorDate: Thu Mar 17 13:40:30 2022 +0100 [MSHADE-412] avoid possible NPE since rawString was added in SimpleRelocator (#123) --- .../org/apache/maven/plugins/shade/relocation/SimpleRelocator.java | 2 +- .../apache/maven/plugins/shade/relocation/SimpleRelocatorTest.java | 6 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/maven/plugins/shade/relocation/SimpleRelocator.java b/src/main/java/org/apache/maven/plugins/shade/relocation/SimpleRelocator.java index 3837a67..df51ea2 100644 --- a/src/main/java/org/apache/maven/plugins/shade/relocation/SimpleRelocator.java +++ b/src/main/java/org/apache/maven/plugins/shade/relocation/SimpleRelocator.java @@ -242,7 +242,7 @@ public class SimpleRelocator public String relocateClass( String clazz ) { -return clazz.replaceFirst( pattern, shadedPattern ); +return rawString ? clazz : clazz.replaceFirst( pattern, shadedPattern ); } public String applyToSourceContent( String sourceContent ) diff --git a/src/test/java/org/apache/maven/plugins/shade/relocation/SimpleRelocatorTest.java b/src/test/java/org/apache/maven/plugins/shade/relocation/SimpleRelocatorTest.java index e85972a..699d1b3 100644 --- a/src/test/java/org/apache/maven/plugins/shade/relocation/SimpleRelocatorTest.java +++ b/src/test/java/org/apache/maven/plugins/shade/relocation/SimpleRelocatorTest.java @@ -39,6 +39,12 @@ public class SimpleRelocatorTest { @Test +public void testNoNpeRelocateClass() +{ +new SimpleRelocator( "foo", "bar", null, null, true ).relocateClass( "foo" ); +} + +@Test public void testCanRelocatePath() { SimpleRelocator relocator;
[maven-shade-plugin] branch MSHADE-412_avoid-npe updated (81a374b -> d76efb3)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MSHADE-412_avoid-npe in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git. discard 81a374b MSHADE-412 avoid possible NPE since rawString was added in SimpleRelocator add d76efb3 [MSHADE-412] avoid possible NPE since rawString was added in SimpleRelocator This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (81a374b) \ N -- N -- N refs/heads/MSHADE-412_avoid-npe (d76efb3) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. No new revisions were added by this update. Summary of changes:
[maven-shade-plugin] branch MSHADE-412_avoid-npe updated (9fcbb47 -> 81a374b)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MSHADE-412_avoid-npe in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git. discard 9fcbb47 test for the fix discard 6019c9f MSHADE-412 avoid possible NPE since rawString was added in SimpleRelocator add 81a374b MSHADE-412 avoid possible NPE since rawString was added in SimpleRelocator This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (9fcbb47) \ N -- N -- N refs/heads/MSHADE-412_avoid-npe (81a374b) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. No new revisions were added by this update. Summary of changes:
[maven-shade-plugin] branch MSHADE-412_avoid-npe updated (6019c9f -> 9fcbb47)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MSHADE-412_avoid-npe in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git. from 6019c9f MSHADE-412 avoid possible NPE since rawString was added in SimpleRelocator add 9fcbb47 test for the fix No new revisions were added by this update. Summary of changes: .../apache/maven/plugins/shade/relocation/SimpleRelocatorTest.java | 6 ++ 1 file changed, 6 insertions(+)
[maven-shade-plugin] branch MSHADE-412_avoid-npe created (now 6019c9f)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch MSHADE-412_avoid-npe in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git. at 6019c9f MSHADE-412 avoid possible NPE since rawString was added in SimpleRelocator No new revisions were added by this update.
[openjpa] branch master updated (a605d87 -> 641dfd9)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/openjpa.git. from a605d87 [OPENJPA-2713] Fixing OffsetDateTime conversion new 6d7ee9b refine Jakarta relocate patterns new e5c29f4 Requires the full package for the pattern new 641dfd9 Merge pull request #93 from jeanouii/jakarta-relocate The 5249 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: openjpa/pom.xml | 73 +++-- 1 file changed, 14 insertions(+), 59 deletions(-)
[openwebbeans-meecrowave] branch master updated: MEECROWAVE-312 MEECROWAVE-313 MEECROWAVE-314 MEECROWAVE-315 tomcat.version=9.0.59 openwebbeans.version=2.0.26 cxf.version=3.5.1 johnzon.version=1.2.16
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openwebbeans-meecrowave.git The following commit(s) were added to refs/heads/master by this push: new 96d31ab MEECROWAVE-312 MEECROWAVE-313 MEECROWAVE-314 MEECROWAVE-315 tomcat.version=9.0.59 openwebbeans.version=2.0.26 cxf.version=3.5.1 johnzon.version=1.2.16 (upgrades) 96d31ab is described below commit 96d31abde88588d5d07bf7703425371e870f94fb Author: Romain Manni-Bucau AuthorDate: Tue Mar 1 20:17:32 2022 +0100 MEECROWAVE-312 MEECROWAVE-313 MEECROWAVE-314 MEECROWAVE-315 tomcat.version=9.0.59 openwebbeans.version=2.0.26 cxf.version=3.5.1 johnzon.version=1.2.16 (upgrades) --- pom.xml | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index c98b413..d2f1f04 100644 --- a/pom.xml +++ b/pom.xml @@ -51,10 +51,10 @@ ${project.groupId}.${project.artifactId} 4.13.2 -9.0.58 -2.0.25 -3.5.0 -1.2.15 +9.0.59 +2.0.26 +3.5.1 +1.2.16 2.17.1 1.9.5 2.2.11
[johnzon] branch master updated: JOHNZON-359 Fix lost OSGi metadata (#78)
This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/johnzon.git The following commit(s) were added to refs/heads/master by this push: new 6b37e52 JOHNZON-359 Fix lost OSGi metadata (#78) 6b37e52 is described below commit 6b37e521f9c50e76a269a9846d122d423d9a9de1 Author: Raymond Augé AuthorDate: Sun Feb 20 12:32:14 2022 -0500 JOHNZON-359 Fix lost OSGi metadata (#78) Reverts the packaging change from b221d9db923c142afcddde056abd9301acbf9af1 Signed-off-by: Raymond Augé --- johnzon-core/pom.xml | 1 + johnzon-json-extras/pom.xml | 1 + johnzon-jsonb/pom.xml| 2 +- johnzon-jsonlogic/pom.xml| 2 +- johnzon-jsonp-strict/pom.xml | 2 +- johnzon-mapper/pom.xml | 1 + johnzon-osgi/pom.xml | 4 ++-- 7 files changed, 8 insertions(+), 5 deletions(-) diff --git a/johnzon-core/pom.xml b/johnzon-core/pom.xml index 56f0e98..8273fd0 100644 --- a/johnzon-core/pom.xml +++ b/johnzon-core/pom.xml @@ -27,6 +27,7 @@ johnzon-core Johnzon :: Core + bundle ${project.parent.reporting.outputDirectory} diff --git a/johnzon-json-extras/pom.xml b/johnzon-json-extras/pom.xml index 030ab6a..e311560 100644 --- a/johnzon-json-extras/pom.xml +++ b/johnzon-json-extras/pom.xml @@ -27,6 +27,7 @@ johnzon-jsonb-extras Johnzon :: JSON-B Extensions + bundle ${project.parent.reporting.outputDirectory} diff --git a/johnzon-jsonb/pom.xml b/johnzon-jsonb/pom.xml index 97b7a45..8a7bdf1 100644 --- a/johnzon-jsonb/pom.xml +++ b/johnzon-jsonb/pom.xml @@ -27,7 +27,7 @@ johnzon-jsonb Johnzon :: JSON-B Implementation - + bundle ${project.parent.reporting.outputDirectory} diff --git a/johnzon-jsonlogic/pom.xml b/johnzon-jsonlogic/pom.xml index 33beb03..12e266d 100644 --- a/johnzon-jsonlogic/pom.xml +++ b/johnzon-jsonlogic/pom.xml @@ -27,7 +27,7 @@ johnzon-jsonlogic Johnzon :: JSON Logic - + bundle diff --git a/johnzon-jsonp-strict/pom.xml b/johnzon-jsonp-strict/pom.xml index 6acd306..55029a8 100644 --- a/johnzon-jsonp-strict/pom.xml +++ b/johnzon-jsonp-strict/pom.xml @@ -27,7 +27,7 @@ johnzon-jsonp-strict Johnzon :: JSON-P Strict JSON Pointer Implementation (spec compliant) - + bundle ${project.parent.reporting.outputDirectory} diff --git a/johnzon-mapper/pom.xml b/johnzon-mapper/pom.xml index 0c1bf54..72aa972 100644 --- a/johnzon-mapper/pom.xml +++ b/johnzon-mapper/pom.xml @@ -70,6 +70,7 @@ ${project.parent.reporting.outputDirectory} + bundle diff --git a/johnzon-osgi/pom.xml b/johnzon-osgi/pom.xml index c462fb8..2dfdbbd 100644 --- a/johnzon-osgi/pom.xml +++ b/johnzon-osgi/pom.xml @@ -27,7 +27,7 @@ johnzon-osgi Johnzon :: Support for OSGI Jaxrs Whiteboard - + bundle @@ -128,4 +128,4 @@ - + \ No newline at end of file