Logo
Distributed Genetic Programming Framework
print print

File org.sfc.parallel.events.DefaultParallelListener.java

Here you can find all the information about the file org.sfc.parallel.events.DefaultParallelListener.java. You may explore it here or download it onto your local disk.
/*
 * Copyright (c) 2006 Thomas Weise
 *
 * E-Mail           : tweise@gmx.de
 * Creation Date    : 2006-02-21 09:35:35
 * Original Filename: org.sfc.parallel.events.DefaultParallelListener.java
 * Version          : 3.0.0
 * Last modification: 2006-04-10
 *                by: Thomas Weise
 *
 * License          : GNU LESSER GENERAL PUBLIC LICENSE
 *                    Version 2.1, February 1999
 *                    You should have received a copy of this license along
 *                    with this library; if not, write to the Free Software
 *                    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 *                    MA 02111-1307, USA or download the license under
 *                    http://www.gnu.org/copyleft/lesser.html.
 *
 * Warranty         : This software is provided "as is" without any
 *                    warranty; without even the implied warranty of
 *                    merchantability or fitness for a particular purpose.
 *                    See the Gnu Lesser General Public License for more
 *                    details.
 */


package org.sfc.parallel.events;

import org.sfc.events.DefaultEventListener;
import org.sfc.events.EventOutput;


/**
 * A default listener specialized for events maybe thrown by parallel
 * running things like sfc threads.
 *
 * @author Thomas Weise
 */

public class DefaultParallelListener extends DefaultEventListener
  {
/**
 * The state event handler.
 */

  public  static  final EventHandler<ParallelStateEvent>  STATE_EVENT_HANDLER =
        new EventHandler<ParallelStateEvent>()
    {
    @Override
    protected final void handle_event(final ParallelStateEvent  p_event,
                                      final EventOutput p_output)
      {
      Object l_o;

      l_o = p_event.getSource();
      if(l_o != null)
        {
        p_output.write(l_o.toString());
        }

      p_output.write(p_event.get_state() ? " has started."
                                         : " has terminated." );
      }
    };


/**
 * The shutdown event handler.
 */

  public  static  final EventHandler<ParallelShutdownEvent>
                                    SHUTDOWN_EVENT_HANDLER =
        new EventHandler<ParallelShutdownEvent>()
    {
    @Override
    protected final void handle_event(final ParallelShutdownEvent p_event,
                                      final EventOutput           p_output)
      {
      Object l_o;

      l_o = p_event.getSource();
      if(l_o != null)
        {
        p_output.write(l_o.toString());
        }

      p_output.write(" has received shutdown notification at ");
      p_output.write_time(p_event.get_time(), false);
      p_output.write('.');
      }
    };
    
/**
 * Create a new parallel event output listener.
 * @param p_out             The output stream to write to.
 * @param p_default_indent  The default indentation step width.
 */

  public  DefaultParallelListener(final Object p_out,
                                  final int    p_default_indent)
    {
    super(p_out, p_default_indent);
    this.add_handler(ParallelStateEvent.class,    STATE_EVENT_HANDLER);
    this.add_handler(ParallelShutdownEvent.class, SHUTDOWN_EVENT_HANDLER);
    }
  
/**
 * Create a new parallel event output listener.
 * @param p_out             The output stream to write to.
 */

  public  DefaultParallelListener(final Object p_out)
    {
    this(p_out, -1);
    }
  }

File Information:

file name:DefaultParallelListener.java
package:org.sfc.parallel.events
qualified name:org.sfc.parallel.events.DefaultParallelListener.java
file type:Java Source File
download location:download http://dgpf.sourceforge.net/source/org/sfc/parallel/events/DefaultParallelListener.java
size:3.435 KB (3518 B)
uploaded: 2018-01-07 12:03:36 GMT+0000
last update: 2006-05-05 14:23:36 GMT+0000
last access: 2018-04-27 02:32:04 GMT+0000

statistics online since 2006-01-02.   RSS Feed
Contact us by sending an email to tweise@gmx.de to receive further information, to report errors, or to join our project.
All content on this site (http://dgpf.sourceforge.net/) is LGPL-licensed.
http://dgpf.sourceforge.net/scripts/source/source.php last modified at 2018-01-07 12:03:34 GMT+0000 served at 2018-04-27 02:32:04 GMT+0000.
Valid CSS Valid XHTML 1.1
Valid RSS SourceForge.net Logo