com.sun.tdk.specdiff

## Class Main

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.tools.ant.taskdefs.MatchingTask
      - - com.sun.tdk.specdiff.ant.AbstractTask
        - - com.sun.tdk.specdiff.Main

- All Implemented Interfaces:
    java.lang.Cloneable, org.apache.tools.ant.types.selectors.SelectorContainer

      public final class Main
      extends AbstractTask

  SpecDiff Main class

- - ### Field Summary

    - ### Fields inherited from class com.sun.tdk.specdiff.ant.AbstractTask

      `OVERVIEW_NAME_PARAM, PACKAGE_NAME_PARAM`

    - ### Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask

      `fileset`

    - ### Fields inherited from class org.apache.tools.ant.Task

      `target, taskName, taskType, wrapper`

    - ### Fields inherited from class org.apache.tools.ant.ProjectComponent

      `description, location, project`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected java.io.File` | `buildFinalReport()`
    `protected void` | `buildModuleReports()`
    `protected java.io.File` | `diffDirs(java.io.File oldSrcDir, java.io.File newSrcDir)` Executes diff engine for two dirs.
    `protected java.io.File` | `diffFiles(java.lang.String oldFileName, java.lang.String newFileName)` Executes diff engine for two files only.
    `protected java.util.List<java.lang.String>` | `getModuleList(java.io.File baseDir, java.util.Map<java.lang.String,java.util.List<java.lang.String>> modulePackageMap)`
    `protected java.util.List<java.lang.String>` | `getModulePackageList(java.io.File baseDir, java.lang.String moduleName)`
    `void` | `init()` Initialization
    `protected Document` | `initModuleDoc(java.lang.String moduleName)`
    `static void` | `main(java.lang.String[] args)`
    `protected void` | `processAddedFile(java.io.File newFile, java.io.File outDir, java.lang.String path)`
    `protected void` | `processAddedModule(java.lang.String moduleName)`
    `protected boolean` | `processAsImage(java.io.File srcImg, java.io.File outDir)`
    `protected void` | `processChangedFile(java.io.File oldFile, java.io.File newFile, java.io.File outDir, java.lang.String path)`
    `protected void` | `processPackageFile(java.io.File oldPckgFile, java.io.File newPckgFile, java.io.File outDir, java.lang.String path)`
    `protected void` | `processRemovedFile(java.io.File oldFile, java.io.File outDir, java.lang.String path)`
    `protected void` | `processUpdatedModule(java.lang.String moduleName)`
    `void` | `setExcludes(java.lang.String pattern)`
    `void` | `setIncludes(java.lang.String pattern)`
    `void` | `setOutDir(java.io.File outRootDir)`
    `void` | `setPackageLayout(boolean isPackageLayout)`
    `void` | `setReportDescription(java.lang.String reportDescription)`
    `void` | `setReportTitle(java.lang.String reportTitle)`

    - ### Methods inherited from class com.sun.tdk.specdiff.ant.AbstractTask

      `checkParameters, createParam, detectPackageMode, fixFileName, getConfiguration, getConfigurationManager, getType, isOverviewSupported, isPackage, isPackage, isPackagesSupported, logError, setType`

    - ### Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask

      `add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addSelector, addSize, addType, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getImplicitFileSet, getSelectors, hasSelectors, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setExcludesfile, setFollowSymlinks, setIncludesfile, setProject, XsetIgnore, XsetItems`

    - ### Methods inherited from class org.apache.tools.ant.Task

      `bindToOwner, execute, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

    - ### Methods inherited from class org.apache.tools.ant.ProjectComponent

      `clone, getDescription, getLocation, getProject, setDescription, setLocation`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### setOutDir

          public void setOutDir(java.io.File outRootDir)

    - #### setReportTitle

          public void setReportTitle(java.lang.String reportTitle)

    - #### setReportDescription

          public void setReportDescription(java.lang.String reportDescription)

    - #### setPackageLayout

          public void setPackageLayout(boolean isPackageLayout)

    - #### setIncludes

          public void setIncludes(java.lang.String pattern)

      Overrides:
        `setIncludes` in class `org.apache.tools.ant.taskdefs.MatchingTask`

    - #### setExcludes

          public void setExcludes(java.lang.String pattern)

      Overrides:
        `setExcludes` in class `org.apache.tools.ant.taskdefs.MatchingTask`

    - #### init

          public void init()

      Initialization
      Overrides:
        `init` in class `org.apache.tools.ant.Task`

    - #### diffDirs

          protected java.io.File diffDirs(java.io.File oldSrcDir,
                                          java.io.File newSrcDir)
                                   throws java.lang.Exception

      Executes diff engine for two dirs.
      Throws:
        `java.lang.Exception`

    - #### diffFiles

          protected java.io.File diffFiles(java.lang.String oldFileName,
                                           java.lang.String newFileName)
                                    throws java.lang.Exception

      Executes diff engine for two files only.
      Throws:
        `java.lang.Exception`

    - #### processChangedFile

          protected void processChangedFile(java.io.File oldFile,
                                            java.io.File newFile,
                                            java.io.File outDir,
                                            java.lang.String path)
                                     throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### processAddedFile

          protected void processAddedFile(java.io.File newFile,
                                          java.io.File outDir,
                                          java.lang.String path)
                                   throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### processRemovedFile

          protected void processRemovedFile(java.io.File oldFile,
                                            java.io.File outDir,
                                            java.lang.String path)
                                     throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### processPackageFile

          protected void processPackageFile(java.io.File oldPckgFile,
                                            java.io.File newPckgFile,
                                            java.io.File outDir,
                                            java.lang.String path)
                                     throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### processAsImage

          protected boolean processAsImage(java.io.File srcImg,
                                           java.io.File outDir)
                                    throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### buildModuleReports

          protected void buildModuleReports()
                                     throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### getModuleList

          protected java.util.List<java.lang.String> getModuleList(java.io.File baseDir,
                                                                   java.util.Map<java.lang.String,java.util.List<java.lang.String>> modulePackageMap)

    - #### processUpdatedModule

          protected void processUpdatedModule(java.lang.String moduleName)
                                       throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### processAddedModule

          protected void processAddedModule(java.lang.String moduleName)
                                     throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### initModuleDoc

          protected Document initModuleDoc(java.lang.String moduleName)

    - #### getModulePackageList

          protected java.util.List<java.lang.String> getModulePackageList(java.io.File baseDir,
                                                                          java.lang.String moduleName)
                                                                   throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### buildFinalReport

          protected java.io.File buildFinalReport()
                                           throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### main

          public static void main(java.lang.String[] args)