branch feature/spgeed updated (53f5dea9 -> 22b9c5e6)
This is an automated email from the git hooks/post-receive script. New change to branch feature/spgeed in repository pollen. See https://gitlab.nuiton.org/chorem/pollen.git from 53f5dea9 add some test to check json mapper behavior new 22b9c5e6 get email work / get user (miss email = user.getmail (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 "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 22b9c5e694db650d968daa3fef7b14da48781e8e Author: HERBRETEAU Killian <Killian_H@localhost.localdomain> Date: Fri Jul 26 14:47:56 2019 +0200 get email work / get user (miss email = user.getmail (NULL)) Summary of changes: .../pollen/persistence/PollenUserSpgeedDao.java | 7 +++++- .../org/chorem/pollen/rest/api/SpgeedTest.java | 20 +++++++++++++++- .../pollen/services/service/PollenUserService.java | 1 - .../pollen/services/service/TransverseService.java | 28 ++++------------------ .../service/security/SpgeedDummyService.java | 3 ++- 5 files changed, 31 insertions(+), 28 deletions(-) -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/spgeed in repository pollen. See https://gitlab.nuiton.org/chorem/pollen.git commit 22b9c5e694db650d968daa3fef7b14da48781e8e Author: HERBRETEAU Killian <Killian_H@localhost.localdomain> Date: Fri Jul 26 14:47:56 2019 +0200 get email work / get user (miss email = user.getmail (NULL)) --- .../pollen/persistence/PollenUserSpgeedDao.java | 7 +++++- .../org/chorem/pollen/rest/api/SpgeedTest.java | 20 +++++++++++++++- .../pollen/services/service/PollenUserService.java | 1 - .../pollen/services/service/TransverseService.java | 28 ++++------------------ .../service/security/SpgeedDummyService.java | 3 ++- 5 files changed, 31 insertions(+), 28 deletions(-) diff --git a/pollen-persistence/src/main/java/org/chorem/pollen/persistence/PollenUserSpgeedDao.java b/pollen-persistence/src/main/java/org/chorem/pollen/persistence/PollenUserSpgeedDao.java index 3ec382d7..e6cce841 100644 --- a/pollen-persistence/src/main/java/org/chorem/pollen/persistence/PollenUserSpgeedDao.java +++ b/pollen-persistence/src/main/java/org/chorem/pollen/persistence/PollenUserSpgeedDao.java @@ -6,7 +6,12 @@ import org.nuiton.spgeed.annotations.Select; public interface PollenUserSpgeedDao { - @Select(sql = "with pollenu as (select u.*, (select json_agg(m.*) as pollenuseremailaddress from pollenuseremailaddress m) from PollenUser u) select json_agg(pu.*) from pollenu pu") + @Select(sql = "with pollenu as " + + "(select name, administrator, language, password, banned, gtuvalidationdate, preMiumto, cancreatepoll, " + + "(select json_agg(e) as pollenuseremailaddress from pollenuseremailaddress e), " + + "(select json_object_agg('defaultemailaddress', d) as defaultemailaddress from pollenuseremailaddress d)" + + " from pollenuser)" + + " select json_agg(pu) from pollenu pu") PollenUser getUser(); @Select(sql = "select json_agg(m.*) from pollenuseremailaddress m") diff --git a/pollen-rest-api/src/test/java/org/chorem/pollen/rest/api/SpgeedTest.java b/pollen-rest-api/src/test/java/org/chorem/pollen/rest/api/SpgeedTest.java index 4aca30ec..982e5e4c 100644 --- a/pollen-rest-api/src/test/java/org/chorem/pollen/rest/api/SpgeedTest.java +++ b/pollen-rest-api/src/test/java/org/chorem/pollen/rest/api/SpgeedTest.java @@ -3,10 +3,12 @@ package org.chorem.pollen.rest.api; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.MapperFeature; import com.fasterxml.jackson.databind.ObjectMapper; +import org.apache.tomcat.jni.Poll; import org.chorem.pollen.persistence.entity.PollenUser; import org.chorem.pollen.persistence.entity.PollenUserEmailAddress; import org.chorem.pollen.services.PollenTechnicalException; import org.chorem.pollen.services.service.PollenUserService; +import org.chorem.pollen.services.service.security.SpgeedDummyService; import org.junit.Assert; import org.junit.Test; @@ -32,7 +34,7 @@ public class SpgeedTest { @Test public void testUserDeserialization() throws Exception { - String json = "{\"topiaid\":\"PollenUser_6qdaqbgBTyCBa8Dvz5SeHQ\",\"topiaversion\":1,\"topiacreatedate\":\"2019-07-19T10:00:30.913\",\"name\":\"admin\",\"administrator\":true,\"language\":null,\"password\":\"m7LAmO/AeLrjPI6kkzS0wTmU6fpbG/nxptfi/P7fg0BToZoIAV6xVre3tcttYxnLTDrXjtq7YOpggTFRz7mTjA==\",\"salt\":\"yRnTw64IPoWXR5f/j/rIsal7Pvd3Zz9LM9FPH3yXgIo=\",\"banned\":false,\"gtuvalidationdate\":null,\"premiumto\":null,\"cancreatepoll\":false,\"avatar\":null,\"defaultemailaddress\": [...] + String json = "{\"topiaid\":\"PollenUser_6qdaqbgBTyCBa8Dvz5SeHQ\",\"topiaversion\":1,\"topiacreatedate\":\"2019-07-19T10:00:30.913\",\"name\":\"admin\",\"administrator\":true,\"language\":null,\"password\":\"m7LAmO/AeLrjPI6kkzS0wTmU6fpbG/nxptfi/P7fg0BToZoIAV6xVre3tcttYxnLTDrXjtq7YOpggTFRz7mTjA==\",\"salt\":\"yRnTw64IPoWXR5f/j/rIsal7Pvd3Zz9LM9FPH3yXgIo=\",\"banned\":false,\"gtuvalidationdate\":null,\"premiumto\":null,\"cancreatepoll\":false,\"avatar\":null,\"pollenuseremailaddress [...] ObjectMapper mapper = new ObjectMapper(); mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); @@ -40,8 +42,24 @@ public class SpgeedTest { PollenUser pollenUser = mapper.readValue(json, PollenUser.class); Assert.assertNotNull(pollenUser); + Assert.assertNotNull(pollenUser.getDefaultEmailAddress()); + Assert.assertNotNull(pollenUser.getEmailAddresses()); + Assert.assertEquals("admin@chorem.org", pollenUser.getDefaultEmailAddress()); Assert.assertEquals("admin", pollenUser.getName()); Assert.assertTrue(pollenUser.isAdministrator()); } + @Test + public void testUserDeserializationCallDB() { + SpgeedDummyService spgeedDummyService = new SpgeedDummyService(); + PollenUser pollenUser = spgeedDummyService.getPollenUser(); + + Assert.assertNotNull(pollenUser); + Assert.assertNotNull(pollenUser.getDefaultEmailAddress()); + Assert.assertNotNull(pollenUser.getEmailAddresses()); + Assert.assertEquals("admin", pollenUser.getName()); + Assert.assertEquals("admin@chorem.org", pollenUser.getDefaultEmailAddress()); + Assert.assertTrue(pollenUser.isAdministrator()); + } + } diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java index de3fbd36..ef6ee3c2 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java @@ -85,7 +85,6 @@ public class PollenUserService extends PollenServiceSupport implements PollenSer bean.setGtuValidated(getGtuService().isGtuValidated(entity)); bean.setPremium(isPremium(entity)); - Preconditions.checkArgument(entity.sizeEmailAddresses() == 1); bean.setEmailAddresses(entity.getEmailAddresses().stream() .map(this::toPollenUserEmailAddressBean) .collect(Collectors.toList())); diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/TransverseService.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/TransverseService.java index ef0d2d79..7347cdcc 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/TransverseService.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/TransverseService.java @@ -62,39 +62,19 @@ public class TransverseService extends PollenServiceSupport { public PollenUserBean getSpgeed() { - String json = "{\"topiaid\":\"PollenUser_6qdaqbgBTyCBa8Dvz5SeHQ\",\"topiaversion\":1,\"topiacreatedate\":\"2019-07-19T10:00:30.913\",\"name\":\"admin\",\"administrator\":true,\"language\":null,\"password\":\"m7LAmO/AeLrjPI6kkzS0wTmU6fpbG/nxptfi/P7fg0BToZoIAV6xVre3tcttYxnLTDrXjtq7YOpggTFRz7mTjA==\",\"salt\":\"yRnTw64IPoWXR5f/j/rIsal7Pvd3Zz9LM9FPH3yXgIo=\",\"banned\":false,\"gtuvalidationdate\":null,\"premiumto\":null,\"cancreatepoll\":false,\"avatar\":null,\"defaultemailaddress\": [...] - /*SpgeedDummyService spgeedDummyService = new SpgeedDummyService(); - PollenUser user = spgeedDummyService.getPollenUser();*/ + SpgeedDummyService spgeedDummyService = new SpgeedDummyService(); + PollenUser user = spgeedDummyService.getPollenUser(); PollenUserService pollenUserService = newService(PollenUserService.class); - PollenUser user = null; - try { - ObjectMapper mapper = new ObjectMapper(); - mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); - mapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true); - user = mapper.readValue(json, PollenUser.class); - } catch (IOException e) { - throw new PollenTechnicalException(e); - } return pollenUserService.toPollenUserBean(user); } public PollenUserEmailAddressBean getEmail() { - String json = "{\"topiaid\":\"PollenUserEmailAddress_M-wGbZ74QQCUr_hwl6JXmw\",\"topiaversion\":1,\"topiacreatedate\":\"2019-07-19T10:00:30.962\",\"emailaddress\":\"admin@chorem.org\",\"pgppublickey\":null,\"validated\":true,\"pollenuser\":\"PollenUser_6qdaqbgBTyCBa8Dvz5SeHQ\"}"; - // SpgeedDummyService spgeedDummyService = new SpgeedDummyService(); - //PollenUserEmailAddress email = spgeedDummyService.getPollenUserEmailaddress(); + SpgeedDummyService spgeedDummyService = new SpgeedDummyService(); + PollenUserEmailAddress email = spgeedDummyService.getPollenUserEmailaddress(); PollenUserService pollenUserService = newService(PollenUserService.class); - PollenUserEmailAddress email = null; - try { - ObjectMapper mapper = new ObjectMapper(); - mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); - mapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true); - email = mapper.readValue(json, PollenUserEmailAddress.class); - } catch (IOException e) { - throw new PollenTechnicalException(e); - } return pollenUserService.toPollenUserEmailAddressBean(email); } diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/security/SpgeedDummyService.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/security/SpgeedDummyService.java index d1e3a92d..acd6669e 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/security/SpgeedDummyService.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/security/SpgeedDummyService.java @@ -4,6 +4,7 @@ import org.chorem.pollen.persistence.PollenSpgeedApplicationContext; import org.chorem.pollen.persistence.PollenUserSpgeedDao; import org.chorem.pollen.persistence.entity.PollenUser; import org.chorem.pollen.persistence.entity.PollenUserEmailAddress; +import org.chorem.pollen.services.PollenTechnicalException; import org.chorem.pollen.services.config.PollenServicesConfig; import org.nuiton.spgeed.SqlSession; @@ -32,8 +33,8 @@ public class SpgeedDummyService { return (dao.getUser()); } catch(SQLException e) { + throw new PollenTechnicalException("erreur lors du chargement d'un utilisateur", e); } - return (null); } -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
participants (1)
-
chorem.org scm