Class/Object

com.twitter.app

GlobalFlag

Related Docs: object GlobalFlag | package app

Permalink

abstract class GlobalFlag[T] extends Flag[T]

Subclasses of GlobalFlag (that are defined in libraries) are "global" in the sense that they are accessible by any application that depends on that library. Regardless of where in a library a GlobalFlag is defined, a value for it can be passed as a command-line flag by any binary that includes the library. The set of defined GlobalFlags can be enumerated (via GlobalFlag.getAll) by the application.

A GlobalFlag must be declared as an object (see below for Java):

import com.twitter.app.GlobalFlag

object myFlag extends GlobalFlag[String]("default value", "this is my global flag")

All such global flag declarations in a given classpath are visible to and used by com.twitter.app.App.

A flag's name (as set on the command line) is its fully-qualified classname. For example, the flag

package com.twitter.server

import com.twitter.app.GlobalFlag

object port extends GlobalFlag[Int](8080, "the TCP port to which we bind")

is settable by the command-line flag -com.twitter.server.port=8080.

Global flags may also be set by Java system properties with keys named in the same way. However, values supplied by flags override those supplied by system properties.

Annotations
@GlobalFlagVisible()
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GlobalFlag
  2. Flag
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new GlobalFlag(help: String)(implicit _f: Flaggable[T], m: Manifest[T])

    Permalink

    _declaration

    _declaration

    If you'd like to declare a new GlobalFlag in Java, see JavaGlobalFlag._declaration

    help

    documentation regarding usage of this Flag.

  2. new GlobalFlag(default: T, help: String)(implicit _f: Flaggable[T])

    Permalink

    _declaration

    _declaration

    If you'd like to declare a new GlobalFlag in Java, see JavaGlobalFlag._declaration

    default

    the default value used if the value is not specified by the user.

    help

    documentation regarding usage of this Flag.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def apply(): T

    Permalink

    Return this flag's current value.

    Return this flag's current value. The default value is returned when the flag has not otherwise been set.

    Definition Classes
    Flag
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def defaultString(): String

    Permalink

    String representation of this flag's default value

    String representation of this flag's default value

    Definition Classes
    Flag
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. val flaggable: Flaggable[T]

    Permalink
    Attributes
    protected
    Definition Classes
    Flag
  12. def get: Option[T]

    Permalink

    Get the value if it has been set.

    Get the value if it has been set.

    Definition Classes
    Flag
    Note

    if no user-defined value has been set, None will be returned even when a default value is supplied.

    See also

    Flag.getWithDefault

  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. def getGlobalFlag: Flag[_]

    Permalink

    Used by Flags.parseArgs to initialize Flag values.

    Used by Flags.parseArgs to initialize Flag values.

    Note

    Called via reflection assuming it will be a static method on a singleton object. This causes problems for Java developers who want to create a GlobalFlag as there is no good means for them to have it be a static method. Thus, Java devs must add a method public static Flag<?> globalFlagInstance() which returns the singleton instance of the flag. See JavaGlobalFlag for more details.

  15. def getValue: Option[T]

    Permalink
    Attributes
    protected
    Definition Classes
    GlobalFlagFlag
  16. def getWithDefault: Option[T]

    Permalink

    Get the value if it has been set or if there is a default value supplied.

    Get the value if it has been set or if there is a default value supplied.

    Definition Classes
    Flag
    See also

    Flag.get and Flag.isDefined if you are interested in determining if there is a supplied value.

  17. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  18. val help: String

    Permalink
    Definition Classes
    Flag
  19. def isDefined: Boolean

    Permalink

    True if the flag has been set.

    True if the flag has been set.

    Definition Classes
    Flag
    Note

    if no user-defined value has been set, false will be returned even when a default value is supplied.

  20. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  21. def let[R](t: T)(f: ⇒ R): R

    Permalink

    Override the value of this flag with t, only for the scope of the current com.twitter.util.Local for the given function f.

    Override the value of this flag with t, only for the scope of the current com.twitter.util.Local for the given function f.

    Definition Classes
    Flag
    See also

    letClear

  22. def letClear[R](f: ⇒ R): R

    Permalink

    Unset the value of this flag, such that isDefined will return false, only for the scope of the current com.twitter.util.Local for the given function f.

    Unset the value of this flag, such that isDefined will return false, only for the scope of the current com.twitter.util.Local for the given function f.

    Definition Classes
    Flag
    See also

    let

  23. val name: String

    Permalink

    The "name", or "id", of this Flag.

    The "name", or "id", of this Flag.

    While not marked final, if a subclass overrides this value, then developers must set that flag via System properties as otherwise it will not be recognized with command-line arguments. e.g. -DyourGlobalFlagName=flagName

    Definition Classes
    GlobalFlagFlag
  24. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  25. def noArgumentOk: Boolean

    Permalink

    Indicates whether or not the flag is valid without an argument.

    Indicates whether or not the flag is valid without an argument.

    Definition Classes
    Flag
  26. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  27. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  28. def parse(): Unit

    Permalink

    Parse this flag with no argument.

    Parse this flag with no argument.

    Definition Classes
    Flag
  29. def parse(raw: String): Unit

    Permalink

    Parse value raw into this flag.

    Parse value raw into this flag.

    Definition Classes
    Flag
  30. def parsingDone: Boolean

    Permalink
    Attributes
    protected[this]
    Definition Classes
    GlobalFlagFlag
  31. def reset(): Unit

    Permalink

    Reset this flag's value

    Reset this flag's value

    Definition Classes
    Flag
  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  33. def toString(): String

    Permalink

    String representation of this flag in -foo='bar' format, suitable for being used on the command line.

    String representation of this flag in -foo='bar' format, suitable for being used on the command line.

    Definition Classes
    Flag → AnyRef → Any
  34. def usageString: String

    Permalink
    Definition Classes
    Flag
  35. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Flag[T]

Inherited from AnyRef

Inherited from Any

Ungrouped