Class CustomProjectPaths
- java.lang.Object
-
- org.apache.torque.generator.configuration.paths.CustomProjectPaths
-
- All Implemented Interfaces:
ProjectPaths
public class CustomProjectPaths extends Object implements ProjectPaths
Implementation of ProjectPaths with custom paths.
-
-
Constructor Summary
Constructors Constructor Description CustomProjectPaths(File configurationDir, String configurationPackage, File sourceDir, Map<String,File> outputDirectoryMap, File workDir, File cacheDir)
Constructor.CustomProjectPaths(ProjectPaths toCopy)
Copy-constructor.
-
Method Summary
Modifier and Type Method Description void
checkInit()
Checks whether the current settings are valid.File
getCacheDirectory()
Returns the cache directory where the torque generator can store internal files, relative to the project root.String
getConfigurationPackage()
Returns the root package of the Torque generator files.File
getConfigurationPath()
Returns the root directory for the Torque generator files, relative to the project root.File
getDefaultSourcePath()
Returns the default directory for the source files, relative to the project root.File
getOutputDirectory(String outputDirKey)
Returns the output directory for a given output directory 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, relative to the project root.void
setCacheDir(File cacheDir)
Sets the cache directory where the torque generator can store internal files, relative to the current directory, or absolute.void
setConfigurationDir(File configurationDir)
Sets the root directory for the Torque generator configuration files, absolute or relative to the project root.void
setConfigurationPackage(String configurationPackage)
Sets the root package for the Torque generator files, relative to the project root.void
setOutputDirectory(String outputDirKey, File outputDir)
Sets the output directory for a given output directory key.void
setOutputDirectoryMap(Map<String,File> outputDirectoryMap)
Sets the contents of the output directory map.void
setSourceDir(File sourceDir)
Sets the default directory for the source files, relative to the current directory, or absolute.void
setWorkDir(File workDir)
Sets the work directory where the torque generator can store internal files, relative to the current directory, or absolute.String
toString()
-
-
-
Constructor Detail
-
CustomProjectPaths
public CustomProjectPaths(ProjectPaths toCopy)
Copy-constructor.- Parameters:
toCopy
- the default project paths to copy, not null.- Throws:
NullPointerException
- if toCopy is null.
-
CustomProjectPaths
public CustomProjectPaths(File configurationDir, String configurationPackage, File sourceDir, Map<String,File> outputDirectoryMap, File workDir, File cacheDir)
Constructor.- Parameters:
configurationDir
- the configuration directory for the Torque generator configuration files, or null if the configuration files are loaded from the classpath.configurationPackage
- the package containing the Torque generator configuration files, or null if the configuration files are loaded from the file system.sourceDir
- the default directory for the source files, or null.outputDirectoryMap
- The output directories for the files, keyed by the output directory key. The directory with the key null is the default output directory.workDir
- work directory where the torque generator can store internal files.cacheDir
- cache directory where the torque generator can store internal files.
-
-
Method Detail
-
setConfigurationDir
public void setConfigurationDir(File configurationDir)
Sets the root directory for the Torque generator configuration files, absolute or relative to the project root.- Parameters:
configurationDir
- the configuration directory for the Torque generator configuration files, null to invalidate the current setting.
-
setConfigurationPackage
public void setConfigurationPackage(String configurationPackage)
Sets the root package for the Torque generator files, relative to the project root.- Parameters:
configurationPackage
- the configuration root package for the Torque generator files.
-
setSourceDir
public void setSourceDir(File sourceDir)
Sets the default directory for the source files, relative to the current directory, or absolute. "Default" means that the setting can be overridden in a unit of generation.- Parameters:
sourceDir
- the default directory for the source files, null to invalidate the current setting.
-
setOutputDirectory
public void setOutputDirectory(String outputDirKey, File outputDir)
Sets the output directory for a given output directory key.- Parameters:
outputDirKey
- the output directory key, or null for the default output directory.outputDir
- the output directory for the key, relative to the current directory, or absolute. Use null to remove the output directory for the key.
-
setOutputDirectoryMap
public void setOutputDirectoryMap(Map<String,File> outputDirectoryMap)
Sets the contents of the output directory map. The directory with the key null is the default output directory.- Parameters:
outputDirectoryMap
- the new output directory map.
-
setWorkDir
public void setWorkDir(File workDir)
Sets the work directory where the torque generator can store internal files, relative to the current directory, or absolute.- Parameters:
workDir
- the work directory for internal files, null to invalidate the current setting.
-
setCacheDir
public void setCacheDir(File cacheDir)
Sets the cache directory where the torque generator can store internal files, relative to the current directory, or absolute.- Parameters:
cacheDir
- the cache directory for internal files, null to invalidate the current setting.
-
getConfigurationPath
public File getConfigurationPath()
Returns the root directory for the Torque generator files, relative to the project root.- Specified by:
getConfigurationPath
in interfaceProjectPaths
- Returns:
- the directory for the Torque generator files, not null.
- Throws:
IllegalStateException
- if one of the required parameters is not set.
-
getConfigurationPackage
public String getConfigurationPackage()
Returns the root package of the Torque generator files.- Specified by:
getConfigurationPackage
in interfaceProjectPaths
- Returns:
- the root package of the Torque generator files.
- Throws:
IllegalStateException
- if one of the required parameters is not set.
-
getDefaultSourcePath
public File getDefaultSourcePath()
Returns the default directory for the source files, relative to the project root. "Default" means that the setting can be overridden in a unit of generation.- Specified by:
getDefaultSourcePath
in interfaceProjectPaths
- Returns:
- the directory for the source files, not null.
- Throws:
IllegalStateException
- if one of the required parameters is not set.
-
getOutputDirectory
public File getOutputDirectory(String outputDirKey)
Returns the output directory for a given output directory key.- Specified by:
getOutputDirectory
in interfaceProjectPaths
- Parameters:
outputDirKey
- the output directory key, or null for the default output directory.- Returns:
- the output directory for the key, relative to the current directory, or absolute, not null.
- Throws:
IllegalStateException
- if one of the required parameters is not set.IllegalArgumentException
- if the outputDirKey is unknown.
-
getOutputDirectoryMap
public Map<String,File> getOutputDirectoryMap()
Returns the output directory map which contains the mapping from output directory key to output directory.- Specified by:
getOutputDirectoryMap
in interfaceProjectPaths
- Returns:
- the mutable output directory map, not null, contains at least a mapping for the key null.
- Throws:
IllegalStateException
- if one of the required parameters is not set.
-
getWorkDirectory
public File getWorkDirectory()
Returns the work directory where the torque generator can store internal files, relative to the project root.- Specified by:
getWorkDirectory
in interfaceProjectPaths
- Returns:
- the work directory where the torque generator can store internal files, not null.
- Throws:
IllegalStateException
- if one of the required parameters is not set.
-
getCacheDirectory
public File getCacheDirectory()
Returns the cache directory where the torque generator can store internal files, relative to the project root.- Specified by:
getCacheDirectory
in interfaceProjectPaths
- Returns:
- the cache directory where the torque generator can store internal files, not null.
- Throws:
IllegalStateException
- if one of the required parameters is not set.
-
checkInit
public void checkInit()
Checks whether the current settings are valid. It is checked whether all necessary informations are set. If not, an IllegalStateException is thrown.- Throws:
IllegalStateException
- if the current settings are valid, false otherwise.
-
-