1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.actions.iface;
14
15 import java.awt.event.ActionEvent;
16
17 import javax.swing.AbstractAction;
18 import javax.swing.Action;
19 import javax.swing.JOptionPane;
20
21 import org.apache.commons.logging.Log;
22 import org.apache.commons.logging.LogFactory;
23
24 import com.eviware.soapui.SoapUI;
25 import com.eviware.soapui.impl.wsdl.WsdlInterface;
26 import com.eviware.soapui.impl.wsdl.WsdlProject;
27
28 /***
29 * Updates the definition of a WsdlInterface.
30 *
31 * @author Ole.Matzura
32 */
33
34 public class UpdateInterfaceAction extends AbstractAction
35 {
36 private final static Log log = LogFactory.getLog( UpdateInterfaceAction.class );
37 private final WsdlInterface iface;
38
39 public UpdateInterfaceAction( WsdlInterface iface )
40 {
41 super("Update Definition");
42 this.iface = iface;
43 putValue( Action.SHORT_DESCRIPTION, "Reload the definition for this interface and its operations");
44 }
45
46 public void actionPerformed(ActionEvent e)
47 {
48 WsdlProject wsdlProject = ((WsdlProject) iface.getProject());
49 String url = JOptionPane.showInputDialog(SoapUI.getInstance().getFrame(), "Refresh from specified url:",
50 iface.getDefinition());
51 if (url == null)
52 return;
53
54 try
55 {
56 iface.updateDefinition( url );
57 JOptionPane.showMessageDialog( SoapUI.getInstance().getFrame(),
58 "Update of interface successfull!", "Update Definition", JOptionPane.INFORMATION_MESSAGE );
59 }
60 catch (Exception e1)
61 {
62 JOptionPane.showMessageDialog( SoapUI.getInstance().getFrame(),
63 "Failed to update interface: [" + e1.getMessage() + "]",
64 "Update Definition", JOptionPane.ERROR_MESSAGE);
65 }
66 }
67 }