I was hoping to have a nicer solution than EmptyGraph in 3.4.0 which might
mean some change in 3.2.x/3.3.x depending on what that was.....


On Wed, Aug 15, 2018 at 8:28 AM Robert Dale <robd...@gmail.com> wrote:

> Are you thinking of another mid-stream change or something for TinkerPop
> 3.4 or 4.0?
>
> Robert Dale
>
>
> On Mon, Aug 13, 2018 at 6:35 PM Stephen Mallette <spmalle...@gmail.com>
> wrote:
>
> > Yes - I did consider killing instantiation through a Graph except that:
> >
> > 1. It felt like a major major departure from what we have been doing and
> if
> > users have been using things like GraphFactory to instantiate graphs then
> > they might continue to expect that support (currently supported by
> > RemoteGraph)
> > 2. Given 1 above, the test suite is one of those things that relies on
> > that...........
> > 3. Didn't really think of a suitable API that I loved to suggest dealing
> > with the fallout of 1 and 2, but perhaps I didn't try hard enough.
> >
> >
> >
> > On Mon, Aug 13, 2018 at 5:05 PM Robert Dale <robd...@gmail.com> wrote:
> >
> > > Why does it have to be a graph at all?  Maybe getting a traversal from
> a
> > > graph is the wrong concept and that's why it perplexes you so.  We're
> > > connecting to a server that can contain one or more graphs.  The
> > traversal
> > > should probably come off the connection or be standalone. Maybe the
> > > traversal takes a graph.
> > >
> > > Robert Dale
> > >
> > > On Fri, Aug 10, 2018 at 3:01 PM Stephen Mallette <spmalle...@gmail.com
> >
> > > wrote:
> > >
> > > > I've never been quite settled on how to connect to remote graphs.
> For a
> > > > while we had RemoteGraph but that wasn't useful really because it was
> > > > largely non-functional, as you really just needed a remote configured
> > > > TraversalSource - so we deprecated that. TraversalSource.withRemote()
> > is
> > > > fine, but you can't get to it without a Graph implementation to
> create
> > > the
> > > > TraversalSource in the first place. For that we started to use
> > > EmptyGraph,
> > > > which works, but is a bit confusing, but less confusing than using
> say,
> > > > TinkerGraph, JanusGraph, etc.
> > > >
> > > > So, how do we nicely create a TraversalSource, that is meant to call
> > > > withRemote()?
> > > >
> > > > We could create a new Graph implementation that's like EmptyGraph,
> > called
> > > > ReferenceGraph, which would behave in the same fashion, but at least
> it
> > > > sorta fits because remoting only returns "Reference" elements. I
> > suppose
> > > > ReferenceGraph is somewhere in between EmptyGraph and RemoteGraph in
> > > terms
> > > > of functionality so maybe it makes more sense usability wise than the
> > > > extremes of the other two? I wonder if ReferenceGraph is even a Graph
> > > > instance?? maybe it just has a single static method like:
> > > >
> > > > g = ReferenceGraph.traversal(conf)
> > > >
> > > > where traversal() constructs a GraphTraversalSource and proxies calls
> > to
> > > > withRemote()? Not sure what happens to DSLs though...that might be
> > > trouble.
> > > >
> > > > Anyway, it's a DISCUSS - so let's discuss.............
> > > >
> > >
> >
>

Reply via email to