/*
 * This file is part of JGAP.
 *
 * JGAP offers a dual license model containing the LGPL as well as the MPL.
 *
 * For licensing information please see the file license.txt included with JGAP
 * or have a look at the top of class org.jgap.Chromosome which representatively
 * includes the JGAP license policy applicable for any file delivered with JGAP.
 */
package org.jgap.distr.grid;

import java.io.*;
import java.util.*;
import org.homedns.dade.jcgrid.message.*;

/**
 * Interface for grid client mediators.
 *
 * @author Klaus Meffert
 * @since 3.3.3
 */
public interface IGridClientMediator
    extends Serializable {
  /** String containing the CVS revision. Read out via reflection!*/
  final static String CVS_REVISION = "$Revision: 1.8 $";

  void connect()
      throws Exception;

  void disconnect()
      throws Exception;

  void send(GridMessage a_msg, MessageContext a_context,
            Map a_headerData)
      throws Exception;

  List listRequests(MessageContext a_context, String a_datetime,
                    String a_pattern)
      throws Exception;

  List listResults(MessageContext a_context, String a_datetime,
                   String a_pattern)
      throws Exception;

  GridMessage getGridMessage(MessageContext a_context, String a_datetime,
                             int a_timeoutSeconds, int a_waitTimeSeconds,
                             boolean a_removeRequest)
      throws Exception;

  void removeMessage(Object a_entry)
      throws Exception;

  void stop()
      throws Exception;

  /**
   * Backs up a result in the given sub directory.
   *
   * @param a_result the result to backup
   * @param a_subDir sub directory to store the copy of the result in
   * @param a_title the title of the entry to create
   *
   * @throws Exception
   *
   * @author Klaus Meffert
   * @since 3.3.4
   */
  void backupResult(Object a_result, String a_subDir, String a_title)
      throws Exception;
}

 

Ads help maintain this website.