You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by jl...@apache.org on 2024/04/19 07:04:34 UTC

(kafka) branch trunk updated: MINOR: Use Parametrized types correctly in RemoteLogMetadataSerde (#13824)

This is an automated email from the ASF dual-hosted git repository.

jlprat pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 8f2fca7bd83 MINOR: Use Parametrized types correctly in RemoteLogMetadataSerde (#13824)
8f2fca7bd83 is described below

commit 8f2fca7bd83c94301a6f8d8e37500b4f9c9597b4
Author: Josep Prat <jo...@aiven.io>
AuthorDate: Fri Apr 19 09:04:27 2024 +0200

    MINOR: Use Parametrized types correctly in RemoteLogMetadataSerde (#13824)
    
    RemoteLogMetadataSerde references RemoteLogMetadataTransform in a Raw
    form. Given that the class is parametrized we should make use of it.
    
    Signed-off-by: Josep Prat <jo...@aiven.io>
    
    Reviewers:  Matthew de Detrich <ma...@aiven.io>, Mickael Maison <mi...@gmail.com>
---
 .../storage/serialization/RemoteLogMetadataSerde.java        | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/storage/src/main/java/org/apache/kafka/server/log/remote/metadata/storage/serialization/RemoteLogMetadataSerde.java b/storage/src/main/java/org/apache/kafka/server/log/remote/metadata/storage/serialization/RemoteLogMetadataSerde.java
index dd04022b738..c024640c73e 100644
--- a/storage/src/main/java/org/apache/kafka/server/log/remote/metadata/storage/serialization/RemoteLogMetadataSerde.java
+++ b/storage/src/main/java/org/apache/kafka/server/log/remote/metadata/storage/serialization/RemoteLogMetadataSerde.java
@@ -47,7 +47,7 @@ public class RemoteLogMetadataSerde {
     private static final short REMOTE_LOG_SEGMENT_METADATA_SNAPSHOT_API_KEY = new RemoteLogSegmentMetadataSnapshotRecord().apiKey();
 
     private final Map<String, Short> remoteLogStorageClassToApiKey;
-    private final Map<Short, RemoteLogMetadataTransform> keyToTransform;
+    private final Map<Short, RemoteLogMetadataTransform<? extends RemoteLogMetadata>> keyToTransform;
     private final BytesApiMessageSerde bytesApiMessageSerde;
 
     public RemoteLogMetadataSerde() {
@@ -65,8 +65,8 @@ public class RemoteLogMetadataSerde {
         return MetadataRecordType.fromId(apiKey).newMetadataRecord();
     }
 
-    protected final Map<Short, RemoteLogMetadataTransform> createRemoteLogMetadataTransforms() {
-        Map<Short, RemoteLogMetadataTransform> map = new HashMap<>();
+    protected final Map<Short, RemoteLogMetadataTransform<? extends RemoteLogMetadata>> createRemoteLogMetadataTransforms() {
+        Map<Short, RemoteLogMetadataTransform<? extends RemoteLogMetadata>> map = new HashMap<>();
         map.put(REMOTE_LOG_SEGMENT_METADATA_API_KEY, new RemoteLogSegmentMetadataTransform());
         map.put(REMOTE_LOG_SEGMENT_METADATA_UPDATE_API_KEY, new RemoteLogSegmentMetadataUpdateTransform());
         map.put(REMOTE_PARTITION_DELETE_API_KEY, new RemotePartitionDeleteMetadataTransform());
@@ -91,7 +91,7 @@ public class RemoteLogMetadataSerde {
         }
 
         @SuppressWarnings("unchecked")
-        ApiMessageAndVersion apiMessageAndVersion = remoteLogMetadataTransform(apiKey).toApiMessageAndVersion(remoteLogMetadata);
+        ApiMessageAndVersion apiMessageAndVersion = ((RemoteLogMetadataTransform<RemoteLogMetadata>) remoteLogMetadataTransform(apiKey)).toApiMessageAndVersion(remoteLogMetadata);
 
         return bytesApiMessageSerde.serialize(apiMessageAndVersion);
     }
@@ -102,8 +102,8 @@ public class RemoteLogMetadataSerde {
         return remoteLogMetadataTransform(apiMessageAndVersion.message().apiKey()).fromApiMessageAndVersion(apiMessageAndVersion);
     }
 
-    private RemoteLogMetadataTransform remoteLogMetadataTransform(short apiKey) {
-        RemoteLogMetadataTransform metadataTransform = keyToTransform.get(apiKey);
+    private RemoteLogMetadataTransform<? extends RemoteLogMetadata> remoteLogMetadataTransform(short apiKey) {
+        RemoteLogMetadataTransform<? extends RemoteLogMetadata> metadataTransform = keyToTransform.get(apiKey);
         if (metadataTransform == null) {
             throw new IllegalArgumentException("RemoteLogMetadataTransform for apikey: " + apiKey + " does not exist.");
         }