On Thu, Oct 6, 2011 at 09:06, Jacob Hansson
<[email protected]> wrote:
> I'm hesitant to bundle them together, because the REST client is pure
> python, and can keep a very small footprint. The embedded package, on the
> other hand, bundles the full Neo4j distribution, and so it's a full 10MB
> large.

You're right about the size issue. But using the Python packages
dependencies you can add neo4j-rest-client as a required and wrap the
object GraphDatabasem actually it should have exactly the same API.
When the user does the next

> from neo4j import GraphDatabase
>
> embeddeddb = GraphDatabase('/home/data')
> serverdb = GraphDatabase('http://localhost:7474')

It could raise an error on the GraphDatabase('http://localhost:7474')
just in case of neo4j-rest-client not found, or show a message to the
user.

> There is one major hurdle we need to get past first, we need to implement
> transaction support in the REST API that is feature-compatible with the
> embedded transaction API. When that is in place, the REST client will be
> able to behave exactly like the embedded client, and we can combine them.

There's a partial implementation of transaction through the batch
operation the REST server. You can create, edit and delete, but you
can't edit, by example, properties of a node just created in the
transaction.


In the other hand, perfect, Peter, I will open an issue to inspect the
current API of the embedded Python API in order to make
neo4j-rest-client fully compatible.

Regards!


-- 
Javier de la Rosa
http://versae.es
_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to