public class UrlParser extends Object implements Cloneable
parse and verification of URL.
basic syntax :
jdbc:(mysql|mariadb):[replication:|failover|loadbalance:|aurora:]//<hostDescription>[,<hostDescription>]/[database>]
[?<key1>=<value1>[&<key2>=<value2>]]
hostDescription:
- simple :
<host>:<portnumber>
(for example
localhost:3306)
- complex :
address=[(type=(master|slave))][(port=<portnumber>)](host=<host>)
type is by default master
port is by default 3306
host can be dns name, ipv4 or ipv6.
in case of ipv6 and simple host description, the ip must
be written inside bracket.
exemple : jdbc:mariadb://[2001:0660:7401:0200:0000:0000:0edf:bdd7]:3306
Some examples :
jdbc:mariadb://localhost:3306/database?user=greg&password=pass
jdbc:mariadb://address=(type=master)(host=master1),address=(port=3307)(type=slave)(host=slave1)/database?user=greg&password=pass
Modifier | Constructor and Description |
---|---|
protected |
UrlParser(String database,
List<HostAddress> addresses,
Options options,
HaMode haMode) |
Modifier and Type | Method and Description |
---|---|
static boolean |
acceptsUrl(String url)
Tell if mariadb driver accept url string.
|
UrlParser |
auroraPipelineQuirks()
Permit to set parameters not forced. if options useBatchMultiSend and usePipelineAuth are not
explicitly set in connection string, value will default to true or false according if aurora
detection.
|
Object |
clone() |
boolean |
equals(Object parser) |
String |
getDatabase() |
HaMode |
getHaMode() |
List<HostAddress> |
getHostAddresses() |
String |
getInitialUrl() |
Options |
getOptions() |
String |
getPassword() |
String |
getUsername() |
int |
hashCode() |
boolean |
isAurora()
Detection of Aurora.
|
boolean |
isMultiMaster() |
static UrlParser |
parse(String url) |
static UrlParser |
parse(String url,
Properties prop)
Parse url connection string with additional properties.
|
void |
parseUrl(String url)
Parse url connection string.
|
void |
setDatabase(String database) |
void |
setHostAddresses(List<HostAddress> addresses) |
void |
setPassword(String password) |
protected void |
setProperties(String urlParameters) |
void |
setUsername(String username) |
String |
toString()
ToString implementation.
|
protected UrlParser(String database, List<HostAddress> addresses, Options options, HaMode haMode)
public static boolean acceptsUrl(String url)
url
- url Stringpublic static UrlParser parse(String url) throws SQLException
SQLException
public static UrlParser parse(String url, Properties prop) throws SQLException
url
- connection stringprop
- propertiesSQLException
- if parsing exception occurpublic UrlParser auroraPipelineQuirks()
public boolean isAurora()
Aurora rely on MySQL, then cannot be identified by protocol. But Aurora doesn't permit some behaviour normally working with MySQL : pipelining. So Driver must identified if server is Aurora to disable pipeline options that are enable by default.
public void parseUrl(String url) throws SQLException
url
- connection stringSQLException
- if url format is incorrectpublic String getUsername()
public void setUsername(String username)
public String getPassword()
public void setPassword(String password)
public String getDatabase()
public void setDatabase(String database)
public List<HostAddress> getHostAddresses()
public void setHostAddresses(List<HostAddress> addresses)
public Options getOptions()
protected void setProperties(String urlParameters)
public String toString()
public String getInitialUrl()
public HaMode getHaMode()
public boolean isMultiMaster()
public Object clone() throws CloneNotSupportedException
clone
in class Object
CloneNotSupportedException
Copyright © 2019 mariadb.org. All rights reserved.