1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.actions.project;
14
15 import java.io.File;
16 import java.io.IOException;
17
18 import com.eviware.soapui.impl.wsdl.WsdlProject;
19 import com.eviware.soapui.support.UISupport;
20 import com.eviware.soapui.support.action.support.AbstractSoapUIAction;
21
22 /***
23 * Prompts to save a WsdlProject to a new file
24 *
25 * @author Ole.Matzura
26 */
27
28 public class SaveProjectAsAction extends AbstractSoapUIAction<WsdlProject>
29 {
30 public static final String SOAPUI_ACTION_ID = "SaveProjectAsAction";
31
32 public SaveProjectAsAction()
33 {
34 super( "Save Project As", "Saves this project to a new file" );
35 }
36
37 public void perform( WsdlProject project, Object param )
38 {
39 try
40 {
41 String path = project.getPath();
42 if( path == null )
43 {
44 project.save();
45 }
46 else
47 {
48 File file = UISupport.getFileDialogs().saveAs( this, "Select soapui project file", "xml", "XML",
49 new File( path ) );
50 if( file == null )
51 return;
52
53 String fileName = file.getAbsolutePath();
54 if( fileName == null )
55 return;
56
57 if( project.saveAs( fileName ) )
58 {
59 project.getWorkspace().save( true );
60 }
61 }
62 }
63 catch( IOException e1 )
64 {
65 UISupport.showErrorMessage( "Failed to save project; " + e1 );
66 }
67 }
68 }