[
https://jira.jboss.org/jira/browse/DNA-217?page=com.atlassian.jira.plugin...
]
Randall Hauch resolved DNA-217.
-------------------------------
Resolution: Done
Added to Request a method isCancelled():boolean to check whether the request was
cancelled, and another method "cancel():void" to mark a request as cancelled.
Also added to the CompositeRequest the ability to mark the composite (or any contained
request) as cancelled, but to have all other requests (including the composite) be also
cancelled. This is done through a single AtomicBoolean instance shared amongst the
composite and contained requests.
Also added tests to verify the desired behavior.
Connector SPI should have protocol for cancelling operations
------------------------------------------------------------
Key: DNA-217
URL:
https://jira.jboss.org/jira/browse/DNA-217
Project: DNA
Issue Type: Task
Components: Connectors, Graph
Affects Versions: 0.2
Reporter: Randall Hauch
Assignee: Randall Hauch
Priority: Blocker
Fix For: 0.3
The Connector SPI needs a specific way for calls to the connector to be canceled.
Currently, most of the methods throw InterruptedException, which is a painful (and
confusing) way to handle it. This exception should be removed while the use of
ProgressMonitor be added.
Additionally, we may want to consider modifying the ProgressMonitor framework so that
it's possible for it to threat Thread.interrupt() as a cancellation (whereby it would
use that, in addition to the internal flag, to determine whether the monitor is canceled.
This may require an additional method whereby the code checking "isCanceled()"
acknowledges that it is canceling what it's doing (so that the ProgressMonitor can
call Thread.interrupted() to clear the interrupted state).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira