annotate src/main/java/org/monetdb/mcl/net/Target.java @ 809:aa4108a5bc34 monetdbs

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