1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.actions.mockservice;
14
15 import com.eviware.soapui.SoapUI;
16 import com.eviware.soapui.impl.wsdl.mock.WsdlMockService;
17 import com.eviware.soapui.support.UISupport;
18 import com.eviware.soapui.support.action.support.AbstractSoapUIAction;
19
20 /***
21 * Clones a WsdlMockService
22 *
23 * @author Ole.Matzura
24 */
25
26 public class RestartMockServiceAction extends AbstractSoapUIAction<WsdlMockService>
27 {
28 public final static String SOAPUI_ACTION_ID = "RestartMockServiceAction";
29
30 public RestartMockServiceAction()
31 {
32 super( "Restart", "(Re)starts this MockService and opens its desktop window if required" );
33 }
34
35 public void perform( WsdlMockService mockService, Object param )
36 {
37 try
38 {
39 UISupport.setHourglassCursor();
40 if( !SoapUI.getDesktop().hasDesktopPanel( mockService ))
41 UISupport.showDesktopPanel( mockService );
42
43 if( mockService.getMockRunner() != null )
44 mockService.getMockRunner().stop();
45
46 mockService.start();
47 }
48 catch( Exception e )
49 {
50 UISupport.showErrorMessage( e );
51 }
52 finally
53 {
54 UISupport.resetCursor();
55 }
56 }
57 }