Author: tmortagne
Date: 2008-01-19 22:59:26 +0100 (Sat, 19 Jan 2008)
New Revision: 6972

Modified:
   
xwiki-platform/xwiki-plugins/trunk/application-manager/src/main/java/com/xpn/xwiki/plugin/applicationmanager/doc/XWikiApplication.java
Log:
XAAM-47: XWikiApplication.getDocsToInclude and XWikiApplication.getDocsToLink 
return too many documents.

Modified: 
xwiki-platform/xwiki-plugins/trunk/application-manager/src/main/java/com/xpn/xwiki/plugin/applicationmanager/doc/XWikiApplication.java
===================================================================
--- 
xwiki-platform/xwiki-plugins/trunk/application-manager/src/main/java/com/xpn/xwiki/plugin/applicationmanager/doc/XWikiApplication.java
      2008-01-19 21:31:12 UTC (rev 6971)
+++ 
xwiki-platform/xwiki-plugins/trunk/application-manager/src/main/java/com/xpn/xwiki/plugin/applicationmanager/doc/XWikiApplication.java
      2008-01-19 21:59:26 UTC (rev 6972)
@@ -74,6 +74,16 @@
     private static final String HQL_FILTER_DOC_PATTERN = "doc.fullName like ?";
 
     /**
+     * Open HQL group.
+     */
+    private static final String HQL_GROUP_OPEN = "(";
+
+    /**
+     * Clause HQL group.
+     */
+    private static final String HQL_GROUP_CLOSE = ")";
+
+    /**
      * Create new XWikiApplication managing provided XWikiDocument.
      * 
      * @param xdoc the encapsulated XWikiDocument
@@ -116,6 +126,26 @@
     }
 
     /**
+     * @return the pretty name of the application
+     * @see #setAppPrettyName(String)
+     */
+    public String getAppPrettyName()
+    {
+        return getStringValue(XWikiApplicationClass.FIELD_APPPRETTYNAME);
+    }
+
+    /**
+     * Modify the pratty name of the application.
+     * 
+     * @param appprettyname the new pretty name of the application.
+     * @see #getAppPrettyName()
+     */
+    public void setAppPrettyName(String appprettyname)
+    {
+        setStringValue(XWikiApplicationClass.FIELD_APPPRETTYNAME, 
appprettyname);
+    }
+
+    /**
      * @return the description of the application.
      * @see #setDescription(String)
      */
@@ -465,9 +495,9 @@
             String appFilter = app.createHqlFilter(type, values, false, 
includeAppDesc);
 
             if (!appFilter.equals("")) {
-                filter.append("(");
+                filter.append(HQL_GROUP_OPEN);
                 filter.append(appFilter);
-                filter.append(")");
+                filter.append(HQL_GROUP_CLOSE);
             }
         }
 
@@ -501,7 +531,9 @@
         if (!patterns.isEmpty()) {
             // Filter with applications documents
             if (!type.equals(XWikiApplicationClass.FIELD_DOCUMENTS)) {
+                filter.append(HQL_GROUP_OPEN);
                 filter.append(createHqlFilter(getDocuments(), values, false));
+                filter.append(HQL_GROUP_CLOSE);
             }
 
             // Filter with provided applications documents type
@@ -512,7 +544,9 @@
                     filter.append(HQL_AND);
                 }
 
+                filter.append(HQL_GROUP_OPEN);
                 filter.append(typeFilter);
+                filter.append(HQL_GROUP_CLOSE);
             }
         }
 
@@ -605,8 +639,8 @@
 
         String where = createHqlFilter(type, values, recurse, includeAppDesc);
 
-        return where.equals("") ? Collections.EMPTY_SET : new 
HashSet(context.getWiki().getStore()
-            .searchDocumentsNames(HQL_WHERE + " " + where, values, context));
+        return where.equals("") ? Collections.EMPTY_SET : new 
HashSet(context.getWiki()
+            .getStore().searchDocumentsNames(HQL_WHERE + " " + where, values, 
context));
     }
 
     /**

_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications

Reply via email to