org.brains2b.coffee.plugin.search
Class NewsSearchProcess

java.lang.Object
  extended by org.brains2b.coffee.plugin.search.NewsSearchProcess
All Implemented Interfaces:
java.lang.Runnable, java.util.EventListener, CoffeeExchange, CoffeeExchangeControl, org.brains2b.task.Task, org.brains2b.task.TaskListener

public class NewsSearchProcess
extends java.lang.Object
implements CoffeeExchangeControl, org.brains2b.task.TaskListener

Main Processor for Queries

Runs query messages by calling articles list 25.000 at a time for the newsgroups in this query one by one. FilterInNewsGroup is used to filter in only the articles matching. All others will be ignored to save memory.

Version:
0.90.1 [09-04-2008]
Author:
dennis@brains2b.nl
See Also:
FilterInNewsGroup

Field Summary
 
Fields inherited from interface org.brains2b.task.Task
RESULT_ERROR, RESULT_OK, RESULT_WARNING
 
Constructor Summary
NewsSearchProcess()
          Constructor
 
Method Summary
 void addQueryMessage(QueryMessage qm)
          add a QueryMessage to this process
 void addTaskListener(org.brains2b.task.TaskListener tl)
          add a TaskListener to this process
 java.util.Stack getMessages()
           
 java.util.List getQueryMessages()
           
 int getResult()
           
 org.brains2b.task.TaskListener getTaskListener()
           
 boolean isClosing()
           
 boolean isFinished()
           
 void removeQueryMessage(QueryMessage qm)
          remove a QueryMessage from this process
 void removeTaskListener(org.brains2b.task.TaskListener tl)
          remove a TaskListener from this process
 void run()
           
 void setClosing(boolean closing)
           
 void setCurrentMessage(NNTPMessage message)
           
 void setFinished(boolean b)
           
 void taskProgressed(org.brains2b.task.TaskEvent e)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NewsSearchProcess

public NewsSearchProcess()
Constructor

Method Detail

getTaskListener

public org.brains2b.task.TaskListener getTaskListener()
Specified by:
getTaskListener in interface CoffeeExchangeControl

getMessages

public java.util.Stack getMessages()
Specified by:
getMessages in interface org.brains2b.task.Task

getResult

public int getResult()
Specified by:
getResult in interface org.brains2b.task.Task

isFinished

public boolean isFinished()
Specified by:
isFinished in interface org.brains2b.task.Task

setFinished

public void setFinished(boolean b)
Specified by:
setFinished in interface org.brains2b.task.Task

run

public void run()
Specified by:
run in interface java.lang.Runnable

setCurrentMessage

public void setCurrentMessage(NNTPMessage message)
Specified by:
setCurrentMessage in interface CoffeeExchange

addQueryMessage

public void addQueryMessage(QueryMessage qm)
add a QueryMessage to this process

Works on both finished and running process

Parameters:
qm - QueryMessage to add

removeQueryMessage

public void removeQueryMessage(QueryMessage qm)
remove a QueryMessage from this process

Works on running process, but not if this is the current one running

Parameters:
qm - QueryMessage to add

getQueryMessages

public java.util.List getQueryMessages()

taskProgressed

public void taskProgressed(org.brains2b.task.TaskEvent e)
Specified by:
taskProgressed in interface org.brains2b.task.TaskListener

addTaskListener

public void addTaskListener(org.brains2b.task.TaskListener tl)
add a TaskListener to this process

Parameters:
tl - TaskListener

removeTaskListener

public void removeTaskListener(org.brains2b.task.TaskListener tl)
remove a TaskListener from this process

Parameters:
tl - TaskListener

isClosing

public boolean isClosing()

setClosing

public void setClosing(boolean closing)