summaryrefslogtreecommitdiffstats
path: root/bindings/java/GObject.java
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2008-04-29 12:07:06 +0000
committerFrederic Peters <fpeters@entrouvert.com>2008-04-29 12:07:06 +0000
commitb2c6027ad1a0e13257906fc5efbf4c5386d3f1cb (patch)
treee3565e6ba4736e17ed6a3e02f3a8151aed72572e /bindings/java/GObject.java
parent3d7c20873cfd488c67645457594a27f8026f9d54 (diff)
downloadlasso-b2c6027ad1a0e13257906fc5efbf4c5386d3f1cb.tar.gz
lasso-b2c6027ad1a0e13257906fc5efbf4c5386d3f1cb.tar.xz
lasso-b2c6027ad1a0e13257906fc5efbf4c5386d3f1cb.zip
[project @ fpeters@0d.be-20080222093656-l6a09ccadxdz9qrs]
merging benjamin branch Original author: Frederic Peters <fpeters@0d.be> Date: 2008-02-22 10:36:56.421000+01:00
Diffstat (limited to 'bindings/java/GObject.java')
-rw-r--r--bindings/java/GObject.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/bindings/java/GObject.java b/bindings/java/GObject.java
index ccb59c22..a7815a72 100644
--- a/bindings/java/GObject.java
+++ b/bindings/java/GObject.java
@@ -1,4 +1,5 @@
package com.entrouvert.lasso;
+import java.util.*;
class GObject {
private long cptr;
@@ -6,4 +7,40 @@ class GObject {
protected GObject(long ptr) {
cptr = ptr;
}
+ protected Map arrayToMap(Object[] arr) {
+ Map map = new HashMap();
+ if (arr == null)
+ return map;
+ if (arr.length % 2 != 0)
+ throw new IllegalArgumentException("arr must of an even size");
+ int i;
+ for (i=0;i<arr.length;i+=2) {
+ map.put(arr[i],arr[i+1]);
+ }
+ return map;
+ }
+ protected void mapToArray(Map map, Object[] arr) {
+ int s = map.size();
+ if (map == null)
+ return;
+ Iterator it;
+ it = map.entrySet().iterator();
+ int i = 0;
+ while (it.hasNext() && i < 2*s) {
+ Map.Entry e = (Map.Entry)it.next();
+ arr[i++] = (Object)e.getKey();
+ arr[i++] = (Object)e.getValue();
+ }
+ }
+ protected void listToArray(List list, Object[] arr) {
+ Iterator it = list.iterator();
+ int s = arr.length;
+ int i = 0;
+ while (it.hasNext() && i < s) {
+ arr[i++] = (Object)it.next();
+ }
+ }
+ protected void finalize() throws Throwable {
+ LassoJNI.destroy(cptr);
+ }
}