Hi,
I found the easiest approach to be a small wrapper written in Java.
Something like this should work. Not tested, though.
package carbonite;
import clojure.lang.RT;
import clojure.lang.Var;
import com.esotericsoftware.kryo.Kryo;
public class JavaBridge {
static Var require = RT.var("clojure.core", "require");
static Var symbol = RT.var("clojure.core", "symbol");
static Var defaultReg;
static Var regSerializers;
static Var cljPrimitives;
static var cljCollections;
static {
require.invoke(symbol.invoke("carbonite.api"));
require.invoke(symbol.invoke("carbonite.serializer"));
defaultReg = RT.var("carbonite.api", "default-registry");
regSerializers = RT.var("carbonite.api", "register-serializers");
cljPrimitives = RT.var("carbonite.serializer",
"clojure-primitives");
cljCollections = RT.var("carbonite.serializer",
"clojure-collections");
}
static Kryo defaultRegistry() {
return (Kryo)defaultReg.invoke();
}
static void enhanceRegistry(Kryo registry) {
regSerializers.invoke(registry, cljPrimitives.deref());
regSerializers.invoke(registry, cljCollections.invoke(registry));
}
}
Sincerely
Meikel
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en