KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > javacoding > jspider > core > task > dispatch > DispatchSpiderTasks


1 package net.javacoding.jspider.core.task.dispatch;
2
3
4 import net.javacoding.jspider.core.Agent;
5 import net.javacoding.jspider.core.SpiderContext;
6 import net.javacoding.jspider.core.exception.*;
7 import net.javacoding.jspider.core.logging.LogFactory;
8 import net.javacoding.jspider.core.threading.WorkerThreadPool;
9
10
11 /**
12  *
13  * $Id: DispatchSpiderTasks.java,v 1.13 2003/03/27 17:44:18 vanrogu Exp $
14  *
15  * @author Günther Van Roey
16  */

17 public class DispatchSpiderTasks extends BaseDispatchTaskImpl {
18
19     protected WorkerThreadPool spiders;
20     protected Agent agent;
21     protected SpiderContext context;
22
23     public DispatchSpiderTasks(WorkerThreadPool spiders, SpiderContext context) {
24         super(context);
25         this.spiders = spiders;
26         this.agent = context.getAgent();
27         this.context = context;
28     }
29
30     public void execute() {
31         LogFactory.getLog(DispatchSpiderTasks.class).debug("Spider task dispatcher running ...");
32         while (running) {
33             try {
34                 spiders.assign(agent.getSpiderTask());
35             } catch (NoSuitableItemFoundException e) {
36             } catch (SpideringDoneException e) {
37                 running = false;
38             } catch (TaskAssignmentException e) {
39                 // We dealt with all subclasses, so this shouldn't happen !!!
40
}
41         }
42         LogFactory.getLog(DispatchSpiderTasks.class).debug("Spider task dispatcher dying ...");
43
44     }
45
46 }
47
Popular Tags