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

Reply via email to