@DOYUNG

Thank you for your feedback.

I think the graphql project does not need to have an http layer.

Therefore, in the s2graphql project, i want to remove the http layer by
leaving only graphql's unique functions such as schema creation and query
parsing.

I will also be able to set the graphql route in s2http.

ex) Trait S2GraphqlRoute {}




2018년 11월 27일 (화) 오전 10:30에 DO YUNG YOON <sho...@gmail.com>님이 작성:

> No problem deawon, I will work on S2GRAPH-249 based on your commit.
>
> Just quick questions, I guess you mention 4 high-level functionalities.
>
> 1. write
> 2. read
> 3. admin
> 4. graphql
>
> It seems like you intend to migrate s2graphql also into this new subproject
> s2http, so just quick question, are we going to deprecate s2graphql
> subproject?
>
> On Mon, Nov 26, 2018 at 5:38 PM daewon <dae...@apache.org> wrote:
>
> > [S2GRAPH-248] I made the first commit for the issue.
> >
> > Link:
> https://github.com/daewon/incubator-s2graph/tree/S2GRAPH-248/s2http
> >
> > I chose `akka http` because it was stable and lightweight with the`
> > framework` for `http layer`.
> > The initial implementation focused on minimizing external dependencies
> and
> > allowing the separate logically separate functions `write, read, admin,
> > graphql`.
> >
> > To do this, I chose to define logically separated `route` functions as
> each
> > `Trait` S2GraphAdminRoute | S2GraphTraversalRoute. (Please comment if you
> > have any opinions)
> >
> > An example implementation of functionality is `getEdges, experiments`,
> etc.
> > in` S2GraphTraversalRoute`.
> >
> > The `/graphs/*` APIs are implemented to be branched from the existing
> > restHandler.
> > Implement it first by delegating that function.
> >
> > ```
> > // expose routes in `S2GraphTraversalRoute` Trait
> > lazy val traversalRoute: Route =
> >   post {
> >     concat(
> >       delegated // getEdges, experiments, etc.
> >     )
> >   }
> > ```
> >
> > An example implementation of functionality is `get / create Label /
> > Service` in `S2GraphAdminRoute`.
> >
> > ```
> > // expose routes in `S2GraphAdminRoute` Trait
> > lazy val adminRoute: Route =
> >   get {
> >     concat(
> >       getService,
> >       getLabel
> >     )
> >   } ~ post {
> >     concat(
> >       createService,
> >       createLabel
> >     )
> >   }
> > ```
> >
> > There is a brief description in README.md about running the server and
> > testing its functionality.
> >
> > I think the rest of the functions will be created by creating each issue.
> >
> > @DOYUNG `https://issues.apache.org/jira/browse/S2GRAPH-249`
> <https://issues.apache.org/jira/browse/S2GRAPH-249>
> > <https://issues.apache.org/jira/browse/S2GRAPH-249> It seems to be
> > related to the issue.
> >
> >
> > 2018년 11월 23일 (금) 오후 2:18, Daewon Jeong (JIRA) <j...@apache.org>님이 작성:
> >
> > >
> > >     [
> > >
> >
> https://issues.apache.org/jira/browse/S2GRAPH-248?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16696384#comment-16696384
> > > ]
> > >
> > > Daewon Jeong commented on S2GRAPH-248:
> > > --------------------------------------
> > >
> > > [~steamshon] Thank you for your feedback.
> > >
> > > I will quickly build a basic project that will be the base for HTTP
> > > integration task.
> > >
> > > > HTTP interface integration.
> > > > ---------------------------
> > > >
> > > >                 Key: S2GRAPH-248
> > > >                 URL:
> https://issues.apache.org/jira/browse/S2GRAPH-248
> > > >             Project: S2Graph
> > > >          Issue Type: Task
> > > >          Components: s2core, s2rest_netty, s2rest_play
> > > >            Reporter: Daewon Jeong
> > > >            Priority: Minor
> > > >
> > > > The current HTTP interface in S2Graph has the following problems.
> > > >  known issues:
> > > >    1. The `s2rest_netty` project is experimental and supports only
> > > `graph traverse` API.
> > > >    2. `s2rest_play` based on Play! Framework.
> > > >       - Play! Framework is full stack framework, so it has a lot of
> > > dependencies that s2graph does not need.
> > > >       - There is also a conflict with byte buddy for patching
> > asynchbase.
> > > >    3. `GraphQL` is still in the experimental phase and does not yet
> > > provide all the functionality.
> > > > The discussion below is written on the link below.
> > > > discussions: [
> > >
> >
> https://lists.apache.org/thread.html/56379268a12ed5e64a2d7497a8741b09cdf2194bf7a3c303000420b6@%3Cdev.s2graph.apache.org%3E
> > > ]
> > > >
> > > > Based on this issue, the following work should be done.
> > > >  * Create an HTTP interface project(without play!)
> > > >  * Remove s2rest_netty
> > > >  * API documentation (GraphQL, Rest)
> > > >  * GraphQL and Rest HTTP interface integration
> > >
> > >
> > >
> > > --
> > > This message was sent by Atlassian JIRA
> > > (v7.6.3#76005)
> > >
> >
>

Reply via email to