mariadb/storage/connect/Client2.java
Olivier Bertrand 5f64276fb2 - Fix MDEV-25863 : Replace __WIN__ by _WIN32
modified:   storage/connect/array.cpp
  modified:   storage/connect/blkfil.cpp
  modified:   storage/connect/block.h
  modified:   storage/connect/bson.cpp
  modified:   storage/connect/cmgoconn.cpp
  modified:   storage/connect/colblk.cpp
  modified:   storage/connect/domdoc.cpp
  modified:   storage/connect/filamap.cpp
  modified:   storage/connect/filamdbf.cpp
  modified:   storage/connect/filamfix.cpp
  modified:   storage/connect/filamgz.cpp
  modified:   storage/connect/filamtxt.cpp
  modified:   storage/connect/filamvct.cpp
  modified:   storage/connect/filamzip.cpp
  modified:   storage/connect/filter.cpp
  modified:   storage/connect/filter.h
  modified:   storage/connect/fmdlex.c
  modified:   storage/connect/global.h
  modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/javaconn.cpp
  modified:   storage/connect/javaconn.h
  modified:   storage/connect/jdbconn.cpp
  modified:   storage/connect/jmgfam.cpp
  modified:   storage/connect/json.cpp
  modified:   storage/connect/macutil.cpp
  modified:   storage/connect/macutil.h
  modified:   storage/connect/maputil.cpp
  modified:   storage/connect/mycat.cc
  modified:   storage/connect/myconn.cpp
  modified:   storage/connect/myconn.h
  modified:   storage/connect/myutil.cpp
  modified:   storage/connect/odbconn.cpp
  modified:   storage/connect/odbconn.h
  modified:   storage/connect/os.h
  modified:   storage/connect/osutil.c
  modified:   storage/connect/plgdbsem.h
  modified:   storage/connect/plgdbutl.cpp
  modified:   storage/connect/plugutil.cpp
  modified:   storage/connect/rcmsg.c
  modified:   storage/connect/reldef.cpp
  modified:   storage/connect/reldef.h
  modified:   storage/connect/tabdos.cpp
  modified:   storage/connect/tabext.cpp
  modified:   storage/connect/tabfix.cpp
  modified:   storage/connect/tabfmt.cpp
  modified:   storage/connect/tabjdbc.cpp
  modified:   storage/connect/tabmac.cpp
  modified:   storage/connect/tabmac.h
  modified:   storage/connect/tabmul.cpp
  modified:   storage/connect/tabmul.h
  modified:   storage/connect/tabmysql.cpp
  modified:   storage/connect/taboccur.cpp
  modified:   storage/connect/tabodbc.cpp
  modified:   storage/connect/tabpivot.cpp
  modified:   storage/connect/tabrest.cpp
  modified:   storage/connect/tabrest.h
  modified:   storage/connect/tabsys.cpp
  modified:   storage/connect/tabtbl.cpp
  modified:   storage/connect/tabutil.cpp
  modified:   storage/connect/tabvct.cpp
  modified:   storage/connect/tabwmi.cpp
  modified:   storage/connect/tabxcl.cpp
  modified:   storage/connect/tabxml.cpp
  modified:   storage/connect/valblk.cpp
  modified:   storage/connect/value.cpp
  modified:   storage/connect/xindex.cpp
  modified:   storage/connect/xindex.h

- Fix Date errors and SSL warnings
  modified:   storage/connect/mysql-test/connect/r/jdbc.result
  modified:   storage/connect/mysql-test/connect/r/jdbc_new.result
  modified:   storage/connect/mysql-test/connect/t/jdbc.test
  modified:   storage/connect/mysql-test/connect/t/jdbc_new.test

- Update java source files
  modified:   storage/connect/Mongo2Interface.java
  modified:   storage/connect/Mongo3Interface.java
  added:      storage/connect/Client2.java
  added:      storage/connect/Client3.java
  added:      storage/connect/TestInsert2.java
  added:      storage/connect/TestInsert3.java
2021-06-08 17:44:43 +02:00

130 lines
3.2 KiB
Java

package wrappers;
import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Set;
public class Client2 {
static boolean DEBUG = true;
static final Console c = System.console();
static Mongo2Interface jdi = null;
public static void main(String[] args) {
int rc, m, i = 0;
boolean brc;
Set<String> columns;
String[] parms = new String[4];
jdi = new Mongo2Interface(DEBUG);
parms[0] = getLine("URI: ", false);
parms[1] = getLine("DB: ", false);
parms[2] = null;
parms[3] = null;
if (parms[0] == null)
parms[0] = "mongodb://localhost:27017";
if (parms[1] == null)
parms[1] = "test";
rc = jdi.MongoConnect(parms);
if (rc == 0) {
String name, pipeline, query, fields;
System.out.println("Successfully connected to " + parms[1]);
while ((name = getLine("Collection: ", false)) != null) {
if (jdi.GetCollection(name))
System.out.println("GetCollection failed");
else
System.out.println("Collection size: " + jdi.GetCollSize());
pipeline = getLine("Pipeline: ", false);
if (pipeline == null) {
query = getLine("Filter: ", false);
fields = getLine("Proj: ", false);
brc = jdi.FindColl(query, fields);
} else
brc = jdi.AggregateColl(pipeline);
System.out.println("Returned brc = " + brc);
if (!brc) {
for (i = 0; i < 10; i++) {
m = jdi.ReadNext();
if (m > 0) {
columns = jdi.GetColumns();
for (String col : columns)
System.out.println(col + "=" + jdi.GetField(col));
if (pipeline == null) {
if (name.equalsIgnoreCase("gtst"))
System.out.println("gtst=" + jdi.GetField("*"));
if (name.equalsIgnoreCase("inventory")) {
System.out.println("warehouse=" + jdi.GetField("instock.0.warehouse"));
System.out.println("quantity=" + jdi.GetField("instock.1.qty"));
} // endif inventory
if (name.equalsIgnoreCase("restaurants")) {
System.out.println("score=" + jdi.GetField("grades.0.score"));
System.out.println("date=" + jdi.GetField("grades.0.date"));
} // endif restaurants
} // endif pipeline
} else if (m < 0) {
System.out.println("ReadNext: " + jdi.GetErrmsg());
break;
} else
break;
} // endfor i
} // endif brc
} // endwhile name
rc = jdi.MongoDisconnect();
System.out.println("Disconnect returned " + rc);
} else
System.out.println(jdi.GetErrmsg() + " rc=" + rc);
} // end of main
// ==================================================================
private static String getLine(String p, boolean b) {
String response;
if (c != null) {
// Standard console mode
if (b) {
response = new String(c.readPassword(p));
} else
response = c.readLine(p);
} else {
// For instance when testing from Eclipse
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.print(p);
try {
// Cannot suppress echo for password entry
response = in.readLine();
} catch (IOException e) {
response = "";
} // end of try/catch
} // endif c
return (response.isEmpty()) ? null : response;
} // end of getLine
} // end of class Client