Class DefaultSVNOptions
- java.lang.Object
-
- org.tmatesoft.svn.core.internal.wc.DefaultSVNOptions
-
- All Implemented Interfaces:
ISVNTunnelProvider
,ISVNMergerFactory
,ISVNOptions
public class DefaultSVNOptions extends java.lang.Object implements ISVNOptions, ISVNMergerFactory
- Version:
- 1.3
- Author:
- TMate Software Ltd.
-
-
Constructor Summary
Constructors Constructor Description DefaultSVNOptions()
DefaultSVNOptions(java.io.File directory, boolean readOnly)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addIgnorePattern(java.lang.String pattern)
Adds a new particular ignore pattern to global ignore patterns.java.util.Map
applyAutoProperties(java.io.File file, java.util.Map target)
Collects and puts into aMap
all autoproperties specified for the file name pattern matched by the target file name.ISVNMerger
createMerger(byte[] conflictStart, byte[] conflictSeparator, byte[] conflictEnd)
Creates a new merger driver.ISVNConnector
createTunnelConnector(SVNURL url)
Returns a tunnel comand line matching the given subprotocol name.void
deleteAutoProperty(java.lang.String pattern)
Removes a particular autoproperty by specifying a file name pattern.void
deleteIgnorePattern(java.lang.String pattern)
Removes a particular global ignore pattern.java.util.Map
getAutoProperties()
Returns autoproperties as aMap
where each key is a file name pattern and the corresponding value is a string in the form of"propName=propValue"
.static boolean
getBooleanValue(java.lang.String value, boolean defaultValue)
ISVNConflictHandler
getConflictResolver()
java.lang.String
getDefaultSSHKeyFile()
java.lang.String
getDefaultSSHPassphrase()
java.lang.String
getDefaultSSHPassword()
int
getDefaultSSHPortNumber()
java.lang.String
getDefaultSSHUserName()
java.lang.String
getDiffCommand()
java.lang.String
getEditor()
java.util.Map
getFileExtensionsToMimeTypes()
Returns a hash holding file extensions to MIME types mappings.java.lang.String
getGlobalCharset()
java.io.File
getHttpSpoolDirectory()
java.lang.String[]
getIgnorePatterns()
Returns all the global ignore patterns.java.text.DateFormat
getKeywordDateFormat()
Returns the date format used to format datestamps.java.lang.String
getLogEncoding()
static long
getLongValue(java.lang.String value, long defaultValue)
ISVNMergerFactory
getMergerFactory()
Returns a factory object which is responsible for creating merger drivers.java.lang.String
getMergeTool()
java.lang.String
getNativeCharset()
Returns the native charset name.byte[]
getNativeEOL()
Returns the native EOL marker bytes.java.lang.String[]
getPasswordStorageTypes()
java.lang.String[]
getPreservedConflictFileExtensions()
Returns an array of path extensions which the user wants to preserve when conflict files are made.java.lang.String
getPropertyValue(java.lang.String propertyName)
Returns the value of a property from the [svnkit] section of the config file.boolean
isAllowAllForwardMergesFromSelf()
Says to a merge driver whether to allow all forward merges or not.boolean
isAuthStorageEnabled()
Determines if the authentication storage is enabled.static boolean
isIgnored(ISVNOptions options, java.lang.String name)
boolean
isInteractiveConflictResolution()
boolean
isKeepLocks()
boolean
isUseAutoProperties()
Determines if the autoproperties option is enabled.boolean
isUseCommitTimes()
Determines if the commit-times option is enabled.static boolean
matches(java.lang.String pattern, java.lang.String fileName)
void
setAuthStorageEnabled(boolean storeAuth)
Enables or disables the authentication storage.void
setAutoProperties(java.util.Map autoProperties)
Sets autoproperties that will be automatically put on all files that will be added or imported.void
setAutoProperty(java.lang.String pattern, java.lang.String properties)
Sets an autoproperty - binds a file name pattern with a string in the form of"propName=propValue"
.void
setConflictHandler(ISVNConflictHandler resolver)
void
setDiffCommand(java.lang.String diffCmd)
void
setGlobalCharset(java.lang.String charset)
void
setIgnorePatterns(java.lang.String[] patterns)
Sets global ignore patterns.void
setInMemoryConfigOptions(java.util.Map configOptions)
void
setInteractiveConflictResolution(boolean interactive)
void
setKeepLocks(boolean keep)
void
setMergerFactory(ISVNMergerFactory mergerFactory)
Sets a factory object which is responsible for creating merger drivers.void
setPropertyValue(java.lang.String propertyName, java.lang.String propertyValue)
Sets the value of a property from the [svnkit] section of the config file.void
setUseAutoProperties(boolean useAutoProperties)
Enables or disables the autoproperties option.void
setUseCommitTimes(boolean useCommitTimes)
Enables or disables the commit-times option.
-
-
-
Method Detail
-
isUseCommitTimes
public boolean isUseCommitTimes()
Description copied from interface:ISVNOptions
Determines if the commit-times option is enabled.The commit-times option makes checkout/update/switch/revert operations put last-committed timestamps on every file they touch.
This option corresponds to the 'use-commit-times' option that can be found in the SVN's config file under the [miscellany] section.
- Specified by:
isUseCommitTimes
in interfaceISVNOptions
- Returns:
- true if commit-times are enabled, otherwise false
-
setInMemoryConfigOptions
public void setInMemoryConfigOptions(java.util.Map configOptions)
-
setUseCommitTimes
public void setUseCommitTimes(boolean useCommitTimes)
Enables or disables the commit-times option.The commit-times option makes checkout/update/switch/revert operations put last-committed timestamps on every file they touch.
This option corresponds to the 'use-commit-times' option that can be found in the SVN's config file under the [miscellany] section.
- Parameters:
useCommitTimes
- true to enable commit-times, false to disable- See Also:
isUseCommitTimes()
-
isUseAutoProperties
public boolean isUseAutoProperties()
Determines if the autoproperties option is enabled.Autoproperties are the properties that are automatically set on files when they are added or imported.
This option corresponds to the 'enable-auto-props' option that can be found in the SVN's config file under the [miscellany] section.
- Returns:
- true if autoproperties are enabled, otherwise false
-
setUseAutoProperties
public void setUseAutoProperties(boolean useAutoProperties)
Enables or disables the autoproperties option.Autoproperties are the properties that are automatically set on files when they are added or imported.
This option corresponds to the 'enable-auto-props' option that can be found in the SVN's config file under the [miscellany] section.
- Parameters:
useAutoProperties
- true to enable autoproperties, false to disable- See Also:
isUseAutoProperties()
-
isAuthStorageEnabled
public boolean isAuthStorageEnabled()
Determines if the authentication storage is enabled.The auth storage is used for disk-caching of all authentication information: usernames, passwords, server certificates, and any other types of cacheable credentials.
This option corresponds to the 'store-auth-creds' option that can be found in the SVN's config file under the [auth] section.
- Returns:
- true if auth storage is enabled, otherwise false
-
isKeepLocks
public boolean isKeepLocks()
-
setAuthStorageEnabled
public void setAuthStorageEnabled(boolean storeAuth)
Enables or disables the authentication storage.The auth storage is used for disk-caching of all authentication information: usernames, passwords, server certificates, and any other types of cacheable credentials.
This option corresponds to the 'store-auth-creds' option that can be found in the SVN's config file under the [auth] section.
- Parameters:
storeAuth
- true to enable the auth storage, false to disable- See Also:
isAuthStorageEnabled()
-
setKeepLocks
public void setKeepLocks(boolean keep)
-
isIgnored
public static boolean isIgnored(ISVNOptions options, java.lang.String name)
-
getIgnorePatterns
public java.lang.String[] getIgnorePatterns()
Description copied from interface:ISVNOptions
Returns all the global ignore patterns.The global ignore patterns describe the names of files and directories that SVNKit should ignore during status, add and import operations. Similar to the 'global-ignores' option that can be found in the SVN's config file under the [miscellany] section.
- Specified by:
getIgnorePatterns
in interfaceISVNOptions
- Returns:
- an array of patterns (that usually contain wildcards) that specify file and directory names to be ignored until they are versioned
-
setIgnorePatterns
public void setIgnorePatterns(java.lang.String[] patterns)
Sets global ignore patterns.The global ignore patterns describe the names of files and directories that SVNKit should ignore during status, add and import operations. Similar to the 'global-ignores' option that can be found in the SVN's config file under the [miscellany] section.
For example, to set all
.exe
files to be ignored include"*.exe"
pattern intopatterns
.If
patterns
is null or empty then all the patterns will be removed.- Parameters:
patterns
- an array of patterns (that usually contain wildcards) that specify file and directory names to be ignored until they are versioned- See Also:
getIgnorePatterns()
-
deleteIgnorePattern
public void deleteIgnorePattern(java.lang.String pattern)
Removes a particular global ignore pattern.- Parameters:
pattern
- a patterna to be removed- See Also:
addIgnorePattern(String)
-
addIgnorePattern
public void addIgnorePattern(java.lang.String pattern)
Adds a new particular ignore pattern to global ignore patterns.- Parameters:
pattern
- an ignore pattern to be added- See Also:
deleteIgnorePattern(String)
-
getAutoProperties
public java.util.Map getAutoProperties()
Returns autoproperties as aMap
where each key is a file name pattern and the corresponding value is a string in the form of"propName=propValue"
.- Returns:
- a
Map
containing autoproperties
-
setAutoProperties
public void setAutoProperties(java.util.Map autoProperties)
Sets autoproperties that will be automatically put on all files that will be added or imported.There can be several properties specified for one file pattern - they should be delimited by ";".
- Parameters:
autoProperties
- aMap
which keys are file name patterns and their values are strings in the form of"propName=propValue"
- See Also:
getAutoProperties()
-
getEditor
public java.lang.String getEditor()
-
getMergeTool
public java.lang.String getMergeTool()
-
deleteAutoProperty
public void deleteAutoProperty(java.lang.String pattern)
Removes a particular autoproperty by specifying a file name pattern.- Parameters:
pattern
- a file name pattern- See Also:
setAutoProperty(String, String)
-
setAutoProperty
public void setAutoProperty(java.lang.String pattern, java.lang.String properties)
Sets an autoproperty - binds a file name pattern with a string in the form of"propName=propValue"
.- Parameters:
pattern
- a file name pattern (usually containing wildcards)properties
- a property forpattern
-
isInteractiveConflictResolution
public boolean isInteractiveConflictResolution()
-
setInteractiveConflictResolution
public void setInteractiveConflictResolution(boolean interactive)
-
applyAutoProperties
public java.util.Map applyAutoProperties(java.io.File file, java.util.Map target)
Description copied from interface:ISVNOptions
Collects and puts into aMap
all autoproperties specified for the file name pattern matched by the target file name.If
fileName
matches any known file name pattern then all properties set for that pattern will be collected and placed intotarget
.For one file name pattern there can be several autoproperties set, delimited by ";".
- Specified by:
applyAutoProperties
in interfaceISVNOptions
- Parameters:
file
- a target filetarget
- aMap
that will receive autoproperties- Returns:
target
itself
-
getMergerFactory
public ISVNMergerFactory getMergerFactory()
Description copied from interface:ISVNOptions
Returns a factory object which is responsible for creating merger drivers.- Specified by:
getMergerFactory
in interfaceISVNOptions
- Returns:
- a factory that produces merger drivers for merge operations
-
setMergerFactory
public void setMergerFactory(ISVNMergerFactory mergerFactory)
Sets a factory object which is responsible for creating merger drivers.- Parameters:
mergerFactory
- a factory that produces merger drivers for merge operations- See Also:
getMergerFactory()
-
getPropertyValue
public java.lang.String getPropertyValue(java.lang.String propertyName)
Returns the value of a property from the [svnkit] section of the config file.- Parameters:
propertyName
- a SVNKit specific config property name- Returns:
- the value of the property
-
getHttpSpoolDirectory
public java.io.File getHttpSpoolDirectory()
-
setPropertyValue
public void setPropertyValue(java.lang.String propertyName, java.lang.String propertyValue)
Sets the value of a property from the [svnkit] section of the config file.- Parameters:
propertyName
- a SVNKit specific config property namepropertyValue
- a new value for the property; if null the property is removed
-
setConflictHandler
public void setConflictHandler(ISVNConflictHandler resolver)
-
getConflictResolver
public ISVNConflictHandler getConflictResolver()
- Specified by:
getConflictResolver
in interfaceISVNOptions
-
matches
public static boolean matches(java.lang.String pattern, java.lang.String fileName)
-
createMerger
public ISVNMerger createMerger(byte[] conflictStart, byte[] conflictSeparator, byte[] conflictEnd)
Description copied from interface:ISVNMergerFactory
Creates a new merger driver.If a merger driver can not cleanly apply delta to a file (in case of a conflict state) then for each conflicting contents fragment the driver puts local data between the specified
conflictStart
andconflictSeparator
bytes, and the newcomer data between the specifiedconflictSeparator
andconflictEnd
ones. And all these bytes are then written to the file in the place of a conflict.- Specified by:
createMerger
in interfaceISVNMergerFactory
- Parameters:
conflictStart
- bytes that come in the very beginning of a conflictconflictSeparator
- bytes that are used to separate two conflicting fragments - local data and the newcomer oneconflictEnd
- bytes that come in the very end of a conflict- Returns:
- a merger driver
-
createTunnelConnector
public ISVNConnector createTunnelConnector(SVNURL url)
Description copied from interface:ISVNTunnelProvider
Returns a tunnel comand line matching the given subprotocol name.- Specified by:
createTunnelConnector
in interfaceISVNTunnelProvider
- Returns:
- a tunnel command line
-
getKeywordDateFormat
public java.text.DateFormat getKeywordDateFormat()
Description copied from interface:ISVNOptions
Returns the date format used to format datestamps.- Specified by:
getKeywordDateFormat
in interfaceISVNOptions
- Returns:
- date format
-
getPreservedConflictFileExtensions
public java.lang.String[] getPreservedConflictFileExtensions()
Description copied from interface:ISVNOptions
Returns an array of path extensions which the user wants to preserve when conflict files are made. If the extension of a conflicted path does not match any of the returned by this method or if this method returns null, the extension (if any) of the conflicted file will be cut off.- Specified by:
getPreservedConflictFileExtensions
in interfaceISVNOptions
- Returns:
- array of preserved file extensions
-
isAllowAllForwardMergesFromSelf
public boolean isAllowAllForwardMergesFromSelf()
Description copied from interface:ISVNOptions
Says to a merge driver whether to allow all forward merges or not. If this returns true, we allow all forward-merges not already found in recorded mergeinfo, and thus we destroy the ability to, say, merge the whole of a branch to the trunk while automatically ignoring the revisions common to both. If this returns false, we allow only forward-merges not found in either recorded mergeinfo or implicit mergeinfo (natural history), then the previous scenario works great, but we can't reverse-merge a previous change made to our line of history and then remake it (because the reverse-merge will leave no mergeinfo trace, and the remake-it attempt will still find the original change in natural mergeinfo.- Specified by:
isAllowAllForwardMergesFromSelf
in interfaceISVNOptions
- Returns:
- true to allow all forward-merges; otherwise false
-
getLogEncoding
public java.lang.String getLogEncoding()
-
getGlobalCharset
public java.lang.String getGlobalCharset()
-
setGlobalCharset
public void setGlobalCharset(java.lang.String charset)
-
getNativeCharset
public java.lang.String getNativeCharset()
Description copied from interface:ISVNOptions
Returns the native charset name. See alsoSVNProperty.NATIVE
.- Specified by:
getNativeCharset
in interfaceISVNOptions
- Returns:
- native charset name
-
getNativeEOL
public byte[] getNativeEOL()
Description copied from interface:ISVNOptions
Returns the native EOL marker bytes.- Specified by:
getNativeEOL
in interfaceISVNOptions
- Returns:
- native EOL bytes
-
getFileExtensionsToMimeTypes
public java.util.Map getFileExtensionsToMimeTypes()
Description copied from interface:ISVNOptions
Returns a hash holding file extensions to MIME types mappings. Extensions must not include the leading dot in their names.- Specified by:
getFileExtensionsToMimeTypes
in interfaceISVNOptions
- Returns:
- map which keys are
String
file extensions, and values areString
MIME types
-
getDiffCommand
public java.lang.String getDiffCommand()
-
setDiffCommand
public void setDiffCommand(java.lang.String diffCmd)
-
getPasswordStorageTypes
public java.lang.String[] getPasswordStorageTypes()
-
getDefaultSSHPortNumber
public int getDefaultSSHPortNumber()
-
getDefaultSSHUserName
public java.lang.String getDefaultSSHUserName()
-
getDefaultSSHPassword
public java.lang.String getDefaultSSHPassword()
-
getDefaultSSHKeyFile
public java.lang.String getDefaultSSHKeyFile()
-
getDefaultSSHPassphrase
public java.lang.String getDefaultSSHPassphrase()
-
getBooleanValue
public static boolean getBooleanValue(java.lang.String value, boolean defaultValue)
-
getLongValue
public static long getLongValue(java.lang.String value, long defaultValue)
-
-