r1552 - xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime
Jeremi Joslin
jeremi at users.forge.objectweb.org
Tue Nov 14 17:11:30 CET 2006
Author: jeremi
Date: 2006-11-14 17:11:29 +0100 (Tue, 14 Nov 2006)
New Revision: 1552
Modified:
xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePlugin.java
xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePluginAPI.java
Log:
[GELC]
* list all the mimeType
Modified: xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePlugin.java
===================================================================
--- xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePlugin.java 2006-11-14 16:02:03 UTC (rev 1551)
+++ xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePlugin.java 2006-11-14 16:11:29 UTC (rev 1552)
@@ -35,9 +35,7 @@
import org.gelc.xwiki.plugins.mdfw.MetaDataFrameworkPlugin;
import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
+import java.util.*;
public class MimeTypePlugin extends XWikiDefaultPlugin implements XWikiPluginInterface, MimeTypeConstant {
@@ -140,10 +138,34 @@
MimeType doc = (MimeType) context.getWiki().getDocument((String) it.next(), context).newDocument(context);
categs.add(doc.getTitle());
}
-
return categs;
}
+ public Map getCategoriesMap(XWikiContext context) throws XWikiException {
+ String hql = ", BaseObject as obj where obj.name=doc.fullName"
+ + " and obj.className='" + MIMETYPE_CLASS_FULLNAME + "'";
+ List list = context.getWiki().getStore().searchDocumentsNames(hql, context);
+ Iterator it = list.iterator();
+ Map categories = new HashMap();
+ while(it.hasNext()){
+ MimeType doc = (MimeType) context.getWiki().getDocument((String) it.next(), context).newDocument(context);
+ doc.use(MIMETYPE_CLASS_FULLNAME);
+ String key = (String) doc.get(MIMETYPE_ITEM_CATEGORY);
+ List extList = new ArrayList();
+ Vector mimetypes = doc.getObjects(MIMETYPE_CLASS_FULLNAME);
+ Iterator itMime = mimetypes.iterator();
+ while(itMime.hasNext()){
+ Object obj = (Object) itMime.next();
+ doc.use(obj);
+ String ext = (String) doc.get(MIMETYPE_ITEM_EXTENSION);
+ if (ext != null && ext.length() > 0)
+ extList.add(ext);
+ }
+ categories.put(key, extList);
+ }
+ return categories;
+ }
+
private void initClasses(XWikiContext context) throws XWikiException {
initMimeTypeClass(context);
}
Modified: xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePluginAPI.java
===================================================================
--- xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePluginAPI.java 2006-11-14 16:02:03 UTC (rev 1551)
+++ xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/org/gelc/xwiki/plugins/mime/MimeTypePluginAPI.java 2006-11-14 16:11:29 UTC (rev 1552)
@@ -26,6 +26,7 @@
import com.xpn.xwiki.api.Api;
import java.util.List;
+import java.util.Map;
import java.io.IOException;
@@ -61,4 +62,7 @@
return plugin.getCategoryPageName(category, context);
}
+ public Map getCategoriesMap() throws XWikiException {
+ return plugin.getCategoriesMap(context);
+ }
}
More information about the Xwiki-notifications
mailing list