Class JobSchedulerProxy

java.lang.Object
edu.rit.pj.cluster.Proxy
edu.rit.pj.cluster.JobSchedulerProxy
All Implemented Interfaces:
JobSchedulerRef

public class JobSchedulerProxy extends Proxy implements JobSchedulerRef
Class JobSchedulerProxy provides a proxy object for sending messages to a PJ job scheduler process.
Version:
24-Jan-2012
Author:
Alan Kaminsky
  • Constructor Details

    • JobSchedulerProxy

      public JobSchedulerProxy(ChannelGroup theChannelGroup, Channel theChannel)
      Construct a new job scheduler proxy. The proxy will use the given channel in the given channel group to send messages to the job scheduler process.
      Parameters:
      theChannelGroup - Channel group.
      theChannel - Channel.
  • Method Details

    • backendFailed

      public void backendFailed(JobFrontendRef theJobFrontend, String name) throws IOException
      Report that a backend node failed. Report that a backend node failed.
      Specified by:
      backendFailed in interface JobSchedulerRef
      Parameters:
      theJobFrontend - Job frontend that is calling this method.
      name - Backend node name.
      Throws:
      IOException - Thrown if an I/O error occurred.
    • cancelJob

      public void cancelJob(JobFrontendRef theJobFrontend, String errmsg) throws IOException
      Cancel a job. Cancel a job.
      Specified by:
      cancelJob in interface JobSchedulerRef
      Parameters:
      theJobFrontend - Job frontend that is calling this method.
      errmsg - Error message string.
      Throws:
      IOException - Thrown if an I/O error occurred.
    • jobFinished

      public void jobFinished(JobFrontendRef theJobFrontend) throws IOException
      Report that a job finished. Report that a job finished.
      Specified by:
      jobFinished in interface JobSchedulerRef
      Parameters:
      theJobFrontend - Job frontend that is calling this method.
      Throws:
      IOException - Thrown if an I/O error occurred.
    • renewLease

      public void renewLease(JobFrontendRef theJobFrontend) throws IOException
      Renew the lease on a job. Renew the lease on a job.
      Specified by:
      renewLease in interface JobSchedulerRef
      Parameters:
      theJobFrontend - Job frontend that is calling this method.
      Throws:
      IOException - Thrown if an I/O error occurred.
    • reportComment

      public void reportComment(JobFrontendRef theJobFrontend, int rank, String comment) throws IOException
      Report a comment for a process. Report a comment for a process.
      Specified by:
      reportComment in interface JobSchedulerRef
      Parameters:
      theJobFrontend - Job frontend that is calling this method.
      rank - Process rank.
      comment - Comment string.
      Throws:
      IOException - Thrown if an I/O error occurred.
    • requestJob

      public void requestJob(JobFrontendRef theJobFrontend, String username, int Nn, int Np, int Nt) throws IOException
      Request that a job be scheduled. Request that a job be scheduled.
      Specified by:
      requestJob in interface JobSchedulerRef
      Parameters:
      theJobFrontend - Job frontend that is calling this method.
      username - User name.
      Nn - Number of backend nodes.
      Np - Number of processes.
      Nt - Number of CPUs per process. 0 means "all CPUs."
      Throws:
      IOException - Thrown if an I/O error occurred.