Haiyu Wang created TINKERPOP-3237:
-------------------------------------
Summary: Add Custom Type Writer/Serializer API for gremlin-go
Key: TINKERPOP-3237
URL: https://issues.apache.org/jira/browse/TINKERPOP-3237
Project: TinkerPop
Issue Type: Improvement
Components: go
Affects Versions: 3.8.0
Reporter: Haiyu Wang
Fix For: 3.8.1
## Problem
Currently, gremlin-go supports deserializing custom types via
`RegisterCustomTypeReader()`, but lacks the corresponding functionality to
serialize custom types when sending requests to the server. This creates an
asymmetry where users can read custom types from server responses but cannot
write them in requests.
**The Java driver already has complete custom type support** through
`CustomTypeSerializer` in `GraphBinaryWriter.java` and
`GraphBinaryReader.java`. This gap prevents gremlin-go users from working with
custom types in graph databases like JanusGraph, which use custom types such as
`RelationIdentifier`, `Geoshape`, etc.
## Current State
- **Java driver**: ✅ Custom Type Reader + ✅ Custom Type Writer
- **gremlin-go**: ✅ Custom Type Reader + ❌ Custom Type Writer (incomplete)
## Proposed Solution
Add a `RegisterCustomTypeWriter()` API that mirrors the existing
`CustomTypeReader` pattern and implements the same GraphBinary custom type
format used by the Java driver.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)