Class ProtobufSerializer

java.lang.Object
org.apache.pekko.remote.serialization.ProtobufSerializer
All Implemented Interfaces:
BaseSerializer, Serializer

public class ProtobufSerializer extends Object implements BaseSerializer
This Serializer serializes org.apache.pekko.protobufv3.internal.Message It is using reflection to find the parseFrom and toByteArray methods to avoid dependency to com.google.protobuf.

This is related to the config property pekko.serialization.protobuf.allowed-classes.

  • Constructor Details

  • Method Details

    • serializeActorRef

      public static WireFormats.ActorRefData serializeActorRef(ActorRef ref)
      Helper to serialize an pekko.actor.ActorRef to Pekko's protobuf representation.
    • deserializeActorRef

      public static ActorRef deserializeActorRef(ExtendedActorSystem system, WireFormats.ActorRefData refProtocol)
      Helper to materialize (lookup) an pekko.actor.ActorRef from Pekko's protobuf representation in the supplied pekko.actor.ActorSystem.
    • identifier

      public int identifier()
      Description copied from interface: BaseSerializer
      Globally unique serialization identifier configured in the reference.conf.

      See pekko.serialization.Serializer.identifier.

      Specified by:
      identifier in interface BaseSerializer
      Specified by:
      identifier in interface Serializer
    • org$apache$pekko$serialization$BaseSerializer$_setter_$identifier_$eq

      protected void org$apache$pekko$serialization$BaseSerializer$_setter_$identifier_$eq(int x$1)
      Description copied from interface: BaseSerializer
      Globally unique serialization identifier configured in the reference.conf.

      See pekko.serialization.Serializer.identifier.

      Specified by:
      org$apache$pekko$serialization$BaseSerializer$_setter_$identifier_$eq in interface BaseSerializer
    • system

      public ExtendedActorSystem system()
      Description copied from interface: BaseSerializer
      Actor system which is required by most serializer implementations.
      Specified by:
      system in interface BaseSerializer
    • includeManifest

      public boolean includeManifest()
      Description copied from interface: Serializer
      Returns whether this serializer needs a manifest in the fromBinary method
      Specified by:
      includeManifest in interface Serializer
    • fromBinary

      public Object fromBinary(byte[] bytes, scala.Option<Class<?>> manifest)
      Description copied from interface: Serializer
      Produces an object from an array of bytes, with an optional type-hint; the class should be loaded using ActorSystem.dynamicAccess.
      Specified by:
      fromBinary in interface Serializer
    • toBinary

      public byte[] toBinary(Object obj)
      Description copied from interface: Serializer
      Serializes the given object into an Array of Byte.

      Note that the array must not be mutated by the serializer after it has been returned.

      Specified by:
      toBinary in interface Serializer