Ticket #634 (closed Enhancement: fixed)
Core API: expose DB vendor object to plugins
Reported by: | jri | Owned by: | jri |
---|---|---|---|
Priority: | Major | Milestone: | Release 4.3 |
Component: | DeepaMehta Standard Distribution | Version: | 4.2 |
Keywords: | Cc: | dgf, Malte | |
Complexity: | 2 | Area: | Application Framework / API |
Module: | deepamehta-core |
Description
Plugins should be able to utilize vendor specific DB extensions. Thus they need access to the underlying DB object, which is Neo4j's GraphDatabaseService object for the moment.
This is a prerequisite to let the envisioned dm4-geospatial plugin utilize the Neo4j Spatial extension (#633).
Change History
comment:2 Changed 11 years ago by Jörg Richter
- Status changed from accepted to closed
- Resolution set to fixed
comment:3 follow-up: ↓ 4 Changed 11 years ago by jri
- Status changed from closed to reopened
- Resolution fixed deleted
Also an DeepaMehtaObject should provide access to the underlying vendor specific storage object.
Required by dm4-geospatial to let Neo4j Spatial index our existing Geo Coordinate topics (as introduced by the dm4-geomaps module).
comment:4 in reply to: ↑ 3 ; follow-ups: ↓ 5 ↓ 8 Changed 11 years ago by jri
- Status changed from reopened to closed
- Resolution set to fixed
Replying to jri:
Also an DeepaMehtaObject should provide access to the underlying vendor specific storage object.
Not required after all.
Required by dm4-geospatial to let Neo4j Spatial index our existing Geo Coordinate topics (as introduced by the dm4-geomaps module).
We will do another approach: don't relate the spatial index to the existing Geo Coordinate topics but index pure geometry values and attach a property to it. The property might be the ID of the corresponding domain topic. This way after querying the index the IDs of the domain topics are available immediately and require no further traversal.
comment:5 in reply to: ↑ 4 Changed 10 years ago by jri
Replying to jri:
We will do another approach: don't relate the spatial index to the existing Geo Coordinate topics but index pure geometry values [...]
Meanwhile the dm4-geospatial module goes for this approach
comment:6 Changed 10 years ago by jri
- Status changed from closed to reopened
- Resolution fixed deleted
The dm4-storage-neo4j bundle must export more Neo4j packages as required by the dm4-geospatial bundle. At least org.neo4j.graphdb.traversal and org.neo4j.kernel.
comment:7 Changed 10 years ago by Jörg Richter
comment:8 in reply to: ↑ 4 Changed 10 years ago by jri
Replying to jri:
Replying to jri:
Required by dm4-geospatial to let Neo4j Spatial index our existing Geo Coordinate topics (as introduced by the dm4-geomaps module).
We will do another approach: don't relate the spatial index to the existing Geo Coordinate topics but index pure geometry values [...]
After all we go with the original approach: index our Geo Coordinate topics directly, so that they become an active part of the R-tree build up by Neo4j Spatial. This supports index update and delete operations much better.
Also an DeepaMehtaObject should provide access to the underlying vendor specific storage object.
Not required after all.
So, a DeepaMehtaObject needs access to the underlying Neo4j Node object finally.
comment:9 Changed 10 years ago by Jörg Richter
Storage module: expose Node objects (#634).
DeepaMehtaObject? API:
Object getDatabaseVendorObject();
Returned is the Neo4j Node object that underlies the DeepaMehtaObject?.
Required by the dm4-geospatial module.
IMPORTANT: stop the DM server before rebuilding the dm4-storage-neo4j module.
See #634.
comment:10 Changed 10 years ago by Jörg Richter
comment:11 Changed 10 years ago by Jörg Richter
Storage module: expose Node objects (#634).
DeepaMehtaObject? API:
Object getDatabaseVendorObject();
Returned is the Neo4j Node object that underlies the DeepaMehtaObject?.
Required by the dm4-geospatial module.
IMPORTANT: stop the DM server before rebuilding the dm4-storage-neo4j module.
See #634.
comment:12 Changed 10 years ago by jri
- Status changed from reopened to closed
- Resolution set to fixed