001    package com.sptci.rwt.webui;
002    
003    import nextapp.echo2.app.event.ActionEvent;
004    
005    import com.sptci.echo2.Listener;
006    import com.sptci.rwt.ConnectionManager;
007    
008    /**
009     * The listener for trigger a new connection to a database through a
010     * configured {@link javax.sql.DataSource}.
011     *
012     * <p>&copy; Copyright 2007 <a href='http://sptci.com/' target='_new'>Sans Pareil Technologies, Inc.</a></p>
013     * @author Rakesh Vidyadharan 2007-09-29
014     * @version $Id: DataSourceListener.java 4123 2008-05-25 21:49:01Z rakesh $
015     */
016    public class DataSourceListener extends Listener<MainController>
017    {
018      /**
019       * Create a new instance using the specified controller.
020       *
021       * @param controller The controller to use to interact with the
022       *   application.
023       */
024      public DataSourceListener( final MainController controller )
025      {
026        super( controller );
027      }
028    
029      /**
030       * The action listener implementation.  Update the application's
031       * connection source and reset the view.
032       */
033      public void actionPerformed( final ActionEvent event )
034      {
035        ConnectionManager manager =
036          new ConnectionManager( event.getActionCommand() );
037        controller.setConnectionManager( manager );
038      }
039    }