1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.actions.mockresponse;
14
15 import java.awt.event.ActionEvent;
16
17 import javax.swing.Action;
18
19 import com.eviware.soapui.config.MockResponseConfig;
20 import com.eviware.soapui.impl.wsdl.actions.iface.AbstractSwingAction;
21 import com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse;
22 import com.eviware.soapui.support.UISupport;
23
24 public class CloneMockResponseAction extends AbstractSwingAction<WsdlMockResponse>
25 {
26 public CloneMockResponseAction( WsdlMockResponse mockResponse )
27 {
28 super( "Clone", "Clones this MockResponse", mockResponse );
29 putValue( Action.ACCELERATOR_KEY, UISupport.getKeyStroke( "F9" ));
30 }
31
32 @Override
33 public void actionPerformed( ActionEvent arg0, WsdlMockResponse mockResponse )
34 {
35 String name = UISupport.prompt( "Specify name of cloned MockResponse", getName(), "Copy of " + mockResponse.getName() );
36 if( name == null ) return;
37
38 MockResponseConfig config = mockResponse.getMockOperation().getConfig().addNewResponse();
39 config.set( mockResponse.getConfig().copy() );
40 config.setName( name );
41 WsdlMockResponse newResponse = mockResponse.getMockOperation().addNewMockResponse( config );
42
43 UISupport.selectAndShow( newResponse );
44 }
45 }