org.dbmaintain.script.repository
Class ScriptLocation
java.lang.Object
org.dbmaintain.script.repository.ScriptLocation
- Direct Known Subclasses:
- ArchiveScriptLocation, FileSystemScriptLocation
public abstract class ScriptLocation
- extends Object
- Since:
- 24-dec-2008
- Author:
- Filip Neven, Tim Ducheyne
|
Constructor Summary |
protected |
ScriptLocation(File scriptLocation,
String defaultScriptEncoding,
String defaultPostProcessingScriptDirName,
Set<Qualifier> defaultRegisteredQualifiers,
Set<Qualifier> defaultPatchQualifiers,
String defaultScriptIndexRegexp,
String defaultQualifierRegexp,
String defaultTargetDatabaseRegexp,
Set<String> defaultScriptFileExtensions,
ScriptIndexes defaultBaseLineRevision,
boolean ignoreCarriageReturnsWhenCalculatingCheckSum)
|
protected |
ScriptLocation(SortedSet<Script> scripts,
String scriptEncoding,
String postProcessingScriptDirName,
Set<Qualifier> registeredQualifiers,
Set<Qualifier> patchQualifiers,
String scriptIndexRegexp,
String qualifierRegexp,
String targetDatabaseRegexp,
Set<String> scriptFileExtensions,
ScriptIndexes baseLineRevision,
boolean ignoreCarriageReturnsWhenCalculatingCheckSum)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LOCATION_PROPERTIES_FILENAME
public static final String LOCATION_PROPERTIES_FILENAME
- Name of the properties file that is packaged with the jar, that contains information about how
the scripts in the jar file are structured.
- See Also:
- Constant Field Values
scripts
protected SortedSet<Script> scripts
scriptEncoding
protected String scriptEncoding
postProcessingScriptDirName
protected String postProcessingScriptDirName
registeredQualifiers
protected Set<Qualifier> registeredQualifiers
patchQualifiers
protected Set<Qualifier> patchQualifiers
scriptIndexRegexp
protected String scriptIndexRegexp
qualifierRegexp
protected String qualifierRegexp
targetDatabaseRegexp
protected String targetDatabaseRegexp
scriptFileExtensions
protected Set<String> scriptFileExtensions
scriptLocationName
protected String scriptLocationName
baseLineRevision
protected ScriptIndexes baseLineRevision
ignoreCarriageReturnsWhenCalculatingCheckSum
protected boolean ignoreCarriageReturnsWhenCalculatingCheckSum
scriptFactory
protected ScriptFactory scriptFactory
ScriptLocation
protected ScriptLocation(SortedSet<Script> scripts,
String scriptEncoding,
String postProcessingScriptDirName,
Set<Qualifier> registeredQualifiers,
Set<Qualifier> patchQualifiers,
String scriptIndexRegexp,
String qualifierRegexp,
String targetDatabaseRegexp,
Set<String> scriptFileExtensions,
ScriptIndexes baseLineRevision,
boolean ignoreCarriageReturnsWhenCalculatingCheckSum)
- Parameters:
scripts - The scripts contained in the container, not nullscriptEncoding - Encoding used to read the contents of the script, not nullpostProcessingScriptDirName - The directory name that contains post processing scripts, may be nullregisteredQualifiers - the registered qualifiers, not nullscriptIndexRegexp - The regexp that identifies the version index in the filename, not nullqualifierRegexp - The regexp that identifies a qualifier in the filename, not nulltargetDatabaseRegexp - The regexp that identifies the target database in the filename, not nullpatchQualifiers - The qualifiers that indicate that this script is a patch script, not nullscriptFileExtensions - The script file extensionsbaseLineRevision - The baseline revision. If set, all scripts with a lower revision will be ignoredignoreCarriageReturnsWhenCalculatingCheckSum - If true, carriage return chars will be ignored when calculating check sums
ScriptLocation
protected ScriptLocation(File scriptLocation,
String defaultScriptEncoding,
String defaultPostProcessingScriptDirName,
Set<Qualifier> defaultRegisteredQualifiers,
Set<Qualifier> defaultPatchQualifiers,
String defaultScriptIndexRegexp,
String defaultQualifierRegexp,
String defaultTargetDatabaseRegexp,
Set<String> defaultScriptFileExtensions,
ScriptIndexes defaultBaseLineRevision,
boolean ignoreCarriageReturnsWhenCalculatingCheckSum)
loadScripts
protected abstract SortedSet<Script> loadScripts(File scriptLocation)
getCustomProperties
protected Properties getCustomProperties(File scriptLocation)
assertValidScriptLocation
protected abstract void assertValidScriptLocation(File scriptLocation)
- Asserts that the script root directory exists
- Parameters:
scriptLocation - The location to validate, not null
getLocationName
public String getLocationName()
- Returns:
- A description of the location, for logging purposes
getScriptEncoding
public String getScriptEncoding()
getPostProcessingScriptDirName
public String getPostProcessingScriptDirName()
getRegisteredQualifiers
public Set<Qualifier> getRegisteredQualifiers()
getPatchQualifiers
public Set<Qualifier> getPatchQualifiers()
getQualifierRegexp
public String getQualifierRegexp()
getTargetDatabaseRegexp
public String getTargetDatabaseRegexp()
getScriptFileExtensions
public Set<String> getScriptFileExtensions()
getScripts
public SortedSet<Script> getScripts()
- Returns:
- The scripts from this location as a sorted set
overrideValuesWithCustomConfiguration
protected void overrideValuesWithCustomConfiguration(Properties customProperties)
- Initializes all fields of the script location using the given properties, and default values for each of the fields
which are used if not available in the properties.
- Parameters:
customProperties - extra db-maintain config, not null
assertValidScriptExtensions
protected void assertValidScriptExtensions()
- Asserts that the script extensions have the correct format
isScriptFileName
protected boolean isScriptFileName(String fileName)
- Parameters:
fileName - The file, not null
- Returns:
- True if the given file is a database script, according to the configured script file extensions
createQualifiers
protected Set<Qualifier> createQualifiers(List<String> qualifierNames)
createScriptFactory
protected ScriptFactory createScriptFactory()
createScript
protected Script createScript(String fileName,
Long fileLastModifiedAt,
ScriptContentHandle scriptContentHandle)
Copyright © 2011. All Rights Reserved.