[ 
https://issues.apache.org/jira/browse/TINKERPOP-1984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stephen mallette updated TINKERPOP-1984:
----------------------------------------
    Description: 
The {{HttpGremlinEndPointHandler}} only deals with {{MessageTextSerializer}} 
implementations and you can't configure multiple GraphSON ones because all of 
those implementations bind to {{application/json}} mimetype.  I'm not even 
quite sure why a distinction exists anymore between "text" and "binary" 
serialization because we serialize to string only to turn around and convert to 
a {{ByteBuf}} which is what the binary version of the serializers already do. 

This is a breaking change because the header mime type appended to requests 
generated from {{GraphSONMessageSerializerV2d0}} changed from 
{{application/json}} to {{application/vnd.gremlin-v2.0+json}}.

  was:
The {{HttpGremlinEndPointHandler}} only deals with {{MessageTextSerializer}} 
implementations and you can't configure multiple GraphSON ones because all of 
those implementations bind to {{application/json}} mimetype.  I'm not even 
quite sure why a distinction exists anymore between "text" and "binary" 
serialization because we serialize to string only to turn around and convert to 
a {{ByteBuf}} which is what the binary version of the serializers already do. 

Anyway, I envision some deprecation here along the 3.3.x line and other 
refactoring to get this to work right. Not sure if there will be problems along 
the way in getting it all working at this point. Will need to DISCUSS if the 
text serializers could be removed in 3.4.0 or not. Not sure who is using HTTP 
stuff and would rely on that.


> Allow support for multiple serializer versions in Gremlin Server HTTP
> ---------------------------------------------------------------------
>
>                 Key: TINKERPOP-1984
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1984
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: server
>    Affects Versions: 3.3.3
>            Reporter: stephen mallette
>            Priority: Minor
>              Labels: breaking, deprecation
>
> The {{HttpGremlinEndPointHandler}} only deals with {{MessageTextSerializer}} 
> implementations and you can't configure multiple GraphSON ones because all of 
> those implementations bind to {{application/json}} mimetype.  I'm not even 
> quite sure why a distinction exists anymore between "text" and "binary" 
> serialization because we serialize to string only to turn around and convert 
> to a {{ByteBuf}} which is what the binary version of the serializers already 
> do. 
> This is a breaking change because the header mime type appended to requests 
> generated from {{GraphSONMessageSerializerV2d0}} changed from 
> {{application/json}} to {{application/vnd.gremlin-v2.0+json}}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to