Author: tmortagne
Date: 2007-12-18 16:12:48 +0100 (Tue, 18 Dec 2007)
New Revision: 6402
Modified:
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManager.java
Log:
Merge two very similar private methods in one.
Modified:
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManager.java
===================================================================
---
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManager.java
2007-12-18 13:17:25 UTC (rev 6401)
+++
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManager.java
2007-12-18 15:12:48 UTC (rev 6402)
@@ -236,33 +236,6 @@
}
/**
- * Get all [EMAIL PROTECTED] Wiki}.
- *
- * @param context the XWiki context.
- * @return the list of all [EMAIL PROTECTED] Wiki}.
- * @throws XWikiException error when getting wikis documents descriptors.
- */
- public List getAllWikis(XWikiContext context) throws XWikiException
- {
- List wikiList = new ArrayList();
-
- List parameterValues = new ArrayList();
-
- String wheresql =
- XWikiServerClass.getInstance(context).createWhereClause(null,
parameterValues);
- List documents =
- context.getWiki().getStore().searchDocuments(wheresql,
parameterValues, context);
-
- for (Iterator it = documents.iterator(); it.hasNext();) {
- XWikiDocument document = (XWikiDocument) it.next();
-
- wikiList.add(new Wiki(document, context));
- }
-
- return wikiList;
- }
-
- /**
* Get [EMAIL PROTECTED] Wiki} described by document with provided full
name.
*
* @param documentFullName the full name of the wiki document descriptor.
@@ -278,65 +251,46 @@
}
/**
- * Get the documents for which copied document content will be replace by
an
- * #includeInContext(SourceDocument) macro call.
+ * Get all [EMAIL PROTECTED] Wiki}.
*
- * @param wiki the name of the wiki where to find the list of documents.
* @param context the XWiki context.
- * @return the list of documents to include.
- * @throws XWikiException error when getting Applications descriptors
where searched documents
- * are listed.
+ * @return the list of all [EMAIL PROTECTED] Wiki}.
+ * @throws XWikiException error when getting wikis documents descriptors.
*/
- private Collection getDocsNameToInclude(String wiki, XWikiContext context)
- throws XWikiException
+ public List getAllWikis(XWikiContext context) throws XWikiException
{
- // Get applications manger
- ApplicationManagerPluginApi appmanager =
- (ApplicationManagerPluginApi) context.getWiki().getPluginApi(
- ApplicationManagerPlugin.PLUGIN_NAME, context);
+ List wikiList = new ArrayList();
- if (appmanager == null) {
- return null;
- }
+ List parameterValues = new ArrayList();
- // //////////////////////////////////
- // Get documents to include
+ String wheresql =
+ XWikiServerClass.getInstance(context).createWhereClause(null,
parameterValues);
+ List documents =
+ context.getWiki().getStore().searchDocuments(wheresql,
parameterValues, context);
- String database = context.getDatabase();
+ for (Iterator it = documents.iterator(); it.hasNext();) {
+ XWikiDocument document = (XWikiDocument) it.next();
- Collection docsToInclude = null;
-
- try {
- context.setDatabase(wiki);
-
- XWikiApplication rootApp = appmanager.getRootApplication();
-
- if (rootApp != null) {
- docsToInclude = rootApp.getDocsNameToInclude(true);
- } else {
- docsToInclude =
- XWikiApplication
-
.getDocsNameToInclude(appmanager.getApplicationDocumentList());
- }
- } finally {
- context.setDatabase(database);
+ wikiList.add(new Wiki(document, context));
}
- return docsToInclude;
+ return wikiList;
}
/**
* Get the documents for which copied document content will be replace by
an
- * #includeTopic(SourceDocument) macro call.
+ * #includeInContext(SourceDocument) or #includeTopic(SourceDocument)
macro call.
*
* @param wiki the name of the wiki where to find the list of documents.
* @param context the XWiki context.
- * @return the list of documents to include.
+ * @return a pair of list of documents names to include and list of
documents names to link.
* @throws XWikiException error when getting Applications descriptors
where searched documents
* are listed.
*/
- private Collection getDocsNameToLink(String wiki, XWikiContext context)
throws XWikiException
+ private Collection[] getDocsNames(String wiki, XWikiContext context)
throws XWikiException
{
+ Collection[] docsNames = new Collection[2];
+
// Get applications manger
ApplicationManagerPluginApi appmanager =
(ApplicationManagerPluginApi) context.getWiki().getPluginApi(
@@ -347,28 +301,28 @@
}
// //////////////////////////////////
- // Get documents to link
+ // Get documents to include or link
String database = context.getDatabase();
- Collection docsToLink = null;
-
try {
context.setDatabase(wiki);
XWikiApplication rootApp = appmanager.getRootApplication();
if (rootApp != null) {
- docsToLink = rootApp.getDocsNameToLink(true);
+ docsNames[0] = rootApp.getDocsNameToInclude(true);
+ docsNames[1] = rootApp.getDocsNameToLink(true);
} else {
- docsToLink =
-
XWikiApplication.getDocsNameToLink(appmanager.getApplicationDocumentList());
+ Collection applications =
appmanager.getApplicationDocumentList();
+ docsNames[0] =
XWikiApplication.getDocsNameToInclude(applications);
+ docsNames[1] =
XWikiApplication.getDocsNameToLink(applications);
}
} finally {
context.setDatabase(database);
}
- return docsToLink;
+ return docsNames;
}
/**
@@ -403,8 +357,10 @@
try {
context.setDatabase(targetWiki);
+ Collection[] docsNames = getDocsNames(sourceWiki, context);
+
// Replace documents contents to include
- Collection docsNameToInclude = getDocsNameToInclude(sourceWiki,
context);
+ Collection docsNameToInclude = docsNames[0];
for (Iterator it = docsNameToInclude.iterator(); it.hasNext();) {
String docFullName = (String) it.next();
XWikiDocument targetDoc = xwiki.getDocument(docFullName,
context);
@@ -414,7 +370,7 @@
}
// Replace documents contents to link
- Collection docsNameToLink = getDocsNameToLink(sourceWiki, context);
+ Collection docsNameToLink = docsNames[1];
for (Iterator it = docsNameToLink.iterator(); it.hasNext();) {
String docFullName = (String) it.next();
XWikiDocument targetDoc = xwiki.getDocument(docFullName,
context);
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications