org.scijava.app
Interface App

All Superinterfaces:
Comparable<Prioritized>, Contextual, HasPluginInfo, Prioritized, RichPlugin, SciJavaPlugin, SingletonPlugin, Versioned
All Known Implementing Classes:
AbstractApp, SciJavaApp

public interface App
extends RichPlugin, SingletonPlugin, Versioned

Metadata about a SciJava-based application, used by the AppService.

Applications discoverable at runtime must implement this interface and be annotated with @Plugin with attribute Plugin.type() = App.class. While it possible to create an application merely by implementing this interface, it is encouraged to instead extend AbstractApp, for convenience.

Author:
Curtis Rueden
See Also:
Plugin, AppService

Method Summary
 String getArtifactId()
          The Maven artifactId of the application.
 File getBaseDirectory()
          Gets the application's root directory.
 String getGroupId()
          The Maven groupId of the application.
 String getInfo(boolean mem)
          Gets a string with information about the application.
 Manifest getManifest()
          Gets the manifest containing metadata about the application.
 POM getPOM()
          Gets the Maven POM containing metadata about the application.
 String getSystemProperty()
          A system property which, if set, overrides the base directory of the application.
 String getTitle()
          Gets the title of the application.
 String getVersion()
          Gets the version of the application.
 
Methods inherited from interface org.scijava.Contextual
context, getContext, setContext
 
Methods inherited from interface org.scijava.Prioritized
getPriority, setPriority
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface org.scijava.plugin.HasPluginInfo
getInfo, setInfo
 

Method Detail

getTitle

String getTitle()
Gets the title of the application.


getGroupId

String getGroupId()
The Maven groupId of the application.


getArtifactId

String getArtifactId()
The Maven artifactId of the application.


getPOM

POM getPOM()
Gets the Maven POM containing metadata about the application.


getManifest

Manifest getManifest()
Gets the manifest containing metadata about the application.

NB: This metadata may be null if run in a development environment.


getInfo

String getInfo(boolean mem)
Gets a string with information about the application.

Parameters:
mem - If true, memory usage information is included.

getSystemProperty

String getSystemProperty()
A system property which, if set, overrides the base directory of the application.


getBaseDirectory

File getBaseDirectory()
Gets the application's root directory. If the application's system property is set, it is used. Otherwise, we scan up the tree from this class for a suitable directory.


getVersion

String getVersion()
Gets the version of the application.

SciJava conforms to the Semantic Versioning specification.

Specified by:
getVersion in interface Versioned
Returns:
The application version, in major.minor.micro format.


Copyright © 2009–2014 SciJava. All rights reserved.