Mercurial > hg > monetdb-java
comparison tests/OnClientTester.java @ 541:31df6a12fd41 onclient
Make the MonetUploadHandler and MonetDownloadHandler interfaces part of MonetConnection
And rename them to UploadHandler and DownloadHandler
author | Joeri van Ruth <joeri.van.ruth@monetdbsolutions.com> |
---|---|
date | Thu, 02 Sep 2021 14:27:20 +0200 (2021-09-02) |
parents | b437529144f1 |
children | d462000fc410 |
comparison
equal
deleted
inserted
replaced
540:d3a96675969e | 541:31df6a12fd41 |
---|---|
1 import org.monetdb.jdbc.MonetConnection; | 1 import org.monetdb.jdbc.MonetConnection; |
2 import org.monetdb.jdbc.MonetDownloadHandler; | 2 import org.monetdb.jdbc.MonetConnection.UploadHandler; |
3 import org.monetdb.jdbc.MonetUploadHandler; | 3 import org.monetdb.jdbc.MonetConnection.DownloadHandler; |
4 | 4 |
5 import java.io.*; | 5 import java.io.*; |
6 import java.nio.charset.StandardCharsets; | 6 import java.nio.charset.StandardCharsets; |
7 import java.sql.SQLException; | 7 import java.sql.SQLException; |
8 | 8 |
147 test_Download(4_000_000); | 147 test_Download(4_000_000); |
148 } | 148 } |
149 | 149 |
150 public void test_UploadFromStream() throws SQLException, Failure { | 150 public void test_UploadFromStream() throws SQLException, Failure { |
151 prepare(); | 151 prepare(); |
152 MonetUploadHandler handler = new MonetUploadHandler() { | 152 UploadHandler handler = new UploadHandler() { |
153 final String data = "1|one\n2|two\n3|three\n"; | 153 final String data = "1|one\n2|two\n3|three\n"; |
154 | 154 |
155 @Override | 155 @Override |
156 public void handleUpload(MonetConnection.Upload handle, String name, boolean textMode, int offset) throws IOException { | 156 public void handleUpload(MonetConnection.Upload handle, String name, boolean textMode, int offset) throws IOException { |
157 ByteArrayInputStream s = new ByteArrayInputStream(data.getBytes(StandardCharsets.UTF_8)); | 157 ByteArrayInputStream s = new ByteArrayInputStream(data.getBytes(StandardCharsets.UTF_8)); |
163 queryInt("SELECT i FROM foo WHERE t = 'three'", 3); | 163 queryInt("SELECT i FROM foo WHERE t = 'three'", 3); |
164 } | 164 } |
165 | 165 |
166 public void test_UploadFromReader() throws SQLException, Failure { | 166 public void test_UploadFromReader() throws SQLException, Failure { |
167 prepare(); | 167 prepare(); |
168 MonetUploadHandler handler = new MonetUploadHandler() { | 168 UploadHandler handler = new UploadHandler() { |
169 final String data = "1|one\n2|two\n3|three\n"; | 169 final String data = "1|one\n2|two\n3|three\n"; |
170 | 170 |
171 @Override | 171 @Override |
172 public void handleUpload(MonetConnection.Upload handle, String name, boolean textMode, int offset) throws IOException { | 172 public void handleUpload(MonetConnection.Upload handle, String name, boolean textMode, int offset) throws IOException { |
173 StringReader r = new StringReader(data); | 173 StringReader r = new StringReader(data); |
179 queryInt("SELECT i FROM foo WHERE t = 'three'", 3); | 179 queryInt("SELECT i FROM foo WHERE t = 'three'", 3); |
180 } | 180 } |
181 | 181 |
182 public void test_UploadFromReaderOffset() throws SQLException, Failure { | 182 public void test_UploadFromReaderOffset() throws SQLException, Failure { |
183 prepare(); | 183 prepare(); |
184 MonetUploadHandler handler = new MonetUploadHandler() { | 184 UploadHandler handler = new UploadHandler() { |
185 final String data = "1|one\n2|two\n3|three\n"; | 185 final String data = "1|one\n2|two\n3|three\n"; |
186 | 186 |
187 @Override | 187 @Override |
188 public void handleUpload(MonetConnection.Upload handle, String name, boolean textMode, int offset) throws IOException { | 188 public void handleUpload(MonetConnection.Upload handle, String name, boolean textMode, int offset) throws IOException { |
189 BufferedReader r = new BufferedReader(new StringReader(data)); | 189 BufferedReader r = new BufferedReader(new StringReader(data)); |
212 update("INSERT INTO foo SELECT value as i, 'number' || value AS t FROM sys.generate_series(0, 100)", 100); | 212 update("INSERT INTO foo SELECT value as i, 'number' || value AS t FROM sys.generate_series(0, 100)", 100); |
213 expectError("COPY (SELECT * FROM foo) INTO 'banana' ON CLIENT", "download refused"); | 213 expectError("COPY (SELECT * FROM foo) INTO 'banana' ON CLIENT", "download refused"); |
214 queryInt("SELECT 42 -- check if the connection still works", 42); | 214 queryInt("SELECT 42 -- check if the connection still works", 42); |
215 } | 215 } |
216 | 216 |
217 static class MyUploadHandler implements MonetUploadHandler { | 217 static class MyUploadHandler implements UploadHandler { |
218 private final int rows; | 218 private final int rows; |
219 private final int errorAt; | 219 private final int errorAt; |
220 private final String errorMessage; | 220 private final String errorMessage; |
221 private boolean encounteredWriteError; | 221 private boolean encounteredWriteError; |
222 | 222 |
264 public Object encounteredWriteError() { | 264 public Object encounteredWriteError() { |
265 return encounteredWriteError; | 265 return encounteredWriteError; |
266 } | 266 } |
267 } | 267 } |
268 | 268 |
269 static class MyDownloadHandler implements MonetDownloadHandler { | 269 static class MyDownloadHandler implements DownloadHandler { |
270 private final int errorAtByte; | 270 private final int errorAtByte; |
271 private final String errorMessage; | 271 private final String errorMessage; |
272 private int attempts = 0; | 272 private int attempts = 0; |
273 private int bytesSeen = 0; | 273 private int bytesSeen = 0; |
274 private int lineEndingsSeen = 0; | 274 private int lineEndingsSeen = 0; |