From b88f87235161dba8b0a7fefa8ba7799fb8aaf7bd Mon Sep 17 00:00:00 2001 From: Dmitry Kryukov Date: Thu, 22 Aug 2024 21:29:59 +0300 Subject: [PATCH 1/3] Removed suspicious getClass() call on Class Signed-off-by: Dmitry Kryukov --- .../java/org/opensearch/core/common/io/stream/Writeable.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java b/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java index 960f4bec5eeb5..525dcc056eab1 100644 --- a/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java +++ b/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java @@ -83,7 +83,7 @@ public static > void registerReader(final byte ordinal, fina public static void registerClassAlias(final Class classInstance, final Class classGeneric) { if (WRITER_CUSTOM_CLASS_MAP.putIfAbsent(classInstance, classGeneric) != null) { - throw new IllegalArgumentException("Streamable custom class already registered [" + classInstance.getClass() + "]"); + throw new IllegalArgumentException("Streamable custom class already registered [" + classInstance + "]"); } } From f4786bf45961546b66a4ada1ac9443cdbaf0cfc7 Mon Sep 17 00:00:00 2001 From: Dmitry Kryukov Date: Thu, 19 Sep 2024 22:20:50 +0300 Subject: [PATCH 2/3] Changed the exception's message. Added unit test. Signed-off-by: Dmitry Kryukov --- .../core/common/io/stream/Writeable.java | 4 ++-- .../core/common/io/stream/WriteableTests.java | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java diff --git a/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java b/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java index 525dcc056eab1..a46f2bebe3ad2 100644 --- a/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java +++ b/libs/core/src/main/java/org/opensearch/core/common/io/stream/Writeable.java @@ -83,7 +83,7 @@ public static > void registerReader(final byte ordinal, fina public static void registerClassAlias(final Class classInstance, final Class classGeneric) { if (WRITER_CUSTOM_CLASS_MAP.putIfAbsent(classInstance, classGeneric) != null) { - throw new IllegalArgumentException("Streamable custom class already registered [" + classInstance + "]"); + throw new IllegalArgumentException("Streamable custom class already registered [" + classInstance.getName() + "]"); } } @@ -96,7 +96,7 @@ public static > W getWriter(final Class clazz) { } /** - * Returns the ristered reader keyed by the unique ordinal + * Returns the registered reader keyed by the unique ordinal */ @SuppressWarnings("unchecked") public static > R getReader(final byte b) { diff --git a/libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java b/libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java new file mode 100644 index 0000000000000..0c3f3c1d47a6e --- /dev/null +++ b/libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java @@ -0,0 +1,19 @@ +package org.opensearch.core.common.io.stream; + +import org.junit.Assert; +import org.opensearch.test.OpenSearchTestCase; + +import java.util.concurrent.atomic.AtomicInteger; + +public class WriteableTests extends OpenSearchTestCase { + + public void testRegisterClassAlias() { + Writeable.WriteableRegistry.registerClassAlias(StringBuilder.class, AtomicInteger.class); + try { + Writeable.WriteableRegistry.registerClassAlias(StringBuilder.class, AtomicInteger.class); + Assert.fail("expected exception not thrown"); + } catch (IllegalArgumentException illegalArgumentException) { + Assert.assertEquals("Streamable custom class already registered [java.lang.StringBuilder]", illegalArgumentException.getMessage()); + } + } +} From 4142a28cc4a2ef26e201b3d3e74a486186f7913e Mon Sep 17 00:00:00 2001 From: Daniel Widdis Date: Thu, 17 Oct 2024 12:42:21 -0700 Subject: [PATCH 3/3] Run spotless, add license header Signed-off-by: Daniel Widdis --- .../core/common/io/stream/WriteableTests.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java b/libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java index 0c3f3c1d47a6e..60ba0b2111f80 100644 --- a/libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java +++ b/libs/core/src/test/java/org/opensearch/core/common/io/stream/WriteableTests.java @@ -1,7 +1,15 @@ +/* + * SPDX-License-Identifier: Apache-2.0 + * + * The OpenSearch Contributors require contributions made to + * this file be licensed under the Apache-2.0 license or a + * compatible open source license. + */ + package org.opensearch.core.common.io.stream; -import org.junit.Assert; import org.opensearch.test.OpenSearchTestCase; +import org.junit.Assert; import java.util.concurrent.atomic.AtomicInteger; @@ -13,7 +21,10 @@ public void testRegisterClassAlias() { Writeable.WriteableRegistry.registerClassAlias(StringBuilder.class, AtomicInteger.class); Assert.fail("expected exception not thrown"); } catch (IllegalArgumentException illegalArgumentException) { - Assert.assertEquals("Streamable custom class already registered [java.lang.StringBuilder]", illegalArgumentException.getMessage()); + Assert.assertEquals( + "Streamable custom class already registered [java.lang.StringBuilder]", + illegalArgumentException.getMessage() + ); } } }