Changeset: 1dc093df354d for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1dc093df354d
Modified Files:
java/embedded/org_monetdb_embedded_MonetDBEmbedded.c
java/embedded/org_monetdb_embedded_MonetDBEmbedded.h
java/embedded/src/main/java/org/monetdb/embedded/MonetDBEmbedded.java
java/embedded/src/test/java/org/monetdb/embedded/test/EmbeddedTest.java
Branch: embedded-java
Log Message:
Remove the currently unused appen wrapper and make the interface more
'Runnable' compatible
The idea is to make it easier, in the future, to convert the MonetDB embedded
object into a runnable that can be started in a separate thread
diffs (133 lines):
diff --git a/java/embedded/org_monetdb_embedded_MonetDBEmbedded.c
b/java/embedded/org_monetdb_embedded_MonetDBEmbedded.c
--- a/java/embedded/org_monetdb_embedded_MonetDBEmbedded.c
+++ b/java/embedded/org_monetdb_embedded_MonetDBEmbedded.c
@@ -147,13 +147,3 @@ JNIEXPORT jobject JNICALL Java_org_monet
return result;
}
-
-JNIEXPORT jstring JNICALL
Java_org_monetdb_embedded_MonetDBEmbedded_appendWrapper
-(JNIEnv *env, jobject object, jstring table, jstring schema, jobject data) {
- (void)object;
- (void)table;
- (void)schema;
- (void)data;
-
- return (*env)->NewStringUTF(env, "");
-}
diff --git a/java/embedded/org_monetdb_embedded_MonetDBEmbedded.h
b/java/embedded/org_monetdb_embedded_MonetDBEmbedded.h
--- a/java/embedded/org_monetdb_embedded_MonetDBEmbedded.h
+++ b/java/embedded/org_monetdb_embedded_MonetDBEmbedded.h
@@ -23,14 +23,6 @@ JNIEXPORT jboolean JNICALL Java_org_mone
JNIEXPORT jobject JNICALL
Java_org_monetdb_embedded_MonetDBEmbedded_queryWrapper
(JNIEnv *, jobject, jstring);
-/*
- * Class: org_monetdb_embedded_MonetDBEmbedded
- * Method: append
- * Signature:
(Ljava/lang/String;Ljava/lang/String;Ljava/lang/reflect/Array;)Ljava/lang/String;
- */
-JNIEXPORT jstring JNICALL
Java_org_monetdb_embedded_MonetDBEmbedded_appendWrapper
- (JNIEnv *, jobject, jstring, jstring, jobject);
-
#ifdef __cplusplus
}
#endif
diff --git
a/java/embedded/src/main/java/org/monetdb/embedded/MonetDBEmbedded.java
b/java/embedded/src/main/java/org/monetdb/embedded/MonetDBEmbedded.java
--- a/java/embedded/src/main/java/org/monetdb/embedded/MonetDBEmbedded.java
+++ b/java/embedded/src/main/java/org/monetdb/embedded/MonetDBEmbedded.java
@@ -10,7 +10,6 @@ package org.monetdb.embedded;
import java.io.File;
import java.io.IOException;
-import java.lang.reflect.Array;
import java.sql.SQLException;
import org.monetdb.embedded.result.EmbeddedQueryResult;
@@ -29,14 +28,16 @@ public class MonetDBEmbedded {
* The working directory for MonetDB.
*/
private File directory;
+ private boolean silentFlag;
/**
* You can instantiate multiple object,
* just make sure they are assigned different directories.
*
- * @param directory Database directory
+ * @param directory Database directory
+ * @param silentFlag Silent flag for logging messages
*/
- public MonetDBEmbedded(File directory) {
+ public MonetDBEmbedded(File directory, boolean silentFlag) {
// Load the embedded library (and its dependencies)
System.loadLibrary("embedded_java");
@@ -44,6 +45,7 @@ public class MonetDBEmbedded {
throw new IllegalArgumentException(directory + " is not
a directory");
}
this.directory = directory;
+ this.silentFlag = silentFlag;
}
/**
@@ -59,13 +61,12 @@ public class MonetDBEmbedded {
* Start the embedded database up. Starting in a existing database
directory should restore
* the database's last committed state.
*
- * @param silent Silent flag to logging messages
* @return {@code True} if the was started successfully or is already
running, otherwise {@code False}.
- * @throws IOException
+ * @throws IOException Database startup failure
*/
- public boolean startup(boolean silent) throws IOException {
+ public boolean run() throws IOException {
if (!running) {
- if (startupWrapper(directory.getAbsolutePath(),
silent)){
+ if (startupWrapper(directory.getAbsolutePath(),
silentFlag)){
running = true;
}
}
@@ -108,6 +109,4 @@ public class MonetDBEmbedded {
* @throws SQLException
*/
private native EmbeddedQueryResult queryWrapper(String query) throws
SQLException;
-
- private native String appendWrapper(String schema, String table, Array
data) throws SQLException;
}
diff --git
a/java/embedded/src/test/java/org/monetdb/embedded/test/EmbeddedTest.java
b/java/embedded/src/test/java/org/monetdb/embedded/test/EmbeddedTest.java
--- a/java/embedded/src/test/java/org/monetdb/embedded/test/EmbeddedTest.java
+++ b/java/embedded/src/test/java/org/monetdb/embedded/test/EmbeddedTest.java
@@ -51,8 +51,8 @@ public class EmbeddedTest {
final Path directoryPath =
Files.createTempDirectory("monetdbtest");
datbaseDirectory = directoryPath.toFile();
- db = new MonetDBEmbedded(datbaseDirectory);
- db.startup(false);
+ db = new MonetDBEmbedded(datbaseDirectory, false);
+ db.run();
db.query("CREATE TABLE test (id integer, val integer);");
db.query("INSERT INTO test VALUES (0, " + testValues[0] + "),
(1, " + testValues[1] + "), (2, " + testValues[2] + "), (3, " + testValues[3] +
");");
@@ -74,8 +74,8 @@ public class EmbeddedTest {
@Test
public void restartExistingDatabaseTest() throws IOException,
SQLException {
- MonetDBEmbedded restartedDB = new
MonetDBEmbedded(datbaseDirectory);
- restartedDB.startup(false);
+ MonetDBEmbedded restartedDB = new
MonetDBEmbedded(datbaseDirectory, false);
+ restartedDB.run();
try (EmbeddedQueryResult result = restartedDB.query("SELECT *
FROM test;")) {
assertEquals(4, result.getColumn(1).columnSize());
@@ -202,8 +202,8 @@ public class EmbeddedTest {
final Path tempDirectoryPath =
Files.createTempDirectory("monetdbtest_new");
final File newDirectory = tempDirectoryPath.toFile();
- MonetDBEmbedded newDB = new MonetDBEmbedded(newDirectory);
- newDB.startup(false);
+ MonetDBEmbedded newDB = new MonetDBEmbedded(newDirectory,
false);
+ newDB.run();
newDB.query("CREATE TABLE test (id integer, val integer);");
newDB.query("INSERT INTO test VALUES (1, 10), (2, 20), (3, 30),
(4, null);");
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list