Class CLI


  • public class CLI
    extends java.lang.Object
    This data class is generated by parsing the Command-Line Input to a Builder Invocation, and it contains the settings that were extrapolated by the Apache CLI Parser. When a Builder instance is created, its constructor requires that a Java `String[] argv` array be included as a Constructor-Parameter. The provided String[]-Array is used to build an instance of this class.

    The data contained as fields of this class is all declared public and also ReadOnly or final. The instance generated from the Command-Line Input (CLI) parser is available as a public and final field of the Builder instance field Torello.Java.Build.Builder.cli;

    This class does not offer any public constructors, nor any public methods. It is automatically built by class Builder, which has package-level access to this class' sole constructor.

    Main-Menu Options:
    The following Table lists the Primary Stage/Step Main-Menu CLI-Options for this Build Package. The options listed below are exclusive, and only one of them may be passed to the CLI (via the String[] argv parameters) on any single-invocation of class Builder:
    CLI-SwitchPurpose
    -1, --javac Requests Stage-1: Invoke / Run `javac`.

    Allows for specifying which packages to compile, via a Package Nick-Names List.
    -2, --javadoc Requests Stage-2: Invoke / Run `javadoc`
    -3, --jdu Requests Stage-3: Invoke the JavaDoc Upgrader
    -4, --tarjar Requests Stage-4: Run `tar` & `jar`
    -5, --syncJavaDoc Requests Stage-5: Synchronize 'javadoc/' Directory-Content to The Cloud
    -6, --syncTarJar Requests Stage-6: Synchronize `tar` & `jar` Archive-Files to The Cloud
    -7, --syncLogs Requests Stage-7: Synchronize the Logs to The Cloud
    -8, --setMaxAge Requests Stage-8: Set the Cache-Control HTTP-Server Property 'max-age', on all synchronized 'javadoc/' Files.

    Additional Main-Menu Options:
    The following Table lists the Main-Menu CLI-Options that specify a Composite-Set of the previously listed Build-Step Options. As mentioned before, only one of these switches may be specified to the class CLI on any single Command-Line Invocation. These options perform a Complete, or near Complete Build process. The two Partial-Build Options help speed up the build process, when only small parts of the code or pacakges are actually being modified.
    CLI-SwitchPurpose
    -cb1, --buildRel Requests Complete-Build, Steps #2 to #7: Output pushed to the "Release" Storage-Bucket. See class Builder's GCS_DIR_RELEASE Configuration-Field more about the "Push-To Location".
    -cb2, --buildDevSMA Requests Complete-Build, Steps #2 to #8: Output pushed to the "Developer" Storage-Bucket (with Max-Age Cache-Control Browser-Property). See GCS_DIR_DEV Configuration-Field more about the "Push-To Location".
    -cb3, --buildDev Requests Complete-Build, Steps #2 to #7: Outut pushed to the "Developer" Storage-Bucket (Cache-Control Property not set). See GCS_DIR_DEV Configuration-Field more about the "Push-To Location".
    -pb1, --partialAll Requests a Partial-Build, Steps #2 and #3: Runs `javadoc` and the Java-Doc Upgrader.
    -pb2, --partialSome Requests a Partial-Build, Steps #2, #3, #5 & #8: Runs `javadoc`, Upgrader, the `javadoc` Synchronization-Stage, and lastly sets the Browser Cache-Control Property for all '.html' Files.

    Allows for specifying which packages to include, via a Package Nick-Names List.
    -LC, --linksCheck Requests Run the Internal Links-Checker: Runs the Java-Doc Upgrader Tool's Internal-Links Checker.

    Auxillary Options:
    None of these Command-Line switches are Main-Menu Options, and they would not meet the requirement that the 'argv' parameter String[]-Array passed at the Command-Line contain at least one Main-Menu Option.

    For each of these CLI Switches, the Main-Menu Option with which the switches may be utilized is listed at the top of the description. If an Auxillary-Switch is employed with a Main-Menu Option that isn't listed, the class will throw an exception, and print a thoughtfully worded error message.
    CLI-SwitchPurpose
    -JCP, --putJarInCP Works Alongside: -1, --javac Include the '.jar' File in the Class-Path
    -NQB, --noQuickBuild Works Alongside: -pb1, --partialAll & -pb2, --partialSome Prevent a Quick Build during Partial-Build's
    -SRG, --skipRemoveGCSFiles Works Alongside: -cb2, --buildDevSMA & -cb3, --buildDev Skip the removal-step of all Java-Doc GCS Files, when synchronizing
    -TXL, --toggleDefaultXlint Works Alongside: -1, --javac Toggle whatever the default setting is for applying -Xlint:all
    -TXD, --toggleDefaultXdiags Works Alongside: -1, --javac Toggle whatever the default setting is for applying -Xdiags:verbose