View Javadoc

    1   /*
    2    *  soapUI, copyright (C) 2004-2007 eviware.com
    3    *
    4    *  soapUI is free software; you can redistribute it and/or modify it under the
    5    *  terms of version 2.1 of the GNU Lesser General Public License as published by
    6    *  the Free Software Foundation.
    7    *
    8    *  soapUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
    9    *  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  {
    26  	public void run(ToolRunner runner) throws Exception
    27  	{
    28  		ProcessDialog processDialog = null;
    29
    30  		try
    31  		{
    32  			processDialog = new ProcessDialog( runner.getName(), runner.getDescription(), runner.showLog(), runner.canCancel() );
    33  			ModelItem modelItem = runner.getModelItem();
    34  			if( modelItem == null )
    35  				processDialog.log("Running " + runner.getName() + "\r\n");
    36  			else
    37  				processDialog.log("Running " + runner.getName() + " for [" + modelItem.getName() + "]\r\n");
    38  			processDialog.run( runner );
    39  		}
    40  		catch (Exception ex)
    41  		{
    42  			UISupport.showErrorMessage( ex );
    43  			throw ex;
    44  		}
    45  		finally
    46  		{
    47  			if( processDialog != null )
    48  				processDialog.setVisible( false );
    49  		}
    50  	}
    51  }