You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by ry...@apache.org on 2008/10/08 19:00:04 UTC

svn commit: r702929 - in /labs/droids/branch/LABS-144/src: core/java/org/apache/droids/AbstractDroid.java robots/java/org/apache/droids/crawler/CrawlingDroid.java robots/java/org/apache/droids/walker/WalkingDroid.java

Author: ryan
Date: Wed Oct  8 10:00:03 2008
New Revision: 702929

URL: http://svn.apache.org/viewvc?rev=702929&view=rev
Log:
add an AbstractDroid that needs a queue and a TaskMaster

Added:
    labs/droids/branch/LABS-144/src/core/java/org/apache/droids/AbstractDroid.java
Modified:
    labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/crawler/CrawlingDroid.java
    labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/walker/WalkingDroid.java

Added: labs/droids/branch/LABS-144/src/core/java/org/apache/droids/AbstractDroid.java
URL: http://svn.apache.org/viewvc/labs/droids/branch/LABS-144/src/core/java/org/apache/droids/AbstractDroid.java?rev=702929&view=auto
==============================================================================
--- labs/droids/branch/LABS-144/src/core/java/org/apache/droids/AbstractDroid.java (added)
+++ labs/droids/branch/LABS-144/src/core/java/org/apache/droids/AbstractDroid.java Wed Oct  8 10:00:03 2008
@@ -0,0 +1,53 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.droids;
+
+import org.apache.droids.api.*;
+
+/**
+ * Manage common tasks in standard Droids
+ */
+public abstract class AbstractDroid implements Droid 
+{
+  protected final TaskQueue queue;
+  protected final TaskMaster taskMaster;
+  
+  public AbstractDroid( TaskQueue queue, TaskMaster taskMaster )
+  {
+    this.queue = queue;
+    this.taskMaster = taskMaster;
+  }
+  
+  public void start()
+  {
+    taskMaster.processAllTasks(queue, this);
+  }
+  
+  public void finished()
+  {
+    System.out.println( "FINISHED!!!" );
+  }
+
+  public final TaskQueue getQueue() {
+    return queue;
+  }
+
+  public final TaskMaster getTaskMaster() {
+    return taskMaster;
+  }
+}
+

Modified: labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/crawler/CrawlingDroid.java
URL: http://svn.apache.org/viewvc/labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/crawler/CrawlingDroid.java?rev=702929&r1=702928&r2=702929&view=diff
==============================================================================
--- labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/crawler/CrawlingDroid.java (original)
+++ labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/crawler/CrawlingDroid.java Wed Oct  8 10:00:03 2008
@@ -20,6 +20,7 @@
 import java.util.ArrayList;
 import java.util.Collection;
 
+import org.apache.droids.AbstractDroid;
 import org.apache.droids.LinkTask;
 import org.apache.droids.api.*;
 import org.apache.droids.helper.factories.HandlerFactory;
@@ -29,11 +30,8 @@
 import org.apache.droids.impl.MultiThreadedTaskMaster;
 import org.apache.droids.impl.SimpleTaskQueue;
 
-public class CrawlingDroid implements Droid 
+public class CrawlingDroid extends AbstractDroid 
 {
-  private final TaskQueue queue;
-  private final TaskMaster taskMaster;
-  
   private Collection<String> initialLocations;
 
   ProtocolFactory protocolFactory;
@@ -43,8 +41,7 @@
   
   public CrawlingDroid( TaskQueue queue, TaskMaster taskMaster )
   {
-    this.queue = queue;
-    this.taskMaster = taskMaster;
+    super( queue, taskMaster );
   }
 
   public void setInitialLocations(Collection<String> initialLocations) {
@@ -103,14 +100,6 @@
     this.handlerFactory = handlerFactory;
   }
 
-  public TaskQueue getQueue() {
-    return queue;
-  }
-
-  public TaskMaster getTaskMaster() {
-    return taskMaster;
-  }
-
   public URLFiltersFactory getFiltersFactory() {
     return filtersFactory;
   }

Modified: labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/walker/WalkingDroid.java
URL: http://svn.apache.org/viewvc/labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/walker/WalkingDroid.java?rev=702929&r1=702928&r2=702929&view=diff
==============================================================================
--- labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/walker/WalkingDroid.java (original)
+++ labs/droids/branch/LABS-144/src/robots/java/org/apache/droids/walker/WalkingDroid.java Wed Oct  8 10:00:03 2008
@@ -20,21 +20,18 @@
 import java.util.ArrayList;
 import java.util.Collection;
 
+import org.apache.droids.AbstractDroid;
 import org.apache.droids.impl.MultiThreadedTaskMaster;
 import org.apache.droids.impl.SimpleTaskQueue;
 import org.apache.droids.api.*;
 
-public class WalkingDroid implements Droid 
+public class WalkingDroid extends AbstractDroid
 {
-  private final TaskQueue queue;
-  private final TaskMaster taskMaster;
-  
   private Collection<File> initialFiles;
   
   public WalkingDroid( TaskQueue queue, TaskMaster taskMaster )
   {
-    this.queue = queue;
-    this.taskMaster = taskMaster;
+    super( queue, taskMaster );
   }
 
   public void setInitialFiles(Collection<File> initialFiles) {
@@ -50,11 +47,6 @@
     }
   }
   
-  public void start()
-  {
-    taskMaster.processAllTasks(queue, this);
-  }
-  
   public void finished()
   {
     System.out.println( "FINISHED!!!" );



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org