View Javadoc

1   /*
2    *  soapUI Pro, copyright (C) 2007 eviware software ab 
3    */
4   
5   package com.eviware.soapui.support.dnd.handlers;
6   
7   import com.eviware.soapui.SoapUI;
8   import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestStep;
9   
10  public class TestStepToTestStepDropHandler extends AbstractBeforeAfterModelItemDropHandler<WsdlTestStep,WsdlTestStep>
11  {
12  	public TestStepToTestStepDropHandler()
13  	{
14  		super( WsdlTestStep.class, WsdlTestStep.class );
15  	}
16  	
17  	boolean copyAfter( WsdlTestStep source, WsdlTestStep target )
18  	{
19  		return DragAndDropSupport.copyTestStep( source, target.getTestCase(), target.getTestCase().getIndexOfTestStep( target )+1 );
20  	}
21  
22  	boolean moveAfter( WsdlTestStep source, WsdlTestStep target )
23  	{
24  		return DragAndDropSupport.moveTestStep( source, target.getTestCase(), target.getTestCase().getIndexOfTestStep( target )+1 );
25  	}
26  
27  	@Override
28  	boolean canCopyAfter( WsdlTestStep source, WsdlTestStep target )
29  	{
30  		return !SoapUI.getTestMonitor().hasRunningTest( target.getTestCase() );
31  	}
32  
33  	@Override
34  	boolean canMoveAfter( WsdlTestStep source, WsdlTestStep target )
35  	{
36  		return source != target;
37  	}
38  	
39  	@Override
40  	String getCopyAfterInfo( WsdlTestStep source, WsdlTestStep target )
41  	{
42  		return source.getTestCase() == target.getTestCase() ? 
43  					"Copy TestStep [" + source.getName() + "] within TestCase [" + target.getTestCase().getName() + "]" :
44  					"Copy TestStep [" + source.getName() + "] to TestCase [" + target.getTestCase().getName() + "]";
45  	}
46  
47  	@Override
48  	String getMoveAfterInfo( WsdlTestStep source, WsdlTestStep target )
49  	{
50  		return source.getTestCase() == target.getTestCase() ? 
51  					"Move TestStep [" + source.getName() + "] within TestCase [" + target.getTestCase().getName() + "]" :
52  					"Move TestStep [" + source.getName() + "] to TestCase [" + target.getTestCase().getName() + "]";
53  	}
54  
55  	@Override
56  	boolean canCopyBefore( WsdlTestStep source, WsdlTestStep target )
57  	{
58  		return true;
59  	}
60  
61  	@Override
62  	boolean canMoveBefore( WsdlTestStep source, WsdlTestStep target )
63  	{
64  		return source != target;
65  	}
66  
67  	@Override
68  	boolean copyBefore( WsdlTestStep source, WsdlTestStep target )
69  	{
70  		return DragAndDropSupport.copyTestStep( source, target.getTestCase(), target.getTestCase().getIndexOfTestStep( target ) );
71  	}
72  
73  	@Override
74  	String getCopyBeforeInfo( WsdlTestStep source, WsdlTestStep target )
75  	{
76  		return getCopyAfterInfo( source, target );
77  	}
78  
79  	@Override
80  	String getMoveBeforeInfo( WsdlTestStep source, WsdlTestStep target )
81  	{
82  		return getMoveAfterInfo( source, target );
83  	}
84  
85  	@Override
86  	boolean moveBefore( WsdlTestStep source, WsdlTestStep target )
87  	{
88  		return DragAndDropSupport.moveTestStep( source, target.getTestCase(), target.getTestCase().getIndexOfTestStep( target ) );
89  	}
90  }