XPUSP - Home

br.usp.ime.xpusp
Interface ScheduleGenerator

All Known Implementing Classes:
DefaultGenerator, GAScheduleGenerator

public interface ScheduleGenerator

This interface should be implemented by any class that implements a schedule generator. One should be aware that implementing classes should not hold persistent data on class variables, this because it is very common for calls on cleanUp, prepare, ... to be made on different instances of the implementation class. The reason for this is that several month could pass between one call and another. So that means that if cleanUp is needed, prepare should check if cleanUp was called, and so forth.

Version:
$Id: ScheduleGenerator.java,v 1.4 2002/05/31 04:09:31 alex_freire Exp $
Author:
Christian Willy Asmussen

Method Summary
 void cleanUp()
          If there is a necessity to cleanup between one year and anotherone.
 void prepare()
          If there is a need to perform preparation before starting to generate the solution, this method should implement that.
 void startSolving(Year year)
          Start solving the problem.
 void stopSolving(Year year)
          Stop solving the problem.
 

Method Detail

cleanUp

public void cleanUp()
             throws java.lang.Exception
If there is a necessity to cleanup between one year and anotherone. This method should be able to do that. It is called by Year.doStartpooling to ensure that everything has been cleaned up.
Throws:
java.lang.Exception - if there is a problem

prepare

public void prepare()
             throws java.lang.Exception
If there is a need to perform preparation before starting to generate the solution, this method should implement that. It is called by Year.doStoppooling
Throws:
java.lang.Exception - if there is a problem

startSolving

public void startSolving(Year year)
                  throws java.lang.Exception
Start solving the problem. Called by Year.doStartsolving you can assume that PoolResults have been calculated here
Throws:
java.lang.Exception - if there is a problem

stopSolving

public void stopSolving(Year year)
                 throws java.lang.Exception
Stop solving the problem. Called by Year.doStopsolving you can assume that PoolResults have been calculated here
Throws:
java.lang.Exception - if there is a problem

XPUSP - Home