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.iface.tools.support;
14:
15: import com.eviware.soapui.model.ModelItem;
16: import com.eviware.soapui.support.UISupport;
17:
18: /**
19: * Swing-based ToolHost
20: *
21: * @author ole.matzura
22: */
23:
24: public class SwingToolHost implements ToolHost {
25: public void run(ToolRunner runner) throws Exception {
26: ProcessDialog processDialog = null;
27:
28: try {
29: processDialog = new ProcessDialog(runner.getName(), runner
30: .getDescription(), runner.showLog(), runner
31: .canCancel());
32: ModelItem modelItem = runner.getModelItem();
33: if (modelItem == null)
34: processDialog.log("Running " + runner.getName()
35: + "\r\n");
36: else
37: processDialog.log("Running " + runner.getName()
38: + " for [" + modelItem.getName() + "]\r\n");
39: processDialog.run(runner);
40: } catch (Exception ex) {
41: UISupport.showErrorMessage(ex);
42: throw ex;
43: } finally {
44: if (processDialog != null)
45: processDialog.setVisible(false);
46: }
47: }
48: }
|