Package org.h2.engine
Class ConnectionInfo
- java.lang.Object
-
- org.h2.engine.ConnectionInfo
-
- All Implemented Interfaces:
java.lang.Cloneable
public class ConnectionInfo extends java.lang.Object implements java.lang.Cloneable
Encapsulates the connection settings, including user name and password.
-
-
Constructor Summary
Constructors Constructor Description ConnectionInfo(java.lang.String name)
Create a connection info object.ConnectionInfo(java.lang.String u, java.util.Properties info, java.lang.String user, java.lang.Object password)
Create a connection info object.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cleanAuthenticationInfo()
Clear authentication properties.ConnectionInfo
clone()
DbSettings
getDbSettings()
byte[]
getFilePasswordHash()
Get the file password hash if it is set.java.lang.String
getName()
Get the unique and normalized database name (excluding settings).org.h2.util.NetworkConnectionInfo
getNetworkConnectionInfo()
Returns the network connection information, ornull
.java.lang.String
getOriginalURL()
Get the complete original database URL.boolean
getProperty(java.lang.String key, boolean defaultValue)
Get a boolean property if it is set and return the value.java.lang.String
getProperty(java.lang.String key, java.lang.String defaultValue)
Get the value of the given property.org.h2.util.TimeZoneProvider
getTimeZone()
Returns the time zone.java.lang.String
getURL()
Get the database URL.java.lang.String
getUserName()
Get the name of the user.static boolean
isIgnoredByParser(java.lang.String name)
Returns whether setting with the specified name should be ignored by parser.boolean
isPersistent()
Check if the referenced database is persistent.boolean
isRemote()
Check if this is a remote connection.boolean
removeProperty(java.lang.String key, boolean defaultValue)
Remove a boolean property if it is set and return the value.void
setBaseDir(java.lang.String dir)
Set the base directory of persistent databases, unless the database is in the user home folder (~).void
setFileEncryptionKey(byte[] key)
void
setFilePasswordHash(byte[] hash)
Set the file password hash.void
setNetworkConnectionInfo(org.h2.util.NetworkConnectionInfo networkConnectionInfo)
Sets the network connection information.void
setOriginalURL(java.lang.String url)
Set the original database URL.void
setProperty(java.lang.String key, java.lang.String value)
Overwrite a property.void
setServerKey(java.lang.String serverKey)
Switch to server mode, and set the server name and database key.void
setUserName(java.lang.String name)
Overwrite the user name.void
setUserPasswordHash(byte[] hash)
Set the user password hash.
-
-
-
Constructor Detail
-
ConnectionInfo
public ConnectionInfo(java.lang.String name)
Create a connection info object.- Parameters:
name
- the database name (including tags), but without the "jdbc:h2:" prefix
-
ConnectionInfo
public ConnectionInfo(java.lang.String u, java.util.Properties info, java.lang.String user, java.lang.Object password)
Create a connection info object.- Parameters:
u
- the database URL (must start with jdbc:h2:)info
- the connection properties ornull
user
- the user name ornull
password
- the password asString
orchar[]
, ornull
-
-
Method Detail
-
isIgnoredByParser
public static boolean isIgnoredByParser(java.lang.String name)
Returns whether setting with the specified name should be ignored by parser.- Parameters:
name
- the name of the setting- Returns:
- whether setting with the specified name should be ignored by parser
-
clone
public ConnectionInfo clone() throws java.lang.CloneNotSupportedException
- Overrides:
clone
in classjava.lang.Object
- Throws:
java.lang.CloneNotSupportedException
-
setBaseDir
public void setBaseDir(java.lang.String dir)
Set the base directory of persistent databases, unless the database is in the user home folder (~).- Parameters:
dir
- the new base directory
-
isRemote
public boolean isRemote()
Check if this is a remote connection.- Returns:
- true if it is
-
isPersistent
public boolean isPersistent()
Check if the referenced database is persistent.- Returns:
- true if it is
-
getProperty
public boolean getProperty(java.lang.String key, boolean defaultValue)
Get a boolean property if it is set and return the value.- Parameters:
key
- the property namedefaultValue
- the default value- Returns:
- the value
-
removeProperty
public boolean removeProperty(java.lang.String key, boolean defaultValue)
Remove a boolean property if it is set and return the value.- Parameters:
key
- the property namedefaultValue
- the default value- Returns:
- the value
-
getName
public java.lang.String getName()
Get the unique and normalized database name (excluding settings).- Returns:
- the database name
-
getFilePasswordHash
public byte[] getFilePasswordHash()
Get the file password hash if it is set.- Returns:
- the password hash or null
-
getUserName
public java.lang.String getUserName()
Get the name of the user.- Returns:
- the user name
-
getProperty
public java.lang.String getProperty(java.lang.String key, java.lang.String defaultValue)
Get the value of the given property.- Parameters:
key
- the property keydefaultValue
- the default value- Returns:
- the value as a String
-
setUserName
public void setUserName(java.lang.String name)
Overwrite the user name. The user name is case-insensitive and stored in uppercase. English conversion is used.- Parameters:
name
- the user name
-
setUserPasswordHash
public void setUserPasswordHash(byte[] hash)
Set the user password hash.- Parameters:
hash
- the new hash value
-
setFilePasswordHash
public void setFilePasswordHash(byte[] hash)
Set the file password hash.- Parameters:
hash
- the new hash value
-
setFileEncryptionKey
public void setFileEncryptionKey(byte[] key)
-
setProperty
public void setProperty(java.lang.String key, java.lang.String value)
Overwrite a property.- Parameters:
key
- the property namevalue
- the value
-
getURL
public java.lang.String getURL()
Get the database URL.- Returns:
- the URL
-
getOriginalURL
public java.lang.String getOriginalURL()
Get the complete original database URL.- Returns:
- the database URL
-
setOriginalURL
public void setOriginalURL(java.lang.String url)
Set the original database URL.- Parameters:
url
- the database url
-
getTimeZone
public org.h2.util.TimeZoneProvider getTimeZone()
Returns the time zone.- Returns:
- the time zone
-
setServerKey
public void setServerKey(java.lang.String serverKey)
Switch to server mode, and set the server name and database key.- Parameters:
serverKey
- the server name, '/', and the security key
-
getNetworkConnectionInfo
public org.h2.util.NetworkConnectionInfo getNetworkConnectionInfo()
Returns the network connection information, ornull
.- Returns:
- the network connection information, or
null
-
setNetworkConnectionInfo
public void setNetworkConnectionInfo(org.h2.util.NetworkConnectionInfo networkConnectionInfo)
Sets the network connection information.- Parameters:
networkConnectionInfo
- the network connection information
-
getDbSettings
public DbSettings getDbSettings()
-
cleanAuthenticationInfo
public void cleanAuthenticationInfo()
Clear authentication properties.
-
-