@Component(value="squashtest.tm.service.deletion.TestCaseNodeDeletionHandler") @Transactional public class TestCaseNodeDeletionHandlerImpl extends AbstractNodeDeletionHandler<org.squashtest.tm.domain.testcase.TestCaseLibraryNode,org.squashtest.tm.domain.testcase.TestCaseFolder> implements TestCaseNodeDeletionHandler
| Constructor and Description |
|---|
TestCaseNodeDeletionHandlerImpl() |
| Modifier and Type | Method and Description |
|---|---|
protected OperationReport |
batchDeleteNodes(List<Long> ids)
Will delete the nodes identified by the ids parameter.
|
protected OperationReport |
batchUnbindFromMilestone(List<Long> ids)
Will unbind the given nodes from the given milestone.
|
protected LockedFileInferenceGraph |
createCallTestCaseGraph(List<Long> candidatesId) |
void |
deleteStep(org.squashtest.tm.domain.testcase.TestCase owner,
org.squashtest.tm.domain.testcase.TestStep step) |
protected List<Long> |
detectLockedNodes(List<Long> nodeIds)
Given a list of node ids, returns a sublist corresponding to the ids of the nodes which cannot be deleted
according to the specs.
|
protected List<SuppressionPreviewReport> |
diagnoseSuppression(List<Long> nodeIds)
Given their ids, that method should check the nodes and actually report the informations as specified in
NodeDeletionHandler.simulateDeletion(List). |
protected FolderDao<org.squashtest.tm.domain.testcase.TestCaseFolder,org.squashtest.tm.domain.testcase.TestCaseLibraryNode> |
getFolderDao()
The implemention should return which FolderDao to use depending on the end domain object.
|
protected boolean |
isMilestoneMode() |
protected NotDeletablePreviewReport |
previewLockedNodes(List<Long> nodeIds) |
protected void |
reportExecutedTestCases(List<Long> nodeIds,
List<SuppressionPreviewReport> preview) |
protected void |
reportLocksByCallSteps(List<Long> nodeIds,
List<SuppressionPreviewReport> preview) |
protected void |
reportLocksByMilestones(List<Long> nodeIds,
List<SuppressionPreviewReport> preview) |
protected void |
reportMultipleMilestoneBinding(List<Long> testCaseIds,
List<SuppressionPreviewReport> preview) |
protected void |
reportNoFoldersAllowed(List<Long> folderIds,
List<SuppressionPreviewReport> preview) |
createLockedFileInferenceTree, deleteNodes, findNodeHierarchy, findPairedNodeHierarchy, simulateDeletionclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdeleteNodes, simulateDeletionprotected FolderDao<org.squashtest.tm.domain.testcase.TestCaseFolder,org.squashtest.tm.domain.testcase.TestCaseLibraryNode> getFolderDao()
AbstractNodeDeletionHandlergetFolderDao in class AbstractNodeDeletionHandler<org.squashtest.tm.domain.testcase.TestCaseLibraryNode,org.squashtest.tm.domain.testcase.TestCaseFolder>protected List<SuppressionPreviewReport> diagnoseSuppression(List<Long> nodeIds)
AbstractNodeDeletionHandler
Given their ids, that method should check the nodes and actually report the informations as specified in
NodeDeletionHandler.simulateDeletion(List). See AbstractNodeDeletionHandler.detectLockedNodes(List) for details regarding
the input list.
diagnoseSuppression in class AbstractNodeDeletionHandler<org.squashtest.tm.domain.testcase.TestCaseLibraryNode,org.squashtest.tm.domain.testcase.TestCaseFolder>nodeIds - the complete list of the nodes involved in that report.protected void reportMultipleMilestoneBinding(List<Long> testCaseIds, List<SuppressionPreviewReport> preview)
protected void reportNoFoldersAllowed(List<Long> folderIds, List<SuppressionPreviewReport> preview)
protected void reportExecutedTestCases(List<Long> nodeIds, List<SuppressionPreviewReport> preview)
protected void reportLocksByCallSteps(List<Long> nodeIds, List<SuppressionPreviewReport> preview)
protected void reportLocksByMilestones(List<Long> nodeIds, List<SuppressionPreviewReport> preview)
protected List<Long> detectLockedNodes(List<Long> nodeIds)
AbstractNodeDeletionHandlerGiven a list of node ids, returns a sublist corresponding to the ids of the nodes which cannot be deleted according to the specs. The input list includes all the nodes and their children in the directory structure. The implementation is responsible to fetch any other dependencies needed for the completion of its task. The implementation is not required to resolve which folders are locked : this abstract class will handle that on the basis of the returned value.
detectLockedNodes in class AbstractNodeDeletionHandler<org.squashtest.tm.domain.testcase.TestCaseLibraryNode,org.squashtest.tm.domain.testcase.TestCaseFolder>nodeIds - all the node ids.protected OperationReport batchDeleteNodes(List<Long> ids)
AbstractNodeDeletionHandlerbatchDeleteNodes in class AbstractNodeDeletionHandler<org.squashtest.tm.domain.testcase.TestCaseLibraryNode,org.squashtest.tm.domain.testcase.TestCaseFolder>ids - the doomed node ids.protected OperationReport batchUnbindFromMilestone(List<Long> ids)
AbstractNodeDeletionHandlerbatchUnbindFromMilestone in class AbstractNodeDeletionHandler<org.squashtest.tm.domain.testcase.TestCaseLibraryNode,org.squashtest.tm.domain.testcase.TestCaseFolder>public void deleteStep(org.squashtest.tm.domain.testcase.TestCase owner,
org.squashtest.tm.domain.testcase.TestStep step)
deleteStep in interface TestCaseNodeDeletionHandlerprotected NotDeletablePreviewReport previewLockedNodes(List<Long> nodeIds)
protected LockedFileInferenceGraph createCallTestCaseGraph(List<Long> candidatesId)
protected boolean isMilestoneMode()
isMilestoneMode in class AbstractNodeDeletionHandler<org.squashtest.tm.domain.testcase.TestCaseLibraryNode,org.squashtest.tm.domain.testcase.TestCaseFolder>Copyright © 2010–2017 Henix, henix.fr. All rights reserved.