@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) > > > > > >