1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.actions;
14
15 import java.awt.event.ActionEvent;
16
17 import javax.swing.AbstractAction;
18 import javax.swing.Action;
19 import javax.swing.JFileChooser;
20
21 import com.eviware.soapui.SoapUI;
22 import com.eviware.soapui.impl.WorkspaceImpl;
23 import com.eviware.soapui.support.ExtensionFileFilter;
24
25 /***
26 * Actions for importing an existing soapui-project file into the current workspace
27 *
28 * @author Ole.Matzura
29 */
30
31 public class ImportWsdlProjectAction extends AbstractAction
32 {
33 private JFileChooser chooser;
34 private final WorkspaceImpl workspace;
35
36 public ImportWsdlProjectAction( WorkspaceImpl workspace )
37 {
38 super( "Import Project" );
39 this.workspace = workspace;
40 putValue( Action.SHORT_DESCRIPTION, "Adds an existing project into this workspace" );
41 }
42
43 public JFileChooser getChooser()
44 {
45 if( chooser == null )
46 {
47 chooser = new JFileChooser();
48 chooser.setDialogTitle("Select soapui project file");
49 chooser.setAcceptAllFileFilterUsed( true );
50 chooser.setFileFilter( new ExtensionFileFilter( ".xml", "XML Files (*.xml)"));
51 }
52
53 return chooser;
54 }
55
56 public void actionPerformed(ActionEvent e)
57 {
58 JFileChooser chooser = getChooser();
59 if( chooser.showOpenDialog( SoapUI.getInstance().getFrame() ) != JFileChooser.APPROVE_OPTION ) return;
60 String fileName = chooser.getSelectedFile().getAbsolutePath();
61 if( fileName == null ) return;
62
63 workspace.importProject( fileName );
64 }
65 }