JAMES-2655 Strong typing for JPA RRT getMapping
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/e839a782 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/e839a782 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/e839a782 Branch: refs/heads/master Commit: e839a782a18bb3c03435866d1b22d169a74b71e5 Parents: deb0306 Author: Benoit Tellier <btell...@linagora.com> Authored: Wed Jan 30 11:54:33 2019 +0700 Committer: Benoit Tellier <btell...@linagora.com> Committed: Wed Jan 30 17:55:18 2019 +0700 ---------------------------------------------------------------------- .../james/rrt/jpa/JPARecipientRewriteTable.java | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/e839a782/server/data/data-jpa/src/main/java/org/apache/james/rrt/jpa/JPARecipientRewriteTable.java ---------------------------------------------------------------------- diff --git a/server/data/data-jpa/src/main/java/org/apache/james/rrt/jpa/JPARecipientRewriteTable.java b/server/data/data-jpa/src/main/java/org/apache/james/rrt/jpa/JPARecipientRewriteTable.java index c5f1e8d..44795ed 100644 --- a/server/data/data-jpa/src/main/java/org/apache/james/rrt/jpa/JPARecipientRewriteTable.java +++ b/server/data/data-jpa/src/main/java/org/apache/james/rrt/jpa/JPARecipientRewriteTable.java @@ -76,28 +76,27 @@ public class JPARecipientRewriteTable extends AbstractRecipientRewriteTable { @Override protected Mappings mapAddress(String user, Domain domain) throws RecipientRewriteTableException { - Mappings userDomainMapping = getMapping(user, domain, "selectUserDomainMapping"); + Mappings userDomainMapping = getMapping(MappingSource.fromUser(user, domain)); if (userDomainMapping != null && !userDomainMapping.isEmpty()) { return userDomainMapping; } - MappingSource domainSource = MappingSource.fromDomain(domain); - Mappings domainMapping = getMapping(domainSource.getFixedUser(), domain, "selectUserDomainMapping"); + Mappings domainMapping = getMapping(MappingSource.fromDomain(domain)); if (domainMapping != null && !domainMapping.isEmpty()) { return domainMapping; } return MappingsImpl.empty(); } - private Mappings getMapping(String user, Domain domain, String queryName) throws RecipientRewriteTableException { + private Mappings getMapping(MappingSource mappingSource) throws RecipientRewriteTableException { EntityManager entityManager = entityManagerFactory.createEntityManager(); final EntityTransaction transaction = entityManager.getTransaction(); try { transaction.begin(); @SuppressWarnings("unchecked") List<JPARecipientRewrite> virtualUsers = entityManager - .createNamedQuery(queryName) - .setParameter("user", user) - .setParameter("domain", domain.asString()) + .createNamedQuery("selectUserDomainMapping") + .setParameter("user", mappingSource.getFixedUser()) + .setParameter("domain", mappingSource.getFixedDomain()) .getResultList(); transaction.commit(); if (virtualUsers.size() > 0) { @@ -105,7 +104,7 @@ public class JPARecipientRewriteTable extends AbstractRecipientRewriteTable { } return MappingsImpl.empty(); } catch (PersistenceException e) { - LOGGER.debug("Failed to find mapping for user={} and domain={}", user, domain, e); + LOGGER.debug("Failed to find mapping for source={}", mappingSource, e); if (transaction.isActive()) { transaction.rollback(); } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org