Project: eclipse-instasearch
package it.unibz.instasearch.indexing;
 
import org.apache.lucene.index.Term; 
 
/** 
 * Document fields for indexing and searching 
 */
 
public enum Field  
 EXT("Extension"), PROJ("Project"), WS("Working Set"), 
 CONTENTS, FILE, NAME, JAR, DIR, MODIFIED("Modified"); 
  
 private String title; 
  
 private Field() { 
 
  
 private Field(String title) { 
  this.title = title; 
 
  
 /**
  * @return the title 
  */
 
 public String getTitle() { 
  if( title == null ) 
   return name(); 
   
  return title; 
 
  
 /**
  * Create a term of this field 
  * @param text  
  * @return Term 
  */
 
 public Term createTerm(String text) { 
  return new Term(name().toLowerCase(), text); 
 
  
 /**
  *  
  * @param fieldName (case insensitive) 
  * @return Field or null if no such field exists 
  */
 
 public static Field getByName(String fieldName) 
 
  try { 
   return Field.valueOf(fieldName.toUpperCase()); 
  catch(Exception e) { 
   return null
  
 
  
 public String toString() {  
  return name().toLowerCase(); 
 
}