es.ucm.fdi.gaia.jcolibri.cbraplications.StandardCBRApplication Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jCOLIBRI Show documentation
Show all versions of jCOLIBRI Show documentation
jCOLIBRI is a java framework for the development of Case-Based Reasoning systems.
package es.ucm.fdi.gaia.jcolibri.cbraplications;
import es.ucm.fdi.gaia.jcolibri.cbrcore.CBRCaseBase;
import es.ucm.fdi.gaia.jcolibri.cbrcore.CBRQuery;
import es.ucm.fdi.gaia.jcolibri.exception.ExecutionException;
/**
* Defines the method of an standard CBR application.
* It is composed by:
*
* - A configuration method to set up the application.
*
- A preCycle that loads cases and prepares the application to run.
*
- The cycle method that runs a CBR step using the given query.
*
- A postCycle in charge of finishing the application.
*
*
* @author Juan A. Recio-García
*
*/
public interface StandardCBRApplication
{
/**
* Configures the application: case base, connectors, etc.
* @throws ExecutionException
*/
void configure() throws ExecutionException;
/**
* Runs the precyle where typically cases are read and organized into a case base.
* @return The created case base with the cases in the storage.
* @throws ExecutionException
*/
CBRCaseBase preCycle() throws ExecutionException;
/**
* Executes a CBR cycle with the given query.
* @throws ExecutionException
*/
void cycle(CBRQuery query) throws ExecutionException;
/**
* Runs the code to shutdown the application. Typically it closes the connector.
* @throws ExecutionException
*/
void postCycle() throws ExecutionException;
}