Author: thorsten
Date: Fri Apr 30 11:51:01 2010
New Revision: 939645
URL: http://svn.apache.org/viewvc?rev=939645&view=rev
Log:
DROIDS-78
Reporter: Richard Frovarp
Patch: Richard Frovarp
review: thorsten
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/LinkTask.java
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/Task.java
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/robot/walker/FileTask.java
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/LinkTask.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/LinkTask.java?rev=939645&r1=939644&r2=939645&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/LinkTask.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/LinkTask.java
Fri Apr 30 11:51:01 2010
@@ -34,6 +34,7 @@ public class LinkTask implements Link, S
private Collection<URI> linksTo;
private String anchorText;
private int weight;
+ private boolean aborted = false;
public LinkTask( Link from, URI uri, int depth )
{
@@ -111,4 +112,14 @@ public class LinkTask implements Link, S
public void setWeight(int weight) {
this.weight = weight;
}
+
+ @Override
+ public void abort() {
+ aborted = true;
+ }
+
+ @Override
+ public boolean isAborted() {
+ return aborted;
+ }
}
\ No newline at end of file
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/Task.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/Task.java?rev=939645&r1=939644&r2=939645&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/Task.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/Task.java
Fri Apr 30 11:51:01 2010
@@ -49,4 +49,8 @@ public interface Task extends Serializab
* @return the date when the task was created.
*/
Date getTaskDate();
+
+ public void abort();
+
+ public boolean isAborted();
}
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java?rev=939645&r1=939644&r2=939645&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
Fri Apr 30 11:51:01 2010
@@ -219,7 +219,8 @@ public class MultiThreadedTaskMaster<T e
if( monitor != null ) {
monitor.beforeExecute( task, worker );
}
- worker.execute(task);
+ if(!task.isAborted())
+ worker.execute(task);
lastCompletedTask = task;
} catch (DroidsException e) {
ex = e;
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java?rev=939645&r1=939644&r2=939645&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
Fri Apr 30 11:51:01 2010
@@ -78,7 +78,8 @@ public class SequentialTaskMaster<T exte
}
Worker<T> worker = droid.getNewWorker();
try {
- worker.execute( task );
+ if(!task.isAborted())
+ worker.execute( task );
completedTask++;
lastCompletedTask = task;
} catch (Exception ex) {
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/robot/walker/FileTask.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/robot/walker/FileTask.java?rev=939645&r1=939644&r2=939645&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/robot/walker/FileTask.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/robot/walker/FileTask.java
Fri Apr 30 11:51:01 2010
@@ -27,6 +27,7 @@ public class FileTask implements Task
private final Date started;
private final int depth;
private final File file;
+ private boolean aborted = false;
public FileTask( File file, int depth )
{
@@ -56,4 +57,14 @@ public class FileTask implements Task
{
return "Task["+depth+"]["+file.getAbsolutePath()+"]";
}
+
+ @Override
+ public void abort() {
+ aborted = true;
+ }
+
+ @Override
+ public boolean isAborted() {
+ return aborted;
+ }
}
\ No newline at end of file