1 2 3 package org.nemesis.forum.search; 4 5 import org.apache.commons.logging.Log; 6 import org.apache.commons.logging.LogFactory; 7 import org.apache.lucene.document.DateField; 8 import org.apache.lucene.document.Document; 9 import org.apache.lucene.document.Field; 10 import org.nemesis.forum.Message; 11 12 17 public class MessageDocument { 18 static protected Log log = LogFactory.getLog(MessageDocument.class); 19 20 public static Document getDocument(Message m) { 21 22 try { 23 Document doc = new Document(); 25 doc.add(Field.Keyword("messageID", Integer.toString(m.getID()))); 26 doc.add(new Field("userID", Integer.toString(m.getUser().getID()), false, true, false)); 27 doc.add(new Field("threadID", Integer.toString(m.getForumThread().getID()), false, true, false)); 28 doc.add(new Field("forumID", Integer.toString(m.getForumThread().getForum().getID()), false, true, false)); 29 doc.add(Field.UnStored("subject", m.getSubject())); 30 doc.add(Field.UnStored("body", m.getBody())); 31 doc.add(new Field("creationDate", DateField.dateToString(m.getCreationDate()), false, true, false)); 32 33 34 return doc; 35 36 } catch (Throwable e) { 37 log.error("lucene document cannot be created",e); 38 return null; 39 } 40 } 41 } 42 | Popular Tags |