fury icon indicating copy to clipboard operation
fury copied to clipboard

[scala]Can Fury support serializing Seq collections and case classes in Scala, and then deserializing the resulting objects into corresponding Java objects in Java?

Open xiaxianggo opened this issue 1 year ago • 1 comments

Can furry support serializing Seq collections and case classes in Scala, and then deserializing the resulting objects into corresponding Java objects in Java?

xiaxianggo avatar Jun 02 '24 14:06 xiaxianggo

Hi @xiaxianggo , you can register a customized serializer for this:

class SeqSerializer extends AbstractCollectionSerializer {

  @Override
  public Collection onCollectionWrite(MemoryBuffer buffer, Object value) {

  }

  @Override
  public Object read(MemoryBuffer buffer) {

  }

  @Override
  public Collection newCollection(MemoryBuffer buffer) {
    int numElements = buffer.readVarUint32Small7();
    setNumElements(numElements);
    ArrayList arrayList = new ArrayList(numElements);
    fury.getRefResolver().reference(arrayList);
    return arrayList;
  }

  @Override
  public Object onCollectionRead(Collection collection) {

  }
}

Take org.apache.fury.serializer.collection.CollectionSerializers.ArrayListSerializer as an example

chaokunyang avatar Jun 03 '24 05:06 chaokunyang