GitHub user dpitera reopened a pull request:
https://github.com/apache/tinkerpop/pull/569
TINKERPOP-1438: GraphManager becomes a customizable interface
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/dpitera/tinkerpop TINKERPOP-1438
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/tinkerpop/pull/569.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #569
----
commit 7b20ce78be5205bb9a0bec29435d77e0084dd647
Author: Benjamin Anderson <[email protected]>
Date: 2016-08-20T05:33:16Z
Replace GraphManager with interface
This enabled settings-based customization of the GraphManager
implementation class, allowing implementors to customize the behavior of
the GraphManager.
commit f9f3010889851b126437d1bd8f98e0a3f99ac9ba
Author: dpitera <[email protected]>
Date: 2016-11-21T18:01:47Z
GraphManager support opening of specific graphs
This changeset allows an implementor to open a specific graph. One may
use this concept to implement a dynamic graph cache.
Furthermore, to ensure that rebindings work as intended, i.e. the list
of graphs returned to the HttpGremlinEndpointHandler, or "open graphs",
must include the to-be-rebound-graph. This changeset includes a change
to return these rebound graphs specifically.
Similar story as above for the WebSockets class, StandardOpProcessor.
Similar story for sessions, SessionOpProcessor.
Furthermore, the serializers at server boot only need to be aware of the
graphs defined in the settings object, so the relevant change here is in
AbstractChannelizer.
Furthermore:
To encourage a GraphManager implementation whose modification of the
Map<String, Graph> object aligns more closely with accepted "Getter and
Setter" design patterns, we update the adding of graphs to the
GraphManager Map by calling the new `addGraph(String, Graph)` rather
than publicly editting it with a call to `getGraphs().put(String,
Graph)`.
Also added `addTraversalSource(String, TraversalSource) for same
reasons.
Also, updated BasicGraphManager according to the new specifications.
commit 1119f811c1cc91b286e514365501a01beaeaeaec
Author: dpitera <[email protected]>
Date: 2017-03-15T19:31:45Z
Allow for custom graph instantiations/closings
This allows an implementor to supply a custom openGraph function to
return a newly instantiated graph object, and similarly do the same to
close a graph object, while doing so through the graphManager for
reference tracking.
commit 4cb5a771ac78187d438cb453d212787de5579e60
Author: dpitera <[email protected]>
Date: 2017-03-15T19:34:09Z
Update docs acc. to GraphManager changes
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---