Jeroen Hoffman pushed to branch bugfix/REPO-1869 at cms-community / hippo-repository
Commits: 0c15259e by Jeroen Hoffman at 2018-03-07T09:45:05+01:00 REPO-1869 remove parent-check logic: lot of code for a situation that is very very unlikely (2 or 3 found variants with different parent) - - - - - f69fe4e6 by Jeroen Hoffman at 2018-03-07T09:46:48+01:00 REPO-1869 simplify code - - - - - 1 changed file: - builtin/src/main/java/org/hippoecm/repository/translation/HippoTranslatedNode.java Changes: ===================================== builtin/src/main/java/org/hippoecm/repository/translation/HippoTranslatedNode.java ===================================== --- a/builtin/src/main/java/org/hippoecm/repository/translation/HippoTranslatedNode.java +++ b/builtin/src/main/java/org/hippoecm/repository/translation/HippoTranslatedNode.java @@ -64,33 +64,25 @@ public final class HippoTranslatedNode { } public Node getTranslation(String language) throws RepositoryException { - String id = node.getProperty(HippoTranslationNodeType.ID).getString(); - Query query = node.getSession().getWorkspace().getQueryManager().createQuery( + final String id = node.getProperty(HippoTranslationNodeType.ID).getString(); + final Query query = node.getSession().getWorkspace().getQueryManager().createQuery( "SELECT * FROM " + HippoTranslationNodeType.NT_TRANSLATED + " WHERE " + HippoTranslationNodeType.ID + "='" + id + "'" + " AND " + HippoTranslationNodeType.LOCALE + "='" + language + "'", Query.SQL); final QueryResult result = query.execute(); - NodeIterator nodes = result.getNodes(); + final NodeIterator nodes = result.getNodes(); if (!nodes.hasNext()) { - throw new ItemNotFoundException("Folder was not translated to " + language); + throw new ItemNotFoundException("Node " + node.getPath() + " was not translated to " + language); } - Node node = nodes.nextNode(); if (nodes.getSize() > 3) { - log.warn("More than one translated variant found for node " + id + " in language " + language); - } else if (nodes.getSize() > 1) { - String handleId = null; - Node parent = node.getParent(); - do { - Node next = nodes.nextNode(); - if (!next.getParent().getIdentifier().equals(parent.getIdentifier())) { - log.warn("More than one translated variant found for node " + id + " in language " + language); - break; - } - } while (nodes.hasNext()); + // check 3 for the stable draft/unpublished/published versions + log.warn("Not a maximum of 3 but {} translated variants found for node {} with translation id {} and language {}.", + nodes.getSize(), node.getPath(), id, language); } - return node; + + return nodes.nextNode(); } public boolean hasTranslation(String language) throws RepositoryException { View it on GitLab: https://code.onehippo.org/cms-community/hippo-repository/compare/558e52a7072e201a2b04e84ade6ac87aaee551f6...f69fe4e6284dd30fe003c307b5c5344cb00e1de1 --- View it on GitLab: https://code.onehippo.org/cms-community/hippo-repository/compare/558e52a7072e201a2b04e84ade6ac87aaee551f6...f69fe4e6284dd30fe003c307b5c5344cb00e1de1 You're receiving this email because of your account on code.onehippo.org.
_______________________________________________ Hippocms-svn mailing list Hippocms-svn@lists.onehippo.org https://lists.onehippo.org/mailman/listinfo/hippocms-svn