1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.actions.mockresponse;
14
15 import com.eviware.soapui.config.MockResponseConfig;
16 import com.eviware.soapui.impl.wsdl.mock.WsdlMockOperation;
17 import com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse;
18 import com.eviware.soapui.support.UISupport;
19 import com.eviware.soapui.support.action.support.AbstractSoapUIAction;
20
21 /***
22 * Clones a WsdlMockResponse
23 *
24 * @author ole.matzura
25 */
26
27 public class CloneMockResponseAction extends AbstractSoapUIAction<WsdlMockResponse>
28 {
29 public CloneMockResponseAction()
30 {
31 super( "Clone", "Clones this MockResponse" );
32 }
33
34 public void perform( WsdlMockResponse mockResponse, Object param )
35 {
36 String name = UISupport.prompt( "Specify name of cloned MockResponse", getName(), "Copy of " + mockResponse.getName() );
37 if( name == null ) return;
38
39 WsdlMockOperation mockOperation = mockResponse.getMockOperation();
40 mockOperation.beforeSave();
41 MockResponseConfig config = mockOperation.getConfig().addNewResponse();
42 config.set( mockResponse.getConfig().copy() );
43 config.setName( name );
44 WsdlMockResponse newResponse = mockOperation.addNewMockResponse( config );
45
46 UISupport.selectAndShow( newResponse );
47 }
48 }