Datomic blueprints implementation #238

Closed
wants to merge 19 commits into
from

Projects

None yet

3 participants

@datablend

No description provided.

@spmallette
TinkerPop member

Thanks for your contribution. I just gave a quick glance to review this pull request from a Blueprints API implementation consistency perspective. One thing I noticed here:

https://github.com/tinkerpop/blueprints/pull/238/files#L3R76

The Element setProperty method should throw an IllegalArgumentException if the value is not a valid type expected by the underlying graph. If I'm following the diff right, the IllegalArgumentException is thrown by way of a call from here:

https://github.com/tinkerpop/blueprints/pull/238/files#L7R58

Is that correct?

@datablend

That is correct. Just tested it out to make sure:

Vertex davy = graph.addVertex(null);
davy.setProperty("name",new Test());

Exception in thread "main" java.lang.IllegalArgumentException: Object type com.tinkerpop.blueprints.pgm.impls.datomic.Test not supported
at com.tinkerpop.blueprints.pgm.impls.datomic.util.DatomicUtil.mapJavaTypeToDatomicType(DatomicUtil.java:54)
at com.tinkerpop.blueprints.pgm.impls.datomic.util.DatomicUtil.createKey(DatomicUtil.java:85)
at com.tinkerpop.blueprints.pgm.impls.datomic.util.DatomicUtil.existingAttributeDefinition(DatomicUtil.java:76)
at com.tinkerpop.blueprints.pgm.impls.datomic.util.DatomicUtil.createAttributeDefinition(DatomicUtil.java:59)
at com.tinkerpop.blueprints.pgm.impls.datomic.DatomicElement.setProperty(DatomicElement.java:84)
at com.tinkerpop.blueprints.pgm.impls.datomic.Test.main(Test.java:26)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)

@datablend datablend closed this Apr 11, 2012
@datablend datablend reopened this Apr 11, 2012
@ohpauleez

I would love to see this get merged in

@spmallette
TinkerPop member

I think we should consider options for getting Datomic into mainline after we release 2.1 in the coming weeks. Please let me know if you think there is anything we need to think about or consider in terms of doing that.

@datablend

Not a lot I guess. The only disadvantage I can think off is that people need to manually install the datomic dependency.

@spmallette
TinkerPop member

after a number of discussions on tinkerpop-contributors, it appears we've basically decided to keep your blueprints implementation separate from the mainline of blueprints development. is it ok to close this pull request?

from there it would be cool to collaborate with you to build rexster configuration classes in your repos. i think i could do that pretty quickly for you if you can talk to me a little bit about what the configuration options are.

@datablend

Ok. Will close this pull request and create a new repository specifically for FluxGraph.

@datablend datablend closed this Oct 10, 2012
@spmallette
TinkerPop member

will FluxGraph cover both the mongodb and dataomic implementations?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment