Author: tmortagne
Date: 2008-01-24 11:01:26 +0100 (Thu, 24 Jan 2008)
New Revision: 7037
Modified:
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManagerPluginApi.java
Log:
XAWM-50: Trying to create a wiki without wiki name should return error
Modified:
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManagerPluginApi.java
===================================================================
---
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManagerPluginApi.java
2008-01-24 10:01:23 UTC (rev 7036)
+++
xwiki-platform/xwiki-plugins/trunk/wiki-manager/src/main/java/com/xpn/xwiki/plugin/wikimanager/WikiManagerPluginApi.java
2008-01-24 10:01:26 UTC (rev 7037)
@@ -66,7 +66,7 @@
* The default WikiManager managed exception.
*/
private XWikiExceptionApi defaultException;
-
+
/**
* API tool to be able to make and merge multi wikis search queries.
*/
@@ -76,7 +76,7 @@
* The plugin internationalization service.
*/
private XWikiPluginMessageTool messageTool;
-
+
/**
* Create an instance of the Wiki Manager plugin user api.
*
@@ -94,7 +94,7 @@
Locale locale = (Locale) context.get("locale");
this.messageTool = new WikiManagerMessageTool(locale, plugin, context);
context.put(WikiManager.MESSAGETOOL_CONTEXT_KEY, this.messageTool);
-
+
searchApi = plugin.getGlobalSearchApiPlugin(context);
}
@@ -113,7 +113,7 @@
{
return this.messageTool;
}
-
+
/**
* @return the GlobalSearch plugin api.
*/
@@ -168,29 +168,26 @@
int returncode = XWikiExceptionApi.ERROR_NOERROR;
- wikiXObjectDocument.setWikiName(wikiname);
+ try {
+ if (wikiname == null || wikiname.trim().equals("")) {
+ throw new
WikiManagerException(WikiManagerException.ERROR_WM_WIKINAMEFORBIDDEN,
+
messageTool.get(WikiManagerMessageTool.ERROR_WIKINAMEFORBIDDEN, wikiname));
+ }
- String realTemplateWikiName =
- templateWiki == null || templateWiki.trim().length() == 0 ? null :
templateWiki;
+ wikiXObjectDocument.setWikiName(wikiname);
- String realPkgName = pkgName == null || pkgName.trim().length() == 0 ?
null : pkgName;
+ String realTemplateWikiName =
+ templateWiki == null || templateWiki.trim().length() == 0 ?
null : templateWiki;
- try {
- String comment;
+ String realPkgName = pkgName == null || pkgName.trim().length() ==
0 ? null : pkgName;
- if (realTemplateWikiName != null) {
- comment =
WikiManagerMessageTool.COMMENT_CREATEWIKIFROMTEMPLATE;
- } else if (realPkgName != null) {
- comment = WikiManagerMessageTool.COMMENT_CREATEWIKIFROMPACKAGE;
- } else {
- comment = WikiManagerMessageTool.COMMENT_CREATEEMPTYWIKI;
- }
+ String comment = WikiManagerMessageTool.COMMENT_CREATEEMPTYWIKI;
WikiManager.getInstance().createNewWiki(wikiXObjectDocument,
failOnExist,
realTemplateWikiName, realPkgName, comment, this.context);
} catch (WikiManagerException e) {
- LOG.error(messageTool.get(WikiManagerMessageTool.LOG_WIKICREATION,
wikiXObjectDocument
- .toString()), e);
+ LOG.error(messageTool.get(WikiManagerMessageTool.LOG_WIKICREATION,
+ wikiXObjectDocument.toString()), e);
this.context.put(CONTEXT_LASTERRORCODE, new Integer(e.getCode()));
this.context.put(CONTEXT_LASTEXCEPTION, new XWikiExceptionApi(e,
this.context));
@@ -281,7 +278,7 @@
return doc;
}
-
+
/**
* @return the list of all [EMAIL PROTECTED] Wiki}.
* @throws XWikiException error when getting wiki documents descriptors.
@@ -558,8 +555,8 @@
this.messageTool.get(WikiManagerMessageTool.COMMENT_CREATEWIKITEMPLATE,
new String[] {templateName, packageName}), this.context);
} catch (WikiManagerException e) {
- LOG.error(messageTool.get(WikiManagerMessageTool.LOG_WIKICREATION,
wikiXObjectDocument
- .toString()), e);
+ LOG.error(messageTool.get(WikiManagerMessageTool.LOG_WIKICREATION,
+ wikiXObjectDocument.toString()), e);
this.context.put(CONTEXT_LASTERRORCODE, new Integer(e.getCode()));
this.context.put(CONTEXT_LASTEXCEPTION, new XWikiExceptionApi(e,
this.context));
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications