Package org.apache.torque.generator.configuration.paths

## Interface ProjectPaths

- All Known Implementing Classes:
    `CustomProjectPaths`, `Maven2DirectoryProjectPaths`, `Maven2JarProjectPaths`, `Maven2ProjectPaths`

      public interface ProjectPaths

  Provides the default paths which Torque generator needs to interact with its surrounding project. "Default" means that the settings can be overridden in a unit of generation. NB: This object does not contain any information about how the generator configuration is organized internally.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `File` | `getCacheDirectory()` | Returns the cache directory where the torque generator can store internal files.
    `String` | `getConfigurationPackage()` | Returns the package of the Torque generator configuration.
    `File` | `getConfigurationPath()` | Returns the path to the Torque generator configuration directory.
    `File` | `getDefaultSourcePath()` | Returns the path to the default source directory for the Torque generator.
    `File` | `getOutputDirectory​(String outputDirKey)` | Returns the path to the base directory for the generated output for the given output key.
    `Map<String,​File>` | `getOutputDirectoryMap()` | Returns the output directory map which contains the mapping from output directory key to output directory.
    `File` | `getWorkDirectory()` | Returns the work directory where the torque generator can store internal files.

- - ### Method Detail

    - #### getConfigurationPath

          File getConfigurationPath()

      Returns the path to the Torque generator configuration directory. The path must either be absolute or relative to the current working directory.
      Returns:
        the path to the Torque generator configuration; may (but must not) be null if no configuration is contained in the surrounding project; must be null if the configuration is read from the class path.
      Throws:
        `IllegalStateException` - if the current state of the object is not valid.

    - #### getConfigurationPackage

          String getConfigurationPackage()

      Returns the package of the Torque generator configuration.
      Returns:
        the package to the Torque generator configuration. Must be null if the configuration is read from the file system or from a jar file. Must not be null if the configuration is read from the class path.
      Throws:
        `IllegalStateException` - if the current state of the object is not valid.

    - #### getDefaultSourcePath

          File getDefaultSourcePath()

      Returns the path to the default source directory for the Torque generator. The path must either be absolute or relative to the current working directory. "Default" means that the setting can be overridden in a unit of generation. This usually points to a subdirectory where the sources are located.
      Returns:
        the path for the source files, not null.
      Throws:
        `IllegalStateException` - if the current state of the object is not valid.

    - #### getOutputDirectory

          File getOutputDirectory​(String outputDirKey)

      Returns the path to the base directory for the generated output for the given output key. The returned path is either absolute or relative to the current working directory.
      Parameters:
        `outputDirKey` - the key which output directory should be returned. Null is the key for the default output directory and is always mapped to a non-null value.
      Returns:
        the base directory for the generated files, not null.
      Throws:
        `IllegalStateException` - if the current state of the object is not valid.
        `IllegalArgumentException` - if the outputDirKey is unknown.

    - #### getOutputDirectoryMap

          Map<String,​File> getOutputDirectoryMap()

      Returns the output directory map which contains the mapping from output directory key to output directory.
      Returns:
        the output directory map, not null, contains at least a mapping for the key null.
      Throws:
        `IllegalStateException` - if the current state of the object is not valid.

    - #### getWorkDirectory

          File getWorkDirectory()

      Returns the work directory where the torque generator can store internal files. These files should remain intact between runs of generation.
      Returns:
        the work directory, not null.
      Throws:
        `IllegalStateException` - if the current state of the object is not valid.

    - #### getCacheDirectory

          File getCacheDirectory()

      Returns the cache directory where the torque generator can store internal files. These files can in principle be removed after each generation, however, removal of these files may result in a longer work of the generator.
      Returns:
        the cache directory, not null.
      Throws:
        `IllegalStateException` - if the current state of the object is not valid.