You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by ga...@apache.org on 2005/12/16 02:37:37 UTC
svn commit: r357101 - in /incubator/roller/trunk:
src/org/roller/business/search/operations/IndexOperation.java
src/org/roller/config/RollerConfig.java web/WEB-INF/classes/roller.properties
Author: gangolli
Date: Thu Dec 15 17:37:34 2005
New Revision: 357101
URL: http://svn.apache.org/viewcvs?rev=357101&view=rev
Log:
Added functionality for disabling indexing of comments, based loosely on patch suggested by Matt Schmidt.
Modified:
incubator/roller/trunk/src/org/roller/business/search/operations/IndexOperation.java
incubator/roller/trunk/src/org/roller/config/RollerConfig.java
incubator/roller/trunk/web/WEB-INF/classes/roller.properties
Modified: incubator/roller/trunk/src/org/roller/business/search/operations/IndexOperation.java
URL: http://svn.apache.org/viewcvs/incubator/roller/trunk/src/org/roller/business/search/operations/IndexOperation.java?rev=357101&r1=357100&r2=357101&view=diff
==============================================================================
--- incubator/roller/trunk/src/org/roller/business/search/operations/IndexOperation.java (original)
+++ incubator/roller/trunk/src/org/roller/business/search/operations/IndexOperation.java Thu Dec 15 17:37:34 2005
@@ -20,6 +20,7 @@
import org.roller.pojos.WeblogCategoryData;
import org.roller.pojos.WeblogEntryData;
import org.roller.util.Utilities;
+import org.roller.config.RollerConfig;
/**
* @author aim4min
@@ -51,28 +52,41 @@
// ================================================================
protected Document getDocument(WeblogEntryData data) {
- StringBuffer commentEmail = new StringBuffer();
- StringBuffer commentContent = new StringBuffer();
- StringBuffer commentName = new StringBuffer();
-
- List comments = data.getComments();
- if (comments != null) {
- for (Iterator cItr = comments.iterator(); cItr.hasNext();) {
- CommentData comment = (CommentData) cItr.next();
- if (comment.getSpam() == null || !comment.getSpam().booleanValue()) {
- if (comment.getContent() != null) {
- commentContent.append(comment.getContent());
- commentContent.append(",");
- }
- if (comment.getEmail() != null) {
- commentEmail.append(comment.getEmail());
- commentEmail.append(",");
- }
- if (comment.getName() != null) {
- commentName.append(comment.getName());
- commentName.append(",");
+
+ // Actual comment content is indexed only if search.index.comments
+ // is true or absent from the (static) configuration properties.
+ // If false in the configuration, comments are treated as if empty.
+ boolean indexComments = RollerConfig.getBooleanProperty("search.index.comments", true);
+
+ String commentContent = "";
+ String commentEmail = "";
+ String commentName = "";
+ if (indexComments) {
+ List comments = data.getComments();
+ if (comments != null) {
+ StringBuffer commentEmailBuf = new StringBuffer();
+ StringBuffer commentContentBuf = new StringBuffer();
+ StringBuffer commentNameBuf = new StringBuffer();
+ for (Iterator cItr = comments.iterator(); cItr.hasNext();) {
+ CommentData comment = (CommentData) cItr.next();
+ if (comment.getSpam() == null || !comment.getSpam().booleanValue()) {
+ if (comment.getContent() != null) {
+ commentContentBuf.append(comment.getContent());
+ commentContentBuf.append(",");
+ }
+ if (comment.getEmail() != null) {
+ commentEmailBuf.append(comment.getEmail());
+ commentEmailBuf.append(",");
+ }
+ if (comment.getName() != null) {
+ commentNameBuf.append(comment.getName());
+ commentNameBuf.append(",");
+ }
}
}
+ commentEmail = commentEmailBuf.toString();
+ commentContent = commentContentBuf.toString();
+ commentName = commentNameBuf.toString();
}
}
@@ -99,12 +113,9 @@
.toString()));
// index Comments
- doc.add(Field.UnStored(FieldConstants.C_CONTENT, commentContent
- .toString()));
- doc
- .add(Field.UnStored(FieldConstants.C_EMAIL, commentEmail
- .toString()));
- doc.add(Field.UnStored(FieldConstants.C_NAME, commentName.toString()));
+ doc.add(Field.UnStored(FieldConstants.C_CONTENT, commentContent));
+ doc.add(Field.UnStored(FieldConstants.C_EMAIL, commentEmail));
+ doc.add(Field.UnStored(FieldConstants.C_NAME, commentName));
doc.add(Field.UnStored(FieldConstants.CONSTANT, FieldConstants.CONSTANT_V));
Modified: incubator/roller/trunk/src/org/roller/config/RollerConfig.java
URL: http://svn.apache.org/viewcvs/incubator/roller/trunk/src/org/roller/config/RollerConfig.java?rev=357101&r1=357100&r2=357101&view=diff
==============================================================================
--- incubator/roller/trunk/src/org/roller/config/RollerConfig.java (original)
+++ incubator/roller/trunk/src/org/roller/config/RollerConfig.java Thu Dec 15 17:37:34 2005
@@ -5,18 +5,15 @@
package org.roller.config;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.roller.util.PropertyExpander;
+
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.StringWriter;
import java.util.Enumeration;
import java.util.Properties;
-import java.util.List;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.roller.util.PropertyExpander;
/**
@@ -139,19 +136,24 @@
/**
- * Retrieve a property as a boolean ... defaults to false if there is an error
+ * Retrieve a property as a boolean ... defaults to false if not present.
**/
public static boolean getBooleanProperty(String name) {
+ return getBooleanProperty(name,false);
+ }
+ /**
+ * Retrieve a property as a boolean ... with specified default if not present.
+ */
+ public static boolean getBooleanProperty(String name, boolean defaultValue) {
// get the value first, then convert
String value = RollerConfig.getProperty(name);
if(value == null)
- return false;
+ return defaultValue;
return (new Boolean(value)).booleanValue();
}
-
/**
* Retrieve all property keys
Modified: incubator/roller/trunk/web/WEB-INF/classes/roller.properties
URL: http://svn.apache.org/viewcvs/incubator/roller/trunk/web/WEB-INF/classes/roller.properties?rev=357101&r1=357100&r2=357101&view=diff
==============================================================================
--- incubator/roller/trunk/web/WEB-INF/classes/roller.properties (original)
+++ incubator/roller/trunk/web/WEB-INF/classes/roller.properties Thu Dec 15 17:37:34 2005
@@ -54,6 +54,9 @@
# Directory in which search index is to be created (delete this directory to
# force Roller to recreate the entire search index)
search.index.dir=${user.home}/roller_data/search-index
+# Whether or not to include comments in the search index. If this
+# is false, comments are not included in the index.
+search.index.comments=true
#----------------------------------
# Cache settings.