01: /*
02: * soapUI, copyright (C) 2004-2007 eviware.com
03: *
04: * soapUI is free software; you can redistribute it and/or modify it under the
05: * terms of version 2.1 of the GNU Lesser General Public License as published by
06: * the Free Software Foundation.
07: *
08: * soapUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
09: * even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10: * See the GNU Lesser General Public License for more details at gnu.org.
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
29: AbstractSoapUIAction<WsdlProject> {
30: public static final String SOAPUI_ACTION_ID = "SaveProjectAsAction";
31:
32: public SaveProjectAsAction() {
33: super ("Save Project As", "Saves this project to a new file");
34: }
35:
36: public void perform(WsdlProject project, Object param) {
37: try {
38: File file = UISupport.getFileDialogs().saveAs(this ,
39: "Select soapui project file", "xml", "XML",
40: new File(project.getPath()));
41: if (file == null)
42: return;
43:
44: String fileName = file.getAbsolutePath();
45: if (fileName == null)
46: return;
47:
48: if (project.saveTo(fileName)) {
49: project.getWorkspace().save(true);
50: }
51: } catch (IOException e1) {
52: UISupport.showErrorMessage("Failed to save project; " + e1);
53: }
54: }
55: }
|