Greg Harris created KAFKA-16356:
-----------------------------------

             Summary: Remove class-name dispatch in RemoteLogMetadataSerde
                 Key: KAFKA-16356
                 URL: https://issues.apache.org/jira/browse/KAFKA-16356
             Project: Kafka
          Issue Type: Task
          Components: Tiered-Storage
    Affects Versions: 3.7.0
            Reporter: Greg Harris


The RemoteLogMetadataSerde#serialize receives a RemoteLogMetadata object, and 
has to dispatch to one of four serializers depending on it's type. This is done 
by taking the class name of the RemoteLogMetadata and looking it up in maps to 
find the corresponding serializer for that class.

This later requires an unchecked cast, because the RemoteLogMetadataTransform 
is generic. This is all type-unsafe, and can be replaced with type-safe 
if-elseif-else statements that may also be faster than the double-indirect map 
lookups.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to