abstract class AbstractApp extends App
AbstractApp for usage from Java
- Alphabetic
- By Inheritance
- AbstractApp
- App
- Logging
- Slf4jBridge
- App
- Lifecycle
- CloseOnceAwaitably
- CloseOnceAwaitably0
- Awaitable
- ClosableOnce
- CloseOnce
- Closable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new AbstractApp()
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final val MinGrace: Duration
- Definition Classes
- App
- def addFrameworkModule(module: Module): Unit
ONLY INTENDED FOR USE BY THE FRAMEWORK.
ONLY INTENDED FOR USE BY THE FRAMEWORK.
Default modules can be overridden in production by overriding methods in your App or Server.
We take special care to make sure the module is not null, since a common bug is overriding the default methods using a val instead of a def
- def addFrameworkModules(modules: Module*): Unit
ONLY INTENDED FOR USE BY THE FRAMEWORK.
- def addFrameworkOverrideModules(modules: Module*): Unit
ONLY INTENDED FOR USE BY THE FRAMEWORK.
- def afterPostWarmup(): Unit
Method to be be called after port warmup
- def allowUndefinedFlags: Boolean
- Attributes
- protected
- Definition Classes
- App
- def args: Array[String]
- Definition Classes
- App
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def beforePostWarmup(): Unit
Method to be called after successful warmup but before application initialization
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def close(deadline: Time): Future[Unit]
- Definition Classes
- CloseOnce → Closable
- def close(after: Duration): Future[Unit]
- Definition Classes
- Closable
- final def close(): Future[Unit]
- Definition Classes
- Closable
- final def closeFuture: Future[Unit]
- Attributes
- protected
- Definition Classes
- CloseOnce
- final def closeOnExit(closable: Closable): Unit
- Definition Classes
- App
- final def closeOnExitLast(closable: Closable): Unit
- Definition Classes
- App
- def closeOnce(deadline: Time): Future[Unit]
- Attributes
- protected
- Definition Classes
- App → CloseOnce
- final def createFlag[T](name: String, default: T, help: String, flaggable: Flaggable[T]): Flag[T]
A Java-friendly method for creating a named Flag.
A Java-friendly method for creating a named Flag.
- name
the name of the Flag.
- default
a default value for the Flag when no value is given as an application argument.
- help
the help text explaining the purpose of the Flag.
- returns
the created Flag.
- final def createMandatoryFlag[T](name: String, help: String, usage: String, flaggable: Flaggable[T]): Flag[T]
A Java-friendly way to create a "mandatory" Flag.
A Java-friendly way to create a "mandatory" Flag. "Mandatory" flags MUST have a value provided as an application argument (as they have no default value to be used).
- name
the name of the Flag.
- help
the help text explaining the purpose of the Flag.
- usage
a string describing the type of the Flag, i.e.: Integer.
- returns
the created Flag.
- def debug(marker: Marker, message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def debug(message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def debug(marker: Marker, message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def debug(message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def debugResult[T](message: => String)(fn: => T): T
- Attributes
- protected[this]
- Definition Classes
- Logging
- def defaultCloseGracePeriod: Duration
- Definition Classes
- App
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def error(marker: Marker, message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def error(message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def error(marker: Marker, message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def error(message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def errorResult[T](message: => String)(fn: => T): T
- Attributes
- protected[this]
- Definition Classes
- Logging
- def exitOnError(reason: String, details: => String): Unit
- Attributes
- protected
- Definition Classes
- App
- def exitOnError(reason: String): Unit
- Attributes
- protected
- Definition Classes
- App
- def exitOnError(throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- App
- def failfastOnFlagsNotParsed: Boolean
<invalid inheritdoc annotation>
<invalid inheritdoc annotation>
- Attributes
- protected
- Definition Classes
- App → App
- Note
It is HIGHLY recommended that this value remains 'true'. This value SHOULD NOT be changed to 'false' without a very good reason.This method only remains overridable for legacy reasons.
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def flag: app.Flags
- Definition Classes
- App
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def includeGlobalFlags: Boolean
- Attributes
- protected
- Definition Classes
- App
- def info(marker: Marker, message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def info(message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def info(marker: Marker, message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def info(message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def infoResult[T](message: => String)(fn: => T): T
- Attributes
- protected[this]
- Definition Classes
- Logging
- final def init(f: => Unit): Unit
- Attributes
- protected
- Definition Classes
- App
- def injector: Injector
- Definition Classes
- App
- final def isClosed: Boolean
- Definition Classes
- CloseOnce
- def isDebugEnabled(marker: Marker): Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isDebugEnabled: Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isErrorEnabled(marker: Marker): Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isErrorEnabled: Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isInfoEnabled(marker: Marker): Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isInfoEnabled: Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isReady(implicit permit: CanAwait): Boolean
- Definition Classes
- CloseOnceAwaitably0 → Awaitable
- def isTraceEnabled(marker: Marker): Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isTraceEnabled: Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isWarnEnabled(marker: Marker): Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def isWarnEnabled: Boolean
- Attributes
- protected[this]
- Definition Classes
- Logging
- def javaModules: Collection[Module]
Production modules from Java.
Production modules from Java.
- Attributes
- protected
- Definition Classes
- App
- def javaOverrideModules: Collection[Module]
ONLY INTENDED FOR USE IN TESTING.
ONLY INTENDED FOR USE IN TESTING.
Override modules from Java which redefine production bindings (only use overrideModules during testing) If you think you need this in your main server you are most likely doing something incorrectly.
- Attributes
- protected
- Definition Classes
- App
- def loadModules(): InstalledModules
ONLY INTENDED FOR USE BY THE FRAMEWORK.
- def loadServiceBindings: Seq[Binding[_]]
- Attributes
- protected[this]
- Definition Classes
- App
- final def logger: Logger
- Attributes
- protected[this]
- Definition Classes
- Logging
- final def loggerName: String
- Attributes
- protected[this]
- Definition Classes
- Logging
- def main(): Unit
DO NOT BLOCK
DO NOT BLOCK
- Definition Classes
- App
- final def main(args: Array[String]): Unit
- Definition Classes
- App
- def modules: Seq[Module]
Production modules.
Production modules.
- Attributes
- protected
- Definition Classes
- App
- Note
Java users should prefer javaModules.
- def name: String
- Definition Classes
- App
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def nonExitingMain(args: Array[String]): Unit
- Definition Classes
- App
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def observe(event: Event)(f: => Unit): Unit
- Attributes
- protected
- Definition Classes
- Lifecycle
- final def observeFuture(event: Event)(f: Future[Unit]): Future[Unit]
- Attributes
- protected
- Definition Classes
- Lifecycle
- def onExit(): Unit
Called prior to application exiting.
- final def onExit(f: => Unit): Unit
- Attributes
- protected
- Definition Classes
- App
- def onExitLast(): Unit
Called prior to application exiting after
onExit
. - final def onExitLast(f: => Unit): Unit
- Attributes
- protected
- Definition Classes
- App
- def onInit(): Unit
Called prior to application initialization.
- def overrideModules: Seq[Module]
ONLY INTENDED FOR USE IN TESTING.
ONLY INTENDED FOR USE IN TESTING.
Override modules which redefine production bindings (only use overrideModules during testing) If you think you need this in your main server you are most likely doing something incorrectly.
- Attributes
- protected
- Definition Classes
- App
- def parseArgs(args: Array[String]): Unit
- Attributes
- protected[this]
- Definition Classes
- App
- def postInjectorStartup(): Unit
Method to be called after injector creation
- def postMain(): Unit
Called after the
main
method. - def postWarmup(): Unit
Method to be called after successful warmup
- final def postmain(f: => Unit): Unit
- Attributes
- protected
- Definition Classes
- App
- def preMain(): Unit
Called before the
main
method. - final def premain(f: => Unit): Unit
- Attributes
- protected
- Definition Classes
- App
- def ready(timeout: Duration)(implicit permit: CanAwait): AbstractApp.this.type
- Definition Classes
- CloseOnceAwaitably0 → Awaitable
- def result(timeout: Duration)(implicit permit: CanAwait): Unit
- Definition Classes
- CloseOnceAwaitably0 → Awaitable
- def run(): Unit
Callback method executed after the injector is created and all lifecycle methods have fully completed.
Callback method executed after the injector is created and all lifecycle methods have fully completed.
The app is signaled as STARTED prior to the execution of this callback as all lifecycle methods have successfully completed.
This method can be used to start long-lived processes that run in separate threads from the main() thread. It is expected that you manage these threads manually, e.g., by using a com.twitter.util.FuturePool.
Any exceptions thrown in this method will result in the app exiting.
- Attributes
- protected
- Definition Classes
- App
- final def runOnExit(runnable: Runnable): Unit
- Attributes
- protected
- Definition Classes
- App
- final def runOnExitLast(runnable: Runnable): Unit
- Attributes
- protected
- Definition Classes
- App
- lazy val shutdownTimer: Timer
- Attributes
- protected
- Definition Classes
- App
- def suppressGracefulShutdownErrors: Boolean
- Attributes
- protected
- Definition Classes
- App
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def trace(marker: Marker, message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def trace(message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def trace(marker: Marker, message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def trace(message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def traceResult[T](message: => String)(fn: => T): T
- Attributes
- protected[this]
- Definition Classes
- Logging
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def warmup(): Unit
Callback method run before postWarmup
Callback method run before postWarmup
- Attributes
- protected
- Definition Classes
- App
- def warn(marker: Marker, message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def warn(message: => Any, cause: Throwable): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def warn(marker: Marker, message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def warn(message: => Any): Unit
- Attributes
- protected[this]
- Definition Classes
- Logging
- def warnResult[T](message: => String)(fn: => T): T
- Attributes
- protected[this]
- Definition Classes
- Logging