summaryrefslogtreecommitdiff
path: root/src/runtime/java/org/grammaticalframework
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/java/org/grammaticalframework')
-rw-r--r--src/runtime/java/org/grammaticalframework/sg/SG.java22
-rw-r--r--src/runtime/java/org/grammaticalframework/sg/SGError.java9
-rw-r--r--src/runtime/java/org/grammaticalframework/sg/TripleResult.java25
3 files changed, 56 insertions, 0 deletions
diff --git a/src/runtime/java/org/grammaticalframework/sg/SG.java b/src/runtime/java/org/grammaticalframework/sg/SG.java
new file mode 100644
index 000000000..631b38ff7
--- /dev/null
+++ b/src/runtime/java/org/grammaticalframework/sg/SG.java
@@ -0,0 +1,22 @@
+package org.grammaticalframework.sg;
+
+import java.io.Closeable;
+import org.grammaticalframework.pgf.Expr;
+
+public class SG implements Closeable {
+ public static native SG openSG(String path);
+ public native void close();
+ public native TripleResult queryTriple(Expr subj, Expr pred, Expr obj);
+
+ //////////////////////////////////////////////////////////////////
+ // private stuff
+ private long ref;
+
+ private SG(long ref) {
+ this.ref = ref;
+ }
+
+ static {
+ System.loadLibrary("jpgf");
+ }
+}
diff --git a/src/runtime/java/org/grammaticalframework/sg/SGError.java b/src/runtime/java/org/grammaticalframework/sg/SGError.java
new file mode 100644
index 000000000..0de876bd4
--- /dev/null
+++ b/src/runtime/java/org/grammaticalframework/sg/SGError.java
@@ -0,0 +1,9 @@
+package org.grammaticalframework.sg;
+
+public class SGError extends RuntimeException {
+ private static final long serialVersionUID = -6098784400143861939L;
+
+ public SGError(String message) {
+ super(message);
+ }
+}
diff --git a/src/runtime/java/org/grammaticalframework/sg/TripleResult.java b/src/runtime/java/org/grammaticalframework/sg/TripleResult.java
new file mode 100644
index 000000000..59a0ddb81
--- /dev/null
+++ b/src/runtime/java/org/grammaticalframework/sg/TripleResult.java
@@ -0,0 +1,25 @@
+package org.grammaticalframework.sg;
+
+import java.io.Closeable;
+import org.grammaticalframework.pgf.Expr;
+
+public class TripleResult implements Closeable {
+ private Expr subj;
+ private Expr pred;
+ private Expr obj;
+
+ public native boolean hasNext();
+ public native void close();
+
+ public Expr getSubject() {
+ return subj;
+ }
+
+ public Expr getPredicate() {
+ return pred;
+ }
+
+ public Expr getObject() {
+ return obj;
+ }
+}