r1521 - xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene
Jeremi Joslin
jeremi at users.forge.objectweb.org
Wed Nov 8 12:13:32 CET 2006
Author: jeremi
Date: 2006-11-08 12:13:31 +0100 (Wed, 08 Nov 2006)
New Revision: 1521
Modified:
xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/IndexRebuilder.java
xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/LucenePluginApi.java
xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/ObjectData.java
Log:
index all objects
Modified: xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/IndexRebuilder.java
===================================================================
--- xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/IndexRebuilder.java 2006-11-08 10:19:42 UTC (rev 1520)
+++ xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/IndexRebuilder.java 2006-11-08 11:13:31 UTC (rev 1521)
@@ -65,7 +65,7 @@
indexUpdater.cleanIndex();
int retval = 0;
Collection wikiServers;
- com.xpn.xwiki.XWiki xwiki = wiki.getXWiki();
+ com.xpn.xwiki.XWiki xwiki = context.getWiki();
if (wiki.isVirtual()) {
wikiServers = findWikiServers(wiki, context);
if (LOG.isDebugEnabled()) {
Modified: xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/LucenePluginApi.java
===================================================================
--- xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/LucenePluginApi.java 2006-11-08 10:19:42 UTC (rev 1520)
+++ xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/LucenePluginApi.java 2006-11-08 11:13:31 UTC (rev 1521)
@@ -69,7 +69,7 @@
{
if (wiki.hasAdminRights ())
{
- return getPlugin ().rebuildIndex (wiki, context.getContext ());
+ return getPlugin().rebuildIndex (wiki, context.getContext());
}
LOG.info ("access denied to rebuildIndex: insufficient rights");
return -1;
Modified: xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/ObjectData.java
===================================================================
--- xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/ObjectData.java 2006-11-08 10:19:42 UTC (rev 1520)
+++ xwiki-apps/gelc/gelcv1/trunk/gelcplugins/src/main/java/net/jkraemer/xwiki/plugins/lucene/ObjectData.java 2006-11-08 11:13:31 UTC (rev 1521)
@@ -2,7 +2,7 @@
*
* ===================================================================
*
- * Copyright (c) 2005 Jens Krämer, All rights reserved.
+ * Copyright (c) 2005 Jens Kr�mer, All rights reserved.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -28,6 +28,10 @@
import com.xpn.xwiki.objects.BaseProperty;
import com.xpn.xwiki.objects.BaseObject;
+import java.util.List;
+import java.util.Map;
+import java.util.Iterator;
+
/**
* Hold the property values of the XWiki.ArticleClass Objects.
*/
@@ -75,18 +79,33 @@
private String getContentAsText(XWikiDocument doc, XWikiContext context) {
StringBuffer contentText = new StringBuffer();
try {
- BaseObject baseObject = doc.getObject("XWiki.ArticleClass");
- Object[] propertyNames = (Object[]) baseObject.getPropertyNames();
- BaseProperty baseProperty = null;
+ Map objects = doc.getxWikiObjects();
+ Iterator itKey = objects.keySet().iterator();
+ while(itKey.hasNext()) {
+ String className = (String) itKey.next();
+ Iterator itObj = doc.getObjects(className).iterator();
+ while(itObj.hasNext())
+ extractContent(contentText, (BaseObject) itObj.next(), context);
+ }
+
+ } catch (Exception e) {
+ LOG.error("error getting content from XWiki Objects ", e);
+ e.printStackTrace();
+ }
+ return contentText.toString();
+ }
+
+ private void extractContent(StringBuffer contentText, BaseObject baseObject, XWikiContext context){
+ try{
+ Object[] propertyNames = baseObject.getPropertyNames();
for (int i = 0; i < propertyNames.length; i++) {
- baseProperty = (BaseProperty) baseObject.getField((String) propertyNames[i]);
- contentText.append(baseProperty.getValue().toString());
- contentText.append(" ");
+ BaseProperty baseProperty = (BaseProperty) baseObject.getField((String) propertyNames[i]);
+ contentText.append(baseProperty.getValue().toString());
+ contentText.append(" ");
}
} catch (Exception e) {
- LOG.error("error getting content from XWiki Object of ArticleClass ", e);
+ LOG.error("error getting content from XWiki Object ", e);
e.printStackTrace();
}
- return contentText.toString();
}
}
More information about the Xwiki-notifications
mailing list