Mercurial > hg > monetdb-java
annotate src/main/java/org/monetdb/mcl/net/Target.java @ 864:b80758ef25db
Add missing license headers
author | Martin van Dinther <martin.van.dinther@monetdbsolutions.com> |
---|---|
date | Thu, 01 Feb 2024 17:45:49 +0100 (15 months ago) |
parents | 5aa19bbed0d6 |
children | 778959b2e0a4 |
rev | line source |
---|---|
864
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
1 /* |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
2 * SPDX-License-Identifier: MPL-2.0 |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
3 * |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
4 * This Source Code Form is subject to the terms of the Mozilla Public |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
5 * License, v. 2.0. If a copy of the MPL was not distributed with this |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
7 * |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
8 * Copyright 2024 MonetDB Foundation; |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
9 * Copyright August 2008 - 2023 MonetDB B.V.; |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
10 * Copyright 1997 - July 2008 CWI. |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
11 */ |
b80758ef25db
Add missing license headers
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents:
834
diff
changeset
|
12 |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
13 package org.monetdb.mcl.net; |
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
14 |
809
aa4108a5bc34
Move more URL and properties parsing responsibilities to Target
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
808
diff
changeset
|
15 import java.net.URISyntaxException; |
aa4108a5bc34
Move more URL and properties parsing responsibilities to Target
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
808
diff
changeset
|
16 import java.util.Properties; |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
17 import java.util.regex.Pattern; |
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
18 |
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
19 public class Target { |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
20 protected static final Target defaults = new Target(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
21 private static final Pattern namePattern = Pattern.compile("^[a-zzA-Z_][-a-zA-Z0-9_.]*$"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
22 private static final Pattern hashPattern = Pattern.compile("^sha256:[0-9a-fA-F:]*$"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
23 private boolean tls = false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
24 private String host = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
25 private int port = -1; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
26 private String database = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
27 private String tableschema = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
28 private String table = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
29 private String sock = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
30 private String sockdir = "/tmp"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
31 private String cert = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
32 private String certhash = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
33 private String clientkey = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
34 private String clientcert = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
35 private String user = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
36 private String password = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
37 private String language = "sql"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
38 private boolean autocommit = true; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
39 private String schema = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
40 private int timezone; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
41 private String binary = "on"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
42 private int replySize = 250; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
43 private String hash = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
44 private boolean debug = false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
45 private String logfile = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
46 private int soTimeout = 0; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
47 private boolean treatClobAsVarchar = true; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
48 private boolean treatBlobAsBinary = true; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
49 private boolean userWasSet = false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
50 private boolean passwordWasSet = false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
51 private Validated validated = null; |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
52 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
53 public Target() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
54 this.timezone = (int) Parameter.TIMEZONE.getDefault(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
55 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
56 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
57 public Target(String url, Properties props) throws URISyntaxException, ValidationError { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
58 this(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
59 setProperties(props); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
60 parseUrl(url); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
61 } |
809
aa4108a5bc34
Move more URL and properties parsing responsibilities to Target
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
808
diff
changeset
|
62 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
63 public static String packHost(String host) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
64 switch (host) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
65 case "localhost": |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
66 return "localhost."; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
67 case "": |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
68 return "localhost"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
69 default: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
70 return host; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
71 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
72 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
73 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
74 public static String unpackHost(String host) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
75 switch (host) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
76 case "localhost.": |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
77 return "localhost"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
78 case "localhost": |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
79 return ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
80 default: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
81 return host; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
82 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
83 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
84 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
85 public void barrier() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
86 if (userWasSet && !passwordWasSet) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
87 password = ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
88 userWasSet = false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
89 passwordWasSet = false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
90 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
91 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
92 public void setString(String key, String value) throws ValidationError { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
93 Parameter parm = Parameter.forName(key); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
94 if (parm != null) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
95 setString(parm, value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
96 else if (!Parameter.isIgnored(key)) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
97 throw new ValidationError(key, "unknown parameter"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
98 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
99 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
100 public void setString(Parameter parm, String value) throws ValidationError { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
101 if (value == null) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
102 throw new NullPointerException("'value' must not be null"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
103 assign(parm, parm.type.parse(parm.name, value)); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
104 } |
807
9239a3ef0bbd
Move code
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
806
diff
changeset
|
105 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
106 public void clear(Parameter parm) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
107 assign(parm, parm.getDefault()); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
108 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
109 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
110 public void parseUrl(String url) throws URISyntaxException, ValidationError { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
111 if (url == null) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
112 return; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
113 if (url.startsWith("jdbc:")) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
114 url = url.substring(5); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
115 if (url.equals("monetdb:")) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
116 return; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
117 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
118 MonetUrlParser.parse(this, url); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
119 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
120 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
121 private void assign(Parameter parm, Object value) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
122 switch (parm) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
123 case TLS: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
124 setTls((boolean) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
125 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
126 case HOST: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
127 setHost((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
128 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
129 case PORT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
130 setPort((int) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
131 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
132 case DATABASE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
133 setDatabase((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
134 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
135 case TABLESCHEMA: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
136 setTableschema((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
137 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
138 case TABLE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
139 setTable((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
140 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
141 case SOCK: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
142 setSock((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
143 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
144 case SOCKDIR: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
145 setSockdir((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
146 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
147 case CERT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
148 setCert((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
149 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
150 case CERTHASH: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
151 setCerthash((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
152 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
153 case CLIENTKEY: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
154 setClientkey((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
155 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
156 case CLIENTCERT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
157 setClientcert((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
158 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
159 case USER: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
160 setUser((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
161 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
162 case PASSWORD: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
163 setPassword((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
164 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
165 case LANGUAGE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
166 setLanguage((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
167 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
168 case AUTOCOMMIT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
169 setAutocommit((boolean) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
170 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
171 case SCHEMA: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
172 setSchema((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
173 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
174 case TIMEZONE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
175 setTimezone((int) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
176 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
177 case BINARY: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
178 setBinary((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
179 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
180 case REPLYSIZE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
181 setReplySize((int) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
182 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
183 case FETCHSIZE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
184 setReplySize((int) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
185 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
186 case HASH: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
187 setHash((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
188 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
189 case DEBUG: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
190 setDebug((boolean) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
191 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
192 case LOGFILE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
193 setLogfile((String) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
194 break; |
809
aa4108a5bc34
Move more URL and properties parsing responsibilities to Target
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
808
diff
changeset
|
195 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
196 case SO_TIMEOUT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
197 setSoTimeout((int) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
198 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
199 case CLOB_AS_VARCHAR: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
200 setTreatClobAsVarchar((boolean) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
201 break; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
202 case BLOB_AS_BINARY: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
203 setTreatBlobAsBinary((boolean) value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
204 break; |
792
9dea0795a926
Understand so_timeout, treat_clob_as_varchar and treat_blob_as_binary
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
791
diff
changeset
|
205 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
206 default: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
207 throw new IllegalStateException("unreachable -- missing case: " + parm.name); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
208 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
209 } |
792
9dea0795a926
Understand so_timeout, treat_clob_as_varchar and treat_blob_as_binary
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
791
diff
changeset
|
210 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
211 public String getString(Parameter parm) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
212 Object value = getObject(parm); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
213 return parm.type.format(value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
214 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
215 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
216 public Object getObject(Parameter parm) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
217 switch (parm) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
218 case TLS: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
219 return tls; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
220 case HOST: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
221 return host; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
222 case PORT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
223 return port; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
224 case DATABASE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
225 return database; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
226 case TABLESCHEMA: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
227 return tableschema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
228 case TABLE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
229 return table; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
230 case SOCK: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
231 return sock; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
232 case SOCKDIR: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
233 return sockdir; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
234 case CERT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
235 return cert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
236 case CERTHASH: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
237 return certhash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
238 case CLIENTKEY: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
239 return clientkey; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
240 case CLIENTCERT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
241 return clientcert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
242 case USER: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
243 return user; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
244 case PASSWORD: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
245 return password; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
246 case LANGUAGE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
247 return language; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
248 case AUTOCOMMIT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
249 return autocommit; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
250 case SCHEMA: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
251 return schema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
252 case TIMEZONE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
253 return timezone; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
254 case BINARY: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
255 return binary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
256 case REPLYSIZE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
257 return replySize; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
258 case FETCHSIZE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
259 return replySize; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
260 case HASH: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
261 return hash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
262 case DEBUG: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
263 return debug; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
264 case LOGFILE: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
265 return logfile; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
266 case SO_TIMEOUT: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
267 return soTimeout; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
268 case CLOB_AS_VARCHAR: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
269 return treatClobAsVarchar; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
270 case BLOB_AS_BINARY: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
271 return treatBlobAsBinary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
272 default: |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
273 throw new IllegalStateException("unreachable -- missing case"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
274 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
275 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
276 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
277 public boolean isTls() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
278 return tls; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
279 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
280 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
281 public void setTls(boolean tls) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
282 this.tls = tls; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
283 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
284 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
285 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
286 public String getHost() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
287 return host; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
288 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
289 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
290 public void setHost(String host) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
291 this.host = host; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
292 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
293 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
294 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
295 public int getPort() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
296 return port; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
297 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
298 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
299 public void setPort(int port) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
300 this.port = port; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
301 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
302 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
303 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
304 public String getDatabase() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
305 return database; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
306 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
307 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
308 public void setDatabase(String database) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
309 this.database = database; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
310 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
311 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
312 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
313 public String getTableschema() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
314 return tableschema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
315 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
316 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
317 public void setTableschema(String tableschema) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
318 this.tableschema = tableschema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
319 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
320 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
321 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
322 public String getTable() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
323 return table; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
324 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
325 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
326 public void setTable(String table) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
327 this.table = table; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
328 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
329 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
330 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
331 public String getSock() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
332 return sock; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
333 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
334 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
335 public void setSock(String sock) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
336 this.sock = sock; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
337 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
338 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
339 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
340 public String getSockdir() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
341 return sockdir; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
342 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
343 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
344 public void setSockdir(String sockdir) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
345 this.sockdir = sockdir; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
346 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
347 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
348 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
349 public String getCert() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
350 return cert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
351 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
352 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
353 public void setCert(String cert) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
354 this.cert = cert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
355 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
356 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
357 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
358 public String getCerthash() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
359 return certhash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
360 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
361 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
362 public void setCerthash(String certhash) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
363 this.certhash = certhash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
364 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
365 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
366 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
367 public String getClientkey() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
368 return clientkey; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
369 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
370 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
371 public void setClientkey(String clientkey) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
372 this.clientkey = clientkey; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
373 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
374 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
375 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
376 public String getClientcert() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
377 return clientcert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
378 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
379 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
380 public void setClientcert(String clientcert) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
381 this.clientcert = clientcert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
382 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
383 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
384 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
385 public String getUser() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
386 return user; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
387 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
388 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
389 public void setUser(String user) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
390 this.user = user; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
391 this.userWasSet = true; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
392 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
393 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
394 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
395 public String getPassword() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
396 return password; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
397 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
398 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
399 public void setPassword(String password) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
400 this.password = password; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
401 this.passwordWasSet = true; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
402 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
403 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
404 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
405 public String getLanguage() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
406 return language; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
407 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
408 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
409 public void setLanguage(String language) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
410 this.language = language; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
411 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
412 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
413 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
414 public boolean isAutocommit() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
415 return autocommit; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
416 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
417 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
418 public void setAutocommit(boolean autocommit) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
419 this.autocommit = autocommit; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
420 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
421 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
422 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
423 public String getSchema() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
424 return schema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
425 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
426 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
427 public void setSchema(String schema) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
428 this.schema = schema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
429 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
430 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
431 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
432 public int getTimezone() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
433 return timezone; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
434 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
435 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
436 public void setTimezone(int timezone) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
437 this.timezone = timezone; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
438 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
439 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
440 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
441 public String getBinary() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
442 return binary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
443 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
444 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
445 public void setBinary(String binary) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
446 this.binary = binary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
447 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
448 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
449 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
450 public int getReplySize() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
451 return replySize; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
452 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
453 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
454 public void setReplySize(int replySize) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
455 this.replySize = replySize; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
456 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
457 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
458 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
459 public String getHash() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
460 return hash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
461 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
462 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
463 public void setHash(String hash) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
464 this.hash = hash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
465 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
466 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
467 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
468 public boolean isDebug() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
469 return debug; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
470 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
471 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
472 public void setDebug(boolean debug) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
473 this.debug = debug; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
474 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
475 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
476 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
477 public String getLogfile() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
478 return logfile; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
479 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
480 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
481 public void setLogfile(String logfile) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
482 this.logfile = logfile; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
483 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
484 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
485 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
486 public int getSoTimeout() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
487 return soTimeout; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
488 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
489 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
490 public void setSoTimeout(int soTimeout) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
491 this.soTimeout = soTimeout; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
492 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
493 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
494 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
495 public boolean isTreatClobAsVarchar() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
496 return treatClobAsVarchar; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
497 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
498 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
499 public void setTreatClobAsVarchar(boolean treatClobAsVarchar) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
500 this.treatClobAsVarchar = treatClobAsVarchar; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
501 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
502 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
503 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
504 public boolean isTreatBlobAsBinary() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
505 return treatBlobAsBinary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
506 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
507 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
508 public void setTreatBlobAsBinary(boolean treatBlobAsBinary) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
509 this.treatBlobAsBinary = treatBlobAsBinary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
510 validated = null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
511 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
512 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
513 public Validated validate() throws ValidationError { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
514 if (validated == null) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
515 validated = new Validated(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
516 return validated; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
517 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
518 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
519 public String buildUrl() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
520 final StringBuilder sb = new StringBuilder(128); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
521 sb.append("jdbc:"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
522 sb.append(tls ? "monetdbs" : "monetdb"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
523 sb.append("://"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
524 sb.append(packHost(host)); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
525 if (!Parameter.PORT.getDefault().equals(port)) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
526 sb.append(':'); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
527 sb.append(port); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
528 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
529 sb.append('/').append(database); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
530 String sep = "?"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
531 for (Parameter parm : Parameter.values()) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
532 if (parm.isCore || parm == Parameter.USER || parm == Parameter.PASSWORD) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
533 continue; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
534 Object defaultValue = parm.getDefault(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
535 if (defaultValue == null) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
536 continue; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
537 Object value = getObject(parm); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
538 if (value.equals(defaultValue)) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
539 continue; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
540 sb.append(sep).append(parm.name).append('='); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
541 String raw = getString(parm); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
542 String encoded = MonetUrlParser.percentEncode(raw); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
543 sb.append(encoded); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
544 sep = "&"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
545 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
546 return sb.toString(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
547 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
548 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
549 public Properties getProperties() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
550 Properties props = new Properties(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
551 for (Parameter parm : Parameter.values()) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
552 Object defaultValue = parm.getDefault(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
553 if (defaultValue == null || defaultValue.equals(getObject(parm))) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
554 continue; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
555 String value = getString(parm); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
556 if (parm == Parameter.HOST) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
557 value = packHost(host); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
558 props.setProperty(parm.name, value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
559 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
560 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
561 return props; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
562 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
563 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
564 public void setProperties(Properties props) throws ValidationError { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
565 if (props != null) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
566 for (String key : props.stringPropertyNames()) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
567 String value = props.getProperty(key); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
568 if (key.equals(Parameter.HOST.name)) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
569 value = Target.unpackHost(value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
570 setString(key, value); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
571 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
572 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
573 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
574 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
575 public enum Verify { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
576 None, Cert, Hash, System |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
577 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
578 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
579 public class Validated { |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
580 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
581 private final int nbinary; |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
582 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
583 Validated() throws ValidationError { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
584 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
585 // 1. The parameters have the types listed in the table in [Section |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
586 // Parameters](#parameters). |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
587 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
588 String binaryString = binary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
589 int binaryInt; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
590 try { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
591 binaryInt = (int) ParameterType.Int.parse(Parameter.BINARY.name, binaryString); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
592 } catch (ValidationError e) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
593 try { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
594 boolean b = (boolean) ParameterType.Bool.parse(Parameter.BINARY.name, binaryString); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
595 binaryInt = b ? 65535 : 0; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
596 } catch (ValidationError ee) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
597 throw new ValidationError("binary= must be either a number or true/yes/on/false/no/off"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
598 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
599 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
600 if (binaryInt < 0) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
601 throw new ValidationError("binary= cannot be negative"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
602 nbinary = binaryInt; |
792
9dea0795a926
Understand so_timeout, treat_clob_as_varchar and treat_blob_as_binary
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
791
diff
changeset
|
603 |
9dea0795a926
Understand so_timeout, treat_clob_as_varchar and treat_blob_as_binary
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
791
diff
changeset
|
604 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
605 // 2. At least one of **sock** and **host** must be empty. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
606 if (!sock.isEmpty() && !host.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
607 throw new ValidationError("sock=" + sock + " cannot be combined with host=" + host); |
793
5bfe3357fb1c
Use the new url parser
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
792
diff
changeset
|
608 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
609 // 3. The string parameter **binary** must either parse as a boolean or as a |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
610 // non-negative integer. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
611 // |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
612 // (checked above) |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
613 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
614 // 4. If **sock** is not empty, **tls** must be 'off'. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
615 if (!sock.isEmpty() && tls) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
616 throw new ValidationError("monetdbs:// cannot be combined with sock="); |
810
425592a53fcd
Add interface to MonetConnection for retrieving connection info as Properties
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
809
diff
changeset
|
617 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
618 // 5. If **certhash** is not empty, it must be of the form `{sha256}hexdigits` |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
619 // where hexdigits is a non-empty sequence of 0-9, a-f, A-F and colons. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
620 // TODO |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
621 if (!certhash.isEmpty()) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
622 if (!certhash.toLowerCase().startsWith("sha256:")) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
623 throw new ValidationError("certificate hash must start with 'sha256:'"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
624 if (!hashPattern.matcher(certhash).matches()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
625 throw new ValidationError("invalid certificate hash"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
626 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
627 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
628 // 6. If **tls** is 'off', **cert** and **certhash** must be 'off' as well. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
629 if (!tls) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
630 if (!cert.isEmpty() || !certhash.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
631 throw new ValidationError("cert= and certhash= are only allowed in combination with monetdbs://"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
632 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
633 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
634 // 7. Parameters **database**, **tableschema** and **table** must consist only of |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
635 // upper- and lowercase letters, digits, periods, dashes and underscores. They must not |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
636 // start with a dash. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
637 // If **table** is not empty, **tableschema** must also not be empty. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
638 // If **tableschema** is not empty, **database** must also not be empty. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
639 if (database.isEmpty() && !tableschema.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
640 throw new ValidationError("table schema cannot be set without database"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
641 if (tableschema.isEmpty() && !table.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
642 throw new ValidationError("table cannot be set without schema"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
643 if (!database.isEmpty() && !namePattern.matcher(database).matches()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
644 throw new ValidationError("invalid database name"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
645 if (!tableschema.isEmpty() && !namePattern.matcher(tableschema).matches()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
646 throw new ValidationError("invalid table schema name"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
647 if (!table.isEmpty() && !namePattern.matcher(table).matches()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
648 throw new ValidationError("invalid table name"); |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
649 |
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
650 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
651 // 8. Parameter **port** must be -1 or in the range 1-65535. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
652 if (port < -1 || port == 0 || port > 65535) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
653 throw new ValidationError("invalid port number " + port); |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
654 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
655 // 9. If **clientcert** is set, **clientkey** must also be set. |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
656 if (!clientcert.isEmpty() && clientkey.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
657 throw new ValidationError("clientcert= is only valid in combination with clientkey="); |
793
5bfe3357fb1c
Use the new url parser
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
792
diff
changeset
|
658 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
659 // JDBC specific |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
660 if (soTimeout < 0) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
661 throw new ValidationError("so_timeout= must not be negative"); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
662 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
663 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
664 public boolean getTls() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
665 return tls; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
666 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
667 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
668 // Getter is private because you probably want connectTcp() instead |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
669 private String getHost() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
670 return host; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
671 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
672 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
673 // Getter is private because you probably want connectPort() instead |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
674 private int getPort() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
675 return port; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
676 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
677 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
678 public String getDatabase() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
679 return database; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
680 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
681 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
682 public String getTableschema() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
683 return tableschema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
684 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
685 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
686 public String getTable() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
687 return table; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
688 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
689 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
690 // Getter is private because you probably want connectUnix() instead |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
691 private String getSock() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
692 return sock; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
693 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
694 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
695 public String getSockdir() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
696 return sockdir; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
697 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
698 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
699 public String getCert() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
700 return cert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
701 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
702 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
703 public String getCerthash() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
704 return certhash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
705 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
706 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
707 public String getClientkey() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
708 return clientkey; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
709 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
710 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
711 public String getClientcert() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
712 return clientcert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
713 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
714 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
715 public String getUser() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
716 return user; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
717 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
718 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
719 public String getPassword() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
720 return password; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
721 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
722 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
723 public String getLanguage() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
724 return language; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
725 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
726 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
727 public boolean getAutocommit() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
728 return autocommit; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
729 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
730 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
731 public String getSchema() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
732 return schema; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
733 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
734 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
735 public int getTimezone() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
736 return timezone; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
737 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
738 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
739 // Getter is private because you probably want connectBinary() instead |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
740 public int getBinary() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
741 return nbinary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
742 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
743 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
744 public int getReplySize() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
745 return replySize; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
746 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
747 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
748 public String getHash() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
749 return hash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
750 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
751 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
752 public boolean getDebug() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
753 return debug; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
754 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
755 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
756 public String getLogfile() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
757 return logfile; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
758 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
759 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
760 public int getSoTimeout() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
761 return soTimeout; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
762 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
763 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
764 public boolean isTreatClobAsVarchar() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
765 return treatClobAsVarchar; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
766 } |
792
9dea0795a926
Understand so_timeout, treat_clob_as_varchar and treat_blob_as_binary
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
791
diff
changeset
|
767 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
768 public boolean isTreatBlobAsBinary() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
769 return treatBlobAsBinary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
770 } |
792
9dea0795a926
Understand so_timeout, treat_clob_as_varchar and treat_blob_as_binary
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
791
diff
changeset
|
771 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
772 public boolean connectScan() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
773 if (database.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
774 return false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
775 if (!sock.isEmpty() || !host.isEmpty() || port != -1) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
776 return false; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
777 return !tls; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
778 } |
792
9dea0795a926
Understand so_timeout, treat_clob_as_varchar and treat_blob_as_binary
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
791
diff
changeset
|
779 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
780 public int connectPort() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
781 return port == -1 ? 50000 : port; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
782 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
783 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
784 public String connectUnix() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
785 if (!sock.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
786 return sock; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
787 if (tls) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
788 return ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
789 if (host.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
790 return sockdir + "/.s.monetdb." + connectPort(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
791 return ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
792 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
793 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
794 public String connectTcp() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
795 if (!sock.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
796 return ""; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
797 if (host.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
798 return "localhost"; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
799 return host; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
800 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
801 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
802 public Verify connectVerify() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
803 if (!tls) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
804 return Verify.None; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
805 if (!certhash.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
806 return Verify.Hash; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
807 if (!cert.isEmpty()) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
808 return Verify.Cert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
809 return Verify.System; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
810 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
811 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
812 public String connectCertHashDigits() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
813 if (!tls) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
814 return null; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
815 StringBuilder builder = new StringBuilder(certhash.length()); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
816 for (int i = "sha256:".length(); i < certhash.length(); i++) { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
817 char c = certhash.charAt(i); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
818 if (Character.digit(c, 16) >= 0) |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
819 builder.append(Character.toLowerCase(c)); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
820 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
821 return builder.toString(); |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
822 } |
791
4de810c22328
Refactor
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
790
diff
changeset
|
823 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
824 public int connectBinary() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
825 return nbinary; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
826 } |
799
117e7917325d
Prepare for implementing TLS
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
798
diff
changeset
|
827 |
834
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
828 public String connectClientKey() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
829 return clientkey; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
830 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
831 |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
832 public String connectClientCert() { |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
833 return clientcert.isEmpty() ? clientkey : clientcert; |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
834 } |
5aa19bbed0d6
Comments and formatting
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
810
diff
changeset
|
835 } |
789
88c5b678e974
URL parser passes the tests.
Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com>
parents:
diff
changeset
|
836 } |