weka.experiment
Class RemoteEngine

java.lang.Object
  |
  +--java.rmi.server.RemoteObject
        |
        +--java.rmi.server.RemoteServer
              |
              +--java.rmi.server.UnicastRemoteObject
                    |
                    +--weka.experiment.RemoteEngine
All Implemented Interfaces:
Compute, java.rmi.Remote, java.io.Serializable

public class RemoteEngine
extends java.rmi.server.UnicastRemoteObject
implements Compute

A general purpose server for executing Task objects sent via RMI.

Version:
$Revision: 1.7 $
Author:
Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
Serialized Form

Constructor Summary
RemoteEngine(java.lang.String hostName)
          Constructor
 
Method Summary
 java.lang.Object checkStatus(java.lang.Object taskId)
          Returns status information on a particular task
 java.lang.Object executeTask(Task t)
          Takes a task object and queues it for execution
static void main(java.lang.String[] args)
          Main method.
 
Methods inherited from class java.rmi.server.UnicastRemoteObject
clone, exportObject, exportObject, exportObject, unexportObject
 
Methods inherited from class java.rmi.server.RemoteServer
getClientHost, getLog, setLog
 
Methods inherited from class java.rmi.server.RemoteObject
equals, getRef, hashCode, toString, toStub
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RemoteEngine

public RemoteEngine(java.lang.String hostName)
             throws java.rmi.RemoteException
Constructor

Parameters:
hostName - name of the host
Throws:
java.rmi.RemoteException - if something goes wrong
Method Detail

executeTask

public java.lang.Object executeTask(Task t)
                             throws java.rmi.RemoteException
Takes a task object and queues it for execution

Specified by:
executeTask in interface Compute
Parameters:
t - the Task object to execute
Returns:
an identifier for the Task that can be used when querying Task status
Throws:
java.rmi.RemoteException - if something goes wrong.

checkStatus

public java.lang.Object checkStatus(java.lang.Object taskId)
                             throws java.lang.Exception
Returns status information on a particular task

Specified by:
checkStatus in interface Compute
Parameters:
taskId - the ID of the task to check
Returns:
a TaskStatusInfo encapsulating task status info
Throws:
java.lang.Exception - if an error occurs

main

public static void main(java.lang.String[] args)
Main method. Gets address of the local host, creates a remote engine object and binds it in the RMI registry. If there is no RMI registry, then it tries to create one with default port 1099.

Parameters:
args -


Copyright (c) 2003 David Lindsay, Computer Learning Research Centre, Dept. Computer Science, Royal Holloway, University of London