2009-09-26 08:18:04 +02:00
|
|
|
package xsbti;
|
|
|
|
|
|
2013-12-12 18:31:23 +01:00
|
|
|
/**
|
|
|
|
|
* The main entry interface for launching applications. Classes which implement this interface
|
|
|
|
|
* can be launched via the sbt launcher.
|
|
|
|
|
*
|
|
|
|
|
* In addition, classes can be adapted into this interface by the launcher if they have a static method
|
|
|
|
|
* matching one of these signatures:
|
|
|
|
|
*
|
|
|
|
|
* - public static void main(String[] args)
|
|
|
|
|
* - public static int main(String[] args)
|
|
|
|
|
* - public static xsbti.Exit main(String[] args)
|
|
|
|
|
*
|
|
|
|
|
*/
|
2009-09-26 08:18:04 +02:00
|
|
|
public interface AppMain
|
|
|
|
|
{
|
2013-12-12 18:31:23 +01:00
|
|
|
/** Run the application and return the result.
|
|
|
|
|
*
|
|
|
|
|
* @param configuration The configuration used to run the application. Includes arguments and access to launcher features.
|
|
|
|
|
* @return
|
|
|
|
|
* The result of running this app.
|
|
|
|
|
* Note: the result can be things like "Please reboot this application".
|
|
|
|
|
*/
|
2009-09-26 08:18:04 +02:00
|
|
|
public MainResult run(AppConfiguration configuration);
|
|
|
|
|
}
|