Class CoreJavadocOptions

java.lang.Object
org.gradle.external.javadoc.CoreJavadocOptions
All Implemented Interfaces:
MinimalJavadocOptions
Direct Known Subclasses:
StandardJavadocDocletOptions

public abstract class CoreJavadocOptions extends Object implements MinimalJavadocOptions
Provides the core Javadoc Options. That is, provides the options which are not doclet specific.
  • Field Details

    • optionFile

      protected final org.gradle.external.javadoc.internal.JavadocOptionFile optionFile
  • Constructor Details

    • CoreJavadocOptions

      public CoreJavadocOptions()
    • CoreJavadocOptions

      protected CoreJavadocOptions(org.gradle.external.javadoc.internal.JavadocOptionFile optionFile)
    • CoreJavadocOptions

      protected CoreJavadocOptions(CoreJavadocOptions original, org.gradle.external.javadoc.internal.JavadocOptionFile optionFile)
  • Method Details

    • getOverview

      public String getOverview()
      -overview path\filename

      Specifies that javadoc should retrieve the text for the overview documentation from the "source" file specified by path/filename and place it on the Overview page (overview-summary.html). The path/filename is relative to the -sourcepath.

      While you can use any name you want for filename and place it anywhere you want for path, a typical thing to do is to name it overview.html and place it in the source tree at the directory that contains the topmost package directories. In this location, no path is needed when documenting packages, since -sourcepath will point to this file. For example, if the source tree for the java.lang package is C:\src\classes\java\lang\, then you could place the overview file at C:\src\classes\overview.html. See Real World Example.

      For information about the file specified by path/filename, see overview comment file.

      Note that the overview page is created only if you pass into javadoc two or more package names. For further explanation, see HTML Frames.)

      The title on the overview page is set by -doctitle.

      Specified by:
      getOverview in interface MinimalJavadocOptions
    • setOverview

      public void setOverview(String overview)
      Specified by:
      setOverview in interface MinimalJavadocOptions
    • overview

      public MinimalJavadocOptions overview(String overview)
      Fluent setter for the overview option.
      Specified by:
      overview in interface MinimalJavadocOptions
      Parameters:
      overview - The new overview.
      Returns:
      The MinimalJavadocOptions object.
    • getMemberLevel

      public JavadocMemberLevel getMemberLevel()
      Switch to set the members that should be included in the Javadoc. (-public, -protected, -package, -private)
      Specified by:
      getMemberLevel in interface MinimalJavadocOptions
    • setMemberLevel

      public void setMemberLevel(JavadocMemberLevel memberLevel)
      Specified by:
      setMemberLevel in interface MinimalJavadocOptions
    • showFromPublic

      public MinimalJavadocOptions showFromPublic()
      Specified by:
      showFromPublic in interface MinimalJavadocOptions
    • showFromProtected

      public MinimalJavadocOptions showFromProtected()
      Specified by:
      showFromProtected in interface MinimalJavadocOptions
    • showFromPackage

      public MinimalJavadocOptions showFromPackage()
      Specified by:
      showFromPackage in interface MinimalJavadocOptions
    • showFromPrivate

      public MinimalJavadocOptions showFromPrivate()
      Specified by:
      showFromPrivate in interface MinimalJavadocOptions
    • showAll

      public MinimalJavadocOptions showAll()
      Specified by:
      showAll in interface MinimalJavadocOptions
    • getDoclet

      public String getDoclet()
      -doclet class

      Specifies the class file that starts the doclet used in generating the documentation. Use the fully-qualified name. This doclet defines the content and formats the output. If the -doclet option is not used, javadoc uses the standard doclet for generating the default HTML format. This class must contain the start(Root) method. The path to this starting class is defined by the -docletpath option.

      For example, to call the MIF doclet, use:

      -doclet com.sun.tools.doclets.mif.MIFDoclet

      For full, working examples of running a particular doclet, see Running the MIF Doclet.

      Specified by:
      getDoclet in interface MinimalJavadocOptions
    • setDoclet

      public void setDoclet(String doclet)
      Specified by:
      setDoclet in interface MinimalJavadocOptions
    • doclet

      public MinimalJavadocOptions doclet(String doclet)
      Specified by:
      doclet in interface MinimalJavadocOptions
    • getDocletpath

      public List<File> getDocletpath()
      -docletpath classpathlist

      Specifies the path to the doclet starting class file (specified with the -doclet option) and any jar files it depends on. If the starting class file is in a jar file, then this specifies the path to that jar file, as shown in the example below. You can specify an absolute path or a path relative to the current directory. If classpathlist contains multiple paths or jar files, they should be separated with a colon (:) on Solaris and a semi-colon (;) on Windows. This option is not necessary if the doclet starting class is already in the search path.

      Example of path to jar file that contains the starting doclet class file. Notice the jar filename is included.

      -docletpath C:/user/mifdoclet/lib/mifdoclet.jar

      Example of path to starting doclet class file. Notice the class filename is omitted.

      -docletpath C:/user/mifdoclet/classes/com/sun/tools/doclets/mif/

      For full, working examples of running a particular doclet, see Running the MIF Doclet.

      Specified by:
      getDocletpath in interface MinimalJavadocOptions
    • setDocletpath

      public void setDocletpath(List<File> docletpath)
      Specified by:
      setDocletpath in interface MinimalJavadocOptions
    • docletpath

      public MinimalJavadocOptions docletpath(File... docletpath)
      Specified by:
      docletpath in interface MinimalJavadocOptions
    • getSource

      public String getSource()
      -source release

      Specifies the version of source code accepted. The following values for release are allowed:

      1.5 javadoc accepts code containing generics and other language features introduced in JDK 1.5.
      The compiler defaults to the 1.5 behavior if the -source flag is not used.
      1.4 javadoc accepts code containing assertions, which were introduced in JDK 1.4.
      1.3 javadoc does not support assertions, generics, or other language features introduced after JDK 1.3.

      Use the value of release corresponding to that used when compiling the code with javac.

      Specified by:
      getSource in interface MinimalJavadocOptions
    • setSource

      public void setSource(String source)
      Specified by:
      setSource in interface MinimalJavadocOptions
    • source

      public MinimalJavadocOptions source(String source)
      Specified by:
      source in interface MinimalJavadocOptions
    • getClasspath

      public List<File> getClasspath()
      -classpath classpathlist

      Specifies the paths where javadoc will look for referenced classes (.class files) -- these are the documented classes plus any classes referenced by those classes. The classpathlist can contain multiple paths by separating them with a semicolon (;). The Javadoc tool will search in all subdirectories of the specified paths. Follow the instructions in class path documentation for specifying classpathlist.

      If -sourcepath is omitted, the Javadoc tool uses -classpath to find the source files as well as class files (for backward compatibility). Therefore, if you want to search for source and class files in separate paths, use both -sourcepath and -classpath.

      For example, if you want to document com.mypackage, whose source files reside in the directory C:/user/src/com/mypackage, and if this package relies on a library in C:/user/lib, you would specify:

      javadoc -classpath /user/lib -sourcepath /user/src com.mypackage

      As with other tools, if you do not specify -classpath, the Javadoc tool uses the CLASSPATH environment variable, if it is set. If both are not set, the Javadoc tool searches for classes from the current directory.

      For an in-depth description of how the Javadoc tool uses -classpath to find user classes as it relates to extension classes and bootstrap classes, see How Classes Are Found.

      Specified by:
      getClasspath in interface MinimalJavadocOptions
    • setClasspath

      public void setClasspath(List<File> classpath)
      Specified by:
      setClasspath in interface MinimalJavadocOptions
    • classpath

      public MinimalJavadocOptions classpath(List<File> classpath)
      Specified by:
      classpath in interface MinimalJavadocOptions
    • classpath

      public MinimalJavadocOptions classpath(File... classpath)
      Specified by:
      classpath in interface MinimalJavadocOptions
    • getBootClasspath

      public List<File> getBootClasspath()
      -bootclasspath classpathlist Specifies the paths where the boot classes reside. These are nominally the Java platform classes. The bootclasspath is part of the search path the Javadoc tool will use to look up source and class files. See How Classes Are Found. for more details. Separate directories in classpathlist with semicolons (;).
      Specified by:
      getBootClasspath in interface MinimalJavadocOptions
    • setBootClasspath

      public void setBootClasspath(List<File> bootClasspath)
      Specified by:
      setBootClasspath in interface MinimalJavadocOptions
    • bootClasspath

      public MinimalJavadocOptions bootClasspath(File... bootClasspath)
      Specified by:
      bootClasspath in interface MinimalJavadocOptions
    • getExtDirs

      public List<File> getExtDirs()
      -extdirs dirlist

      Specifies the directories where extension classes reside. These are any classes that use the Java Extension mechanism. The extdirs is part of the search path the Javadoc tool will use to look up source and class files. See -classpath (above) for more details. Separate directories in dirlist with semicolons (;).

      Specified by:
      getExtDirs in interface MinimalJavadocOptions
    • setExtDirs

      public void setExtDirs(List<File> extDirs)
      Specified by:
      setExtDirs in interface MinimalJavadocOptions
    • extDirs

      public MinimalJavadocOptions extDirs(File... extDirs)
      Specified by:
      extDirs in interface MinimalJavadocOptions
    • getOutputLevel

      public JavadocOutputLevel getOutputLevel()
      Control the Javadoc output level (-verbose or -quiet).
      Specified by:
      getOutputLevel in interface MinimalJavadocOptions
    • setOutputLevel

      public void setOutputLevel(JavadocOutputLevel outputLevel)
      Specified by:
      setOutputLevel in interface MinimalJavadocOptions
    • verbose

      public MinimalJavadocOptions verbose()
      Specified by:
      verbose in interface MinimalJavadocOptions
    • isVerbose

      public boolean isVerbose()
      Specified by:
      isVerbose in interface MinimalJavadocOptions
    • quiet

      public MinimalJavadocOptions quiet()
      Specified by:
      quiet in interface MinimalJavadocOptions
    • isBreakIterator

      public boolean isBreakIterator()
      -breakiterator

      Uses the internationalized sentence boundary of java.text.BreakIterator to determine the end of the first sentence for English (all other locales already use BreakIterator), rather than an English language, locale-specific algorithm. By first sentence, we mean the first sentence in the main description of a package, class or member. This sentence is copied to the package, class or member summary, and to the alphabetic index.

      From JDK 1.2 forward, the BreakIterator class is already used to determine the end of sentence for all languages but English. Therefore, the -breakiterator option has no effect except for English from 1.2 forward. English has its own default algorithm:

      * English default sentence-break algorithm - Stops at a period followed by a space or a HTML block tag, such as <P>.

      * Breakiterator sentence-break algorithm - In general, stops at a period, question mark or exclamation mark followed by a space if the next word starts with a capital letter. This is meant to handle most abbreviations (such as "The serial no. is valid", but won't handle "Mr. Smith"). Doesn't stop at HTML tags or sentences that begin with numbers or symbols. Stops at the last period in "../filename", even if embedded in an HTML tag.

      NOTE: We have removed from 1.5.0 the breakiterator warning messages that were in 1.4.x and have left the default sentence-break algorithm unchanged. That is, the -breakiterator option is not the default in 1.5.0, nor do we expect it to become the default. This is a reversal from our former intention that the default would change in the "next major release" (1.5.0). This means if you have not modified your source code to eliminate the breakiterator warnings in 1.4.x, then you don't have to do anything, and the warnings go away starting with 1.5.0. The reason for this reversal is because any benefit to having breakiterator become the default would be outweighed by the incompatible source change it would require. We regret any extra work and confusion this has caused.

      Specified by:
      isBreakIterator in interface MinimalJavadocOptions
    • setBreakIterator

      public void setBreakIterator(boolean breakIterator)
      Specified by:
      setBreakIterator in interface MinimalJavadocOptions
    • breakIterator

      public MinimalJavadocOptions breakIterator(boolean breakIterator)
      Specified by:
      breakIterator in interface MinimalJavadocOptions
    • breakIterator

      public MinimalJavadocOptions breakIterator()
      Specified by:
      breakIterator in interface MinimalJavadocOptions
    • getLocale

      public String getLocale()
      -locale language_country_variant

      Important - The -locale option must be placed ahead (to the left) of any options provided by the standard doclet or any other doclet. Otherwise, the navigation bars will appear in English. This is the only command-line option that is order-dependent.

      Specifies the locale that javadoc uses when generating documentation. The argument is the name of the locale, as described in java.util.Locale documentation, such as en_US (English, United States) or en_US_WIN (Windows variant).

      Specifying a locale causes javadoc to choose the resource files of that locale for messages (strings in the navigation bar, headings for lists and tables, help file contents, comments in stylesheet.css, and so forth). It also specifies the sorting order for lists sorted alphabetically, and the sentence separator to determine the end of the first sentence. It does not determine the locale of the doc comment text specified in the source files of the documented classes.

      Specified by:
      getLocale in interface MinimalJavadocOptions
    • setLocale

      public void setLocale(String locale)
      Specified by:
      setLocale in interface MinimalJavadocOptions
    • locale

      public MinimalJavadocOptions locale(String locale)
      Specified by:
      locale in interface MinimalJavadocOptions
    • getEncoding

      public String getEncoding()
      -encoding name

      Specifies the encoding name of the source files, such as EUCJIS/SJIS. If this option is not specified, the platform default converter is used.

      Also see -docencoding and -charset.

      Specified by:
      getEncoding in interface MinimalJavadocOptions
    • setEncoding

      public void setEncoding(String encoding)
      Specified by:
      setEncoding in interface MinimalJavadocOptions
    • encoding

      public MinimalJavadocOptions encoding(String encoding)
      Specified by:
      encoding in interface MinimalJavadocOptions
    • getSourceNames

      public List<String> getSourceNames()
      Specified by:
      getSourceNames in interface MinimalJavadocOptions
    • setSourceNames

      public void setSourceNames(List<String> sourceNames)
      Specified by:
      setSourceNames in interface MinimalJavadocOptions
    • sourceNames

      public MinimalJavadocOptions sourceNames(String... sourceNames)
      Specified by:
      sourceNames in interface MinimalJavadocOptions
    • getJFlags

      public List<String> getJFlags()
      -Jflag

      Passes flag directly to the runtime system java that runs javadoc. Notice there must be no space between the J and the flag. For example, if you need to ensure that the system sets aside 32 megabytes of memory in which to process the generated documentation, then you would call the -Xmx option of java as follows (-Xms is optional, as it only sets the size of initial memory, which is useful if you know the minimum amount of memory required):

      javadoc -J-Xmx32m -J-Xms32m com.mypackage

      To tell what version of javadoc you are using, call the "-version" option of java:

      javadoc -J-version java version "1.2" Classic VM (build JDK-1.2-V, green threads, sunwjit)

      (The version number of the standard doclet appears in its output stream.)

      Specified by:
      getJFlags in interface MinimalJavadocOptions
    • setJFlags

      public void setJFlags(List<String> jFlags)
      Specified by:
      setJFlags in interface MinimalJavadocOptions
    • jFlags

      public MinimalJavadocOptions jFlags(String... jFlags)
      Specified by:
      jFlags in interface MinimalJavadocOptions
    • contributeCommandLineOptions

      public void contributeCommandLineOptions(ExecSpec execHandleBuilder)
      Specified by:
      contributeCommandLineOptions in interface MinimalJavadocOptions
    • getOptionFiles

      public List<File> getOptionFiles()
      Specified by:
      getOptionFiles in interface MinimalJavadocOptions
    • setOptionFiles

      public void setOptionFiles(List<File> optionFiles)
      Specified by:
      setOptionFiles in interface MinimalJavadocOptions
    • optionFiles

      public MinimalJavadocOptions optionFiles(File... argumentFiles)
      Specified by:
      optionFiles in interface MinimalJavadocOptions
    • write

      public final void write(File outputFile) throws IOException
      Specified by:
      write in interface MinimalJavadocOptions
      Throws:
      IOException
    • addOption

      public <T> JavadocOptionFileOption<T> addOption(JavadocOptionFileOption<T> option)
    • addStringOption

      public JavadocOptionFileOption<String> addStringOption(String option)
    • addStringOption

      public JavadocOptionFileOption<String> addStringOption(String option, String value)
    • addEnumOption

      public <T extends Enum<T>> JavadocOptionFileOption<T> addEnumOption(String option)
    • addEnumOption

      public <T extends Enum<T>> JavadocOptionFileOption<T> addEnumOption(String option, T value)
    • addPathOption

      public JavadocOptionFileOption<List<File>> addPathOption(String option)
    • addPathOption

      public JavadocOptionFileOption<List<File>> addPathOption(String option, String joinBy)
    • addStringsOption

      public JavadocOptionFileOption<List<String>> addStringsOption(String option)
    • addStringsOption

      public JavadocOptionFileOption<List<String>> addStringsOption(String option, String joinBy)
      Adds an option that will have multiple values joined by the provided separator.

      addStringsOption("foo", ",").setValue(["a", "b", "c"]) will produce the command-line

           -foo 'a,b,c'
       
      Parameters:
      option - command-line option
      joinBy - separator
    • addMultilineStringsOption

      public JavadocOptionFileOption<List<String>> addMultilineStringsOption(String option)
      Adds an option that will appear multiple times to the javadoc tool. Each line can have one value.

      addMultilineStringsOption("foo").setValue(["a", "b", "c"]) will produce the command-line

           -foo 'a'
           -foo 'b'
           -foo 'c'
       
      Parameters:
      option - command-line option
    • addMultilineMultiValueOption

      public JavadocOptionFileOption<List<List<String>>> addMultilineMultiValueOption(String option)
      Adds an option that will appear multiple times to the javadoc tool. Each line can have more than one value separated by spaces.

      addMultilineMultiValueOption("foo").setValue([ ["a"], ["b", "c"] ]) will produce the command-line

           -foo 'a'
           -foo 'b' 'c'
       
      Parameters:
      option - command-line option
      Since:
      3.5
    • addBooleanOption

      public JavadocOptionFileOption<Boolean> addBooleanOption(String option)
    • addBooleanOption

      public JavadocOptionFileOption<Boolean> addBooleanOption(String option, boolean value)
    • addFileOption

      public JavadocOptionFileOption<File> addFileOption(String option)
    • addFileOption

      public JavadocOptionFileOption<File> addFileOption(String option, File value)