[ 
https://issues.apache.org/jira/browse/S2GRAPH-170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16248254#comment-16248254
 ] 

ASF GitHub Bot commented on S2GRAPH-170:
----------------------------------------

GitHub user SteamShon opened a pull request:

    https://github.com/apache/incubator-s2graph/pull/127

    [S2GRAPH-170]: Create Interface for S2Edge/S2Vertex/S2Graph.

    - Define interface S2EdgeLike/S2VertexLike/S2GraphLike.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/SteamShon/incubator-s2graph S2GRAPH-170

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-s2graph/pull/127.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 #127
    
----
commit fac47d1f4f25dc91b5c0fa83fa3ee9d261798c90
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T01:48:24Z

    add S2VertexLike.

commit f71702357255ba191ee3670978be79cfe8c5b7b0
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T03:13:03Z

    passed s2test.

commit 7413aad429b8f91ff223583ecb7e85688408c76d
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T04:51:27Z

    create S2EdgeLike.

commit 87394b9f7b7e241642201460a460ba2403a0fb99
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T06:28:08Z

    passed s2tests.

commit cdfa0c3d27d646481955c22f3b389e6cf5980a2a
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T07:48:34Z

    remove null.

commit 42b7702e5d32e32b8888067d21031b9eb13ce1c1
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T11:48:07Z

    move S2Graph global helpers into PostProcess.

commit bc26642bc8c3c738205c8bc6c8239f7c0c78254b
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T12:11:13Z

    add GraphElementBuilder.

commit 937b55a7405899d38fee230a35b54e63b47b1677
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T12:14:04Z

    add MutationHelper.

commit aa66822b08d0045e3870af2a9b82523947f553ce
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T12:41:57Z

    apply MutationHelper and GraphElementBuilder.

commit 7d082255944228a34e8ea55d9609202ab65362b2
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-03T22:19:27Z

    add TraversalHelper.

commit 2b5df1dd0ddc913dca92353b191e8982368f08c0
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-06T14:08:25Z

    add S2EdgeBuilder.

commit d3a2e75dfd40de0c2dc4878f14b30cfd179344c9
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-06T23:31:45Z

    add S2EdgePropertyHelper.

commit 3514060ab112303efb0782929e4333dd5ee1f2cd
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-07T01:38:44Z

    remove SelfType bidirectional dependencies on S2EdgeLike.

commit 5f2d4ffc161abac372a7a1d4cbadc89cce45a84b
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-07T02:41:42Z

    remove SelfType bidirectional dependencies on S2VertexLike.

commit e51289fb53526a57cc40cf5fe22d99914d2ae3e5
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-07T07:30:10Z

    bug fix on copyVertex.

commit 6403bc9d69a1ec19824a9ee2f9779cb7c973b1dc
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-10T04:16:47Z

    add S2GraphLike.

commit 7846a850fdb20ea8a426defa54c669c7aebaccc1
Author: DO YUNG YOON <[email protected]>
Date:   2017-11-10T13:57:51Z

    remove newVertex/newEdge/newVertexId on S2GraphLike.

----


> Create Interface for S2Edge/S2Vertex/S2Graph.
> ---------------------------------------------
>
>                 Key: S2GRAPH-170
>                 URL: https://issues.apache.org/jira/browse/S2GRAPH-170
>             Project: S2Graph
>          Issue Type: Improvement
>    Affects Versions: 0.2.1
>            Reporter: DOYUNG YOON
>             Fix For: 0.2.1
>
>   Original Estimate: 504h
>  Remaining Estimate: 504h
>
> h2. Problem Statement
> S2Graph’s entire code base is dependent on S2Edge/S2Vertex/S2Graph class. 
> Even though lots of code touch theses two class, there is no interface 
> defined currently. This means lots of code is interact with these class in 
> different way all by their own way, and this make extremely hard to make any 
> change on these two classes.
> For example, I was working on S2GRAPH-80 to provide java client, and there 
> are too many places to be changed since all theses places use concrete 
> implementation class S2Edge/S2Vertex/S2Graph, not the interfaces. Not just 
> for S2GRAPH-80, but any other issues that need to change theses classes would 
> benefit by communicating through interface.
> h2. Suggestion
> Define interface and change code base to communicate through theses 
> interfaces.
> # Create interface S2Edge/S2Vertex/S2Graph that implement Tinkerpop’s 
> Edge/Vertex/Graph interface 
> # Extract tinkerpop interface related implementations
> # Change caller of S2Edge/S2Vertex/S2Graph to call interface rather than 
> concrete implementation.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to