我可以配置 Gremlin GraphBinary 以将枚举序列化为字符串吗?

Can I configure Gremlin GraphBinary to serialize enums as strings?

我有一个要与 Amazon Neptune 连接的 Gremlin 应用程序。我的应用程序尝试使用枚举值保存属性,但 Neptune 不支持此功能。有没有一种方法可以配置序列化程序 (GraphBinaryMessageSerializerV1) 以类似于 JPA @Enumerated(STRING) 的方式将枚举转换为字符串? configure 方法包含一些看起来像是钩子的东西,但我不清楚如何提供 CustomTypeSerializers(或者这是否适用于抽象 Enum)。

我做了一些测试,我认为 GraphBinary 不能做你想做的事。 API 强制您将枚举序列化为 CUSTOM,这意味着服务器还需要了解您的自定义序列化代码才能处理它。由于您无法将该代码提供给 Neptune,Neptune 将不知道如何处理。我希望可以使用自定义序列化程序将值从未知的 GraphBinary 类型单向强制转换为已知类型(例如 String),但它没有成功。我猜你只需要做 g.addV().property('level',Level.HIGH.name()).