Author: otis
Date: Fri Dec 24 14:54:40 2010
New Revision: 1052517
URL: http://svn.apache.org/viewvc?rev=1052517&view=rev
Log:
DROIDS-92 Externalize SaveHandler creation
Modified:
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/DroidsFactory.java
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/impl/SaveCrawlingDroid.java
Modified:
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/DroidsFactory.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/DroidsFactory.java?rev=1052517&r1=1052516&r2=1052517&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/DroidsFactory.java
(original)
+++
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/DroidsFactory.java
Fri Dec 24 14:54:40 2010
@@ -27,6 +27,7 @@ import org.apache.droids.api.Handler;
import org.apache.droids.api.Link;
import org.apache.droids.api.URLFilter;
import org.apache.droids.delay.SimpleDelayTimer;
+import org.apache.droids.handle.SaveHandler;
import org.apache.droids.helper.factories.HandlerFactory;
import org.apache.droids.helper.factories.ParserFactory;
import org.apache.droids.helper.factories.ProtocolFactory;
@@ -104,7 +105,7 @@ public class DroidsFactory
taskMaster.setDelayTimer( simpleDelayTimer );
taskMaster.setExceptionHandler(new DefaultTaskExceptionHandler());
- CrawlingDroid crawler = new SaveCrawlingDroid( simpleQueue, taskMaster );
+ CrawlingDroid crawler = new SaveCrawlingDroid( simpleQueue, taskMaster,
new SaveHandler() );
crawler.setFiltersFactory(filtersFactory);
crawler.setParserFactory(parserFactory);
crawler.setProtocolFactory(protocolFactory);
Modified:
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/impl/SaveCrawlingDroid.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/impl/SaveCrawlingDroid.java?rev=1052517&r1=1052516&r2=1052517&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/impl/SaveCrawlingDroid.java
(original)
+++
incubator/droids/trunk/droids-core/src/test/java/org/apache/droids/impl/SaveCrawlingDroid.java
Fri Dec 24 14:54:40 2010
@@ -19,24 +19,28 @@
package org.apache.droids.impl;
import org.apache.droids.DroidsFactory;
+import org.apache.droids.api.Handler;
import org.apache.droids.api.Link;
import org.apache.droids.api.TaskMaster;
import org.apache.droids.api.TaskQueue;
import org.apache.droids.api.Worker;
-import org.apache.droids.handle.SaveHandler;
import org.apache.droids.robot.crawler.CrawlingDroid;
import org.apache.droids.robot.crawler.CrawlingWorker;
public class SaveCrawlingDroid extends CrawlingDroid {
+ private final Handler defaultHandler;
- public SaveCrawlingDroid(TaskQueue<Link> queue, TaskMaster<Link> taskMaster)
{
+ public SaveCrawlingDroid(TaskQueue<Link> queue, TaskMaster<Link> taskMaster,
final Handler defaultHandlerForWorkerCreation ) {
super(queue, taskMaster);
+
+ assert( defaultHandlerForWorkerCreation != null );
+ this.defaultHandler = defaultHandlerForWorkerCreation;
}
@Override
public Worker<Link> getNewWorker() {
final CrawlingWorker worker = new CrawlingWorker( this );
- worker.setHandlerFactory(DroidsFactory.createDefaultHandlerFactory(new
SaveHandler()));
+
worker.setHandlerFactory(DroidsFactory.createDefaultHandlerFactory(this.defaultHandler));
return worker;
}