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