diff --git a/buffer/src/main/java/io/netty/buffer/AbstractByteBuf.java b/buffer/src/main/java/io/netty/buffer/AbstractByteBuf.java index 280dc16ff2..a3bce75371 100644 --- a/buffer/src/main/java/io/netty/buffer/AbstractByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/AbstractByteBuf.java @@ -39,6 +39,7 @@ import java.nio.charset.Charset; import static io.netty.util.internal.MathUtil.isOutOfBounds; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * A skeletal implementation of a buffer. @@ -282,9 +283,7 @@ public abstract class AbstractByteBuf extends ByteBuf { if (endianness == order()) { return this; } - if (endianness == null) { - throw new NullPointerException("endianness"); - } + requireNonNull(endianness, "endianness"); return newSwappedByteBuf(); } @@ -592,9 +591,7 @@ public abstract class AbstractByteBuf extends ByteBuf { @Override public ByteBuf setBytes(int index, ByteBuf src, int length) { checkIndex(index, length); - if (src == null) { - throw new NullPointerException("src"); - } + requireNonNull(src, "src"); if (checkBounds) { checkReadableBounds(src, length); } diff --git a/buffer/src/main/java/io/netty/buffer/ByteBufInputStream.java b/buffer/src/main/java/io/netty/buffer/ByteBufInputStream.java index 16dce6fd53..de4e4fbbb5 100644 --- a/buffer/src/main/java/io/netty/buffer/ByteBufInputStream.java +++ b/buffer/src/main/java/io/netty/buffer/ByteBufInputStream.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.ReferenceCounted; import io.netty.util.internal.StringUtil; @@ -104,9 +106,7 @@ public class ByteBufInputStream extends InputStream implements DataInput { * {@code writerIndex} */ public ByteBufInputStream(ByteBuf buffer, int length, boolean releaseOnClose) { - if (buffer == null) { - throw new NullPointerException("buffer"); - } + requireNonNull(buffer, "buffer"); if (length < 0) { if (releaseOnClose) { buffer.release(); diff --git a/buffer/src/main/java/io/netty/buffer/ByteBufOutputStream.java b/buffer/src/main/java/io/netty/buffer/ByteBufOutputStream.java index c4f7805369..a8acf5fb25 100644 --- a/buffer/src/main/java/io/netty/buffer/ByteBufOutputStream.java +++ b/buffer/src/main/java/io/netty/buffer/ByteBufOutputStream.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.CharsetUtil; import java.io.DataOutput; @@ -45,9 +47,7 @@ public class ByteBufOutputStream extends OutputStream implements DataOutput { * Creates a new stream which writes data to the specified {@code buffer}. */ public ByteBufOutputStream(ByteBuf buffer) { - if (buffer == null) { - throw new NullPointerException("buffer"); - } + requireNonNull(buffer, "buffer"); this.buffer = buffer; startIndex = buffer.writerIndex(); } diff --git a/buffer/src/main/java/io/netty/buffer/ByteBufUtil.java b/buffer/src/main/java/io/netty/buffer/ByteBufUtil.java index 081ad1332e..7b208cd8b6 100644 --- a/buffer/src/main/java/io/netty/buffer/ByteBufUtil.java +++ b/buffer/src/main/java/io/netty/buffer/ByteBufUtil.java @@ -42,10 +42,10 @@ import java.util.Arrays; import java.util.Locale; import static io.netty.util.internal.MathUtil.isOutOfBounds; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; import static io.netty.util.internal.StringUtil.NEWLINE; import static io.netty.util.internal.StringUtil.isSurrogate; +import static java.util.Objects.requireNonNull; /** * A collection of utility methods that is related with handling {@link ByteBuf}, @@ -884,7 +884,7 @@ public final class ByteBufUtil { + length + ") <= srcLen(" + src.length() + ')'); } - checkNotNull(dst, "dst").setBytes(dstIdx, src.array(), srcIdx + src.arrayOffset(), length); + requireNonNull(dst, "dst").setBytes(dstIdx, src.array(), srcIdx + src.arrayOffset(), length); } /** @@ -901,7 +901,7 @@ public final class ByteBufUtil { + length + ") <= srcLen(" + src.length() + ')'); } - checkNotNull(dst, "dst").writeBytes(src.array(), srcIdx + src.arrayOffset(), length); + requireNonNull(dst, "dst").writeBytes(src.array(), srcIdx + src.arrayOffset(), length); } /** @@ -1217,8 +1217,8 @@ public final class ByteBufUtil { * @throws IndexOutOfBoundsException if {@code index} + {@code length} is greater than {@code buf.readableBytes} */ public static boolean isText(ByteBuf buf, int index, int length, Charset charset) { - checkNotNull(buf, "buf"); - checkNotNull(charset, "charset"); + requireNonNull(buf, "buf"); + requireNonNull(charset, "charset"); final int maxIndex = buf.readerIndex() + buf.readableBytes(); if (index < 0 || length < 0 || index > maxIndex - length) { throw new IndexOutOfBoundsException("index: " + index + " length: " + length); diff --git a/buffer/src/main/java/io/netty/buffer/CompositeByteBuf.java b/buffer/src/main/java/io/netty/buffer/CompositeByteBuf.java index ff05f7ffad..c49cb404fb 100644 --- a/buffer/src/main/java/io/netty/buffer/CompositeByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/CompositeByteBuf.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.ByteProcessor; import io.netty.util.IllegalReferenceCountException; import io.netty.util.ReferenceCountUtil; @@ -38,7 +40,6 @@ import java.util.Iterator; import java.util.List; import java.util.NoSuchElementException; -import static io.netty.util.internal.ObjectUtil.checkNotNull; /** * A virtual buffer which shows multiple buffers as a single merged buffer. It is recommended to use @@ -61,9 +62,7 @@ public class CompositeByteBuf extends AbstractReferenceCountedByteBuf implements private CompositeByteBuf(ByteBufAllocator alloc, boolean direct, int maxNumComponents, int initSize) { super(AbstractByteBufAllocator.DEFAULT_MAX_CAPACITY); - if (alloc == null) { - throw new NullPointerException("alloc"); - } + requireNonNull(alloc, "alloc"); if (maxNumComponents < 1) { throw new IllegalArgumentException( "maxNumComponents: " + maxNumComponents + " (expected: >= 1)"); @@ -232,7 +231,7 @@ public class CompositeByteBuf extends AbstractReferenceCountedByteBuf implements * ownership of all {@link ByteBuf} objects is transferred to this {@link CompositeByteBuf}. */ public CompositeByteBuf addComponents(boolean increaseWriterIndex, ByteBuf... buffers) { - checkNotNull(buffers, "buffers"); + requireNonNull(buffers, "buffers"); addComponents0(increaseWriterIndex, componentCount, buffers, 0); consolidateIfNeeded(); return this; @@ -261,7 +260,7 @@ public class CompositeByteBuf extends AbstractReferenceCountedByteBuf implements * {@link CompositeByteBuf}. */ public CompositeByteBuf addComponent(boolean increaseWriterIndex, int cIndex, ByteBuf buffer) { - checkNotNull(buffer, "buffer"); + requireNonNull(buffer, "buffer"); addComponent0(increaseWriterIndex, cIndex, buffer); consolidateIfNeeded(); return this; @@ -333,7 +332,7 @@ public class CompositeByteBuf extends AbstractReferenceCountedByteBuf implements * ownership of all {@link ByteBuf} objects is transferred to this {@link CompositeByteBuf}. */ public CompositeByteBuf addComponents(int cIndex, ByteBuf... buffers) { - checkNotNull(buffers, "buffers"); + requireNonNull(buffers, "buffers"); addComponents0(false, cIndex, buffers, 0); consolidateIfNeeded(); return this; @@ -422,7 +421,7 @@ public class CompositeByteBuf extends AbstractReferenceCountedByteBuf implements // If buffers also implements ByteBuf (e.g. CompositeByteBuf), it has to go to addComponent(ByteBuf). return addComponent(increaseIndex, cIndex, (ByteBuf) buffers); } - checkNotNull(buffers, "buffers"); + requireNonNull(buffers, "buffers"); Iterator it = buffers.iterator(); try { checkComponentIndex(cIndex); diff --git a/buffer/src/main/java/io/netty/buffer/DefaultByteBufHolder.java b/buffer/src/main/java/io/netty/buffer/DefaultByteBufHolder.java index 8198eaec94..5c7707b9bf 100644 --- a/buffer/src/main/java/io/netty/buffer/DefaultByteBufHolder.java +++ b/buffer/src/main/java/io/netty/buffer/DefaultByteBufHolder.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.IllegalReferenceCountException; import io.netty.util.internal.StringUtil; @@ -27,9 +29,7 @@ public class DefaultByteBufHolder implements ByteBufHolder { private final ByteBuf data; public DefaultByteBufHolder(ByteBuf data) { - if (data == null) { - throw new NullPointerException("data"); - } + requireNonNull(data, "data"); this.data = data; } diff --git a/buffer/src/main/java/io/netty/buffer/EmptyByteBuf.java b/buffer/src/main/java/io/netty/buffer/EmptyByteBuf.java index c2c7dad057..afbb727e74 100644 --- a/buffer/src/main/java/io/netty/buffer/EmptyByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/EmptyByteBuf.java @@ -17,6 +17,7 @@ package io.netty.buffer; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import io.netty.util.ByteProcessor; import io.netty.util.internal.EmptyArrays; @@ -64,9 +65,7 @@ public final class EmptyByteBuf extends ByteBuf { } private EmptyByteBuf(ByteBufAllocator alloc, ByteOrder order) { - if (alloc == null) { - throw new NullPointerException("alloc"); - } + requireNonNull(alloc, "alloc"); this.alloc = alloc; this.order = order; @@ -120,9 +119,7 @@ public final class EmptyByteBuf extends ByteBuf { @Override public ByteBuf order(ByteOrder endianness) { - if (endianness == null) { - throw new NullPointerException("endianness"); - } + requireNonNull(endianness, "endianness"); if (endianness == order()) { return this; } diff --git a/buffer/src/main/java/io/netty/buffer/ReadOnlyByteBufferBuf.java b/buffer/src/main/java/io/netty/buffer/ReadOnlyByteBufferBuf.java index c7cda05fd9..62271040c1 100644 --- a/buffer/src/main/java/io/netty/buffer/ReadOnlyByteBufferBuf.java +++ b/buffer/src/main/java/io/netty/buffer/ReadOnlyByteBufferBuf.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import java.io.IOException; @@ -27,7 +29,6 @@ import java.nio.channels.FileChannel; import java.nio.channels.GatheringByteChannel; import java.nio.channels.ScatteringByteChannel; - /** * Read-only ByteBuf which wraps a read-only ByteBuffer. */ @@ -209,9 +210,7 @@ class ReadOnlyByteBufferBuf extends AbstractReferenceCountedByteBuf { @Override public ByteBuf getBytes(int index, ByteBuffer dst) { checkIndex(index); - if (dst == null) { - throw new NullPointerException("dst"); - } + requireNonNull(dst, "dst"); int bytesToCopy = Math.min(capacity() - index, dst.remaining()); ByteBuffer tmpBuf = internalNioBuffer(); diff --git a/buffer/src/main/java/io/netty/buffer/ReadOnlyUnsafeDirectByteBuf.java b/buffer/src/main/java/io/netty/buffer/ReadOnlyUnsafeDirectByteBuf.java index 316760eca7..4be9919688 100644 --- a/buffer/src/main/java/io/netty/buffer/ReadOnlyUnsafeDirectByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/ReadOnlyUnsafeDirectByteBuf.java @@ -16,10 +16,12 @@ package io.netty.buffer; -import io.netty.util.internal.PlatformDependent; +import static java.util.Objects.requireNonNull; import java.nio.ByteBuffer; +import io.netty.util.internal.PlatformDependent; + /** * Read-only ByteBuf which wraps a read-only direct ByteBuffer and use unsafe for best performance. @@ -62,9 +64,7 @@ final class ReadOnlyUnsafeDirectByteBuf extends ReadOnlyByteBufferBuf { @Override public ByteBuf getBytes(int index, ByteBuf dst, int dstIndex, int length) { checkIndex(index, length); - if (dst == null) { - throw new NullPointerException("dst"); - } + requireNonNull(dst, "dst"); if (dstIndex < 0 || dstIndex > dst.capacity() - length) { throw new IndexOutOfBoundsException("dstIndex: " + dstIndex); } @@ -82,9 +82,7 @@ final class ReadOnlyUnsafeDirectByteBuf extends ReadOnlyByteBufferBuf { @Override public ByteBuf getBytes(int index, byte[] dst, int dstIndex, int length) { checkIndex(index, length); - if (dst == null) { - throw new NullPointerException("dst"); - } + requireNonNull(dst, "dst"); if (dstIndex < 0 || dstIndex > dst.length - length) { throw new IndexOutOfBoundsException(String.format( "dstIndex: %d, length: %d (expected: range(0, %d))", dstIndex, length, dst.length)); @@ -99,9 +97,7 @@ final class ReadOnlyUnsafeDirectByteBuf extends ReadOnlyByteBufferBuf { @Override public ByteBuf getBytes(int index, ByteBuffer dst) { checkIndex(index); - if (dst == null) { - throw new NullPointerException("dst"); - } + requireNonNull(dst, "dst"); int bytesToCopy = Math.min(capacity() - index, dst.remaining()); ByteBuffer tmpBuf = internalNioBuffer(); diff --git a/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareByteBuf.java b/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareByteBuf.java index e07171258a..719248952d 100644 --- a/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareByteBuf.java @@ -16,9 +16,10 @@ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.ResourceLeakDetector; import io.netty.util.ResourceLeakTracker; -import io.netty.util.internal.ObjectUtil; import java.nio.ByteOrder; @@ -34,8 +35,8 @@ class SimpleLeakAwareByteBuf extends WrappedByteBuf { SimpleLeakAwareByteBuf(ByteBuf wrapped, ByteBuf trackedByteBuf, ResourceLeakTracker leak) { super(wrapped); - this.trackedByteBuf = ObjectUtil.checkNotNull(trackedByteBuf, "trackedByteBuf"); - this.leak = ObjectUtil.checkNotNull(leak, "leak"); + this.trackedByteBuf = requireNonNull(trackedByteBuf, "trackedByteBuf"); + this.leak = requireNonNull(leak, "leak"); } SimpleLeakAwareByteBuf(ByteBuf wrapped, ResourceLeakTracker leak) { diff --git a/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareCompositeByteBuf.java b/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareCompositeByteBuf.java index d96f35c0c5..cb29682176 100644 --- a/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareCompositeByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/SimpleLeakAwareCompositeByteBuf.java @@ -15,9 +15,9 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; import io.netty.util.ResourceLeakTracker; -import io.netty.util.internal.ObjectUtil; import java.nio.ByteOrder; @@ -27,7 +27,7 @@ class SimpleLeakAwareCompositeByteBuf extends WrappedCompositeByteBuf { SimpleLeakAwareCompositeByteBuf(CompositeByteBuf wrapped, ResourceLeakTracker leak) { super(wrapped); - this.leak = ObjectUtil.checkNotNull(leak, "leak"); + this.leak = requireNonNull(leak, "leak"); } @Override diff --git a/buffer/src/main/java/io/netty/buffer/SwappedByteBuf.java b/buffer/src/main/java/io/netty/buffer/SwappedByteBuf.java index 8ae2fb3398..df740075a0 100644 --- a/buffer/src/main/java/io/netty/buffer/SwappedByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/SwappedByteBuf.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.ByteProcessor; import java.io.IOException; @@ -40,9 +42,7 @@ public class SwappedByteBuf extends ByteBuf { private final ByteOrder order; public SwappedByteBuf(ByteBuf buf) { - if (buf == null) { - throw new NullPointerException("buf"); - } + requireNonNull(buf, "buf"); this.buf = buf; if (buf.order() == ByteOrder.BIG_ENDIAN) { order = ByteOrder.LITTLE_ENDIAN; @@ -58,9 +58,7 @@ public class SwappedByteBuf extends ByteBuf { @Override public ByteBuf order(ByteOrder endianness) { - if (endianness == null) { - throw new NullPointerException("endianness"); - } + requireNonNull(endianness, "endianness"); if (endianness == order) { return this; } diff --git a/buffer/src/main/java/io/netty/buffer/Unpooled.java b/buffer/src/main/java/io/netty/buffer/Unpooled.java index d7df192885..491991d189 100644 --- a/buffer/src/main/java/io/netty/buffer/Unpooled.java +++ b/buffer/src/main/java/io/netty/buffer/Unpooled.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.CompositeByteBuf.ByteWrapper; import io.netty.util.internal.PlatformDependent; @@ -575,9 +577,7 @@ public final class Unpooled { * {@code 0} and the length of the encoded string respectively. */ public static ByteBuf copiedBuffer(CharSequence string, Charset charset) { - if (string == null) { - throw new NullPointerException("string"); - } + requireNonNull(string, "string"); if (string instanceof CharBuffer) { return copiedBuffer((CharBuffer) string, charset); @@ -594,9 +594,7 @@ public final class Unpooled { */ public static ByteBuf copiedBuffer( CharSequence string, int offset, int length, Charset charset) { - if (string == null) { - throw new NullPointerException("string"); - } + requireNonNull(string, "string"); if (length == 0) { return EMPTY_BUFFER; } @@ -626,9 +624,7 @@ public final class Unpooled { * {@code 0} and the length of the encoded string respectively. */ public static ByteBuf copiedBuffer(char[] array, Charset charset) { - if (array == null) { - throw new NullPointerException("array"); - } + requireNonNull(array, "array"); return copiedBuffer(array, 0, array.length, charset); } @@ -639,9 +635,7 @@ public final class Unpooled { * {@code 0} and the length of the encoded string respectively. */ public static ByteBuf copiedBuffer(char[] array, int offset, int length, Charset charset) { - if (array == null) { - throw new NullPointerException("array"); - } + requireNonNull(array, "array"); if (length == 0) { return EMPTY_BUFFER; } diff --git a/buffer/src/main/java/io/netty/buffer/UnpooledDirectByteBuf.java b/buffer/src/main/java/io/netty/buffer/UnpooledDirectByteBuf.java index f64cd2587f..4fe179872a 100644 --- a/buffer/src/main/java/io/netty/buffer/UnpooledDirectByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/UnpooledDirectByteBuf.java @@ -16,6 +16,7 @@ package io.netty.buffer; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import io.netty.util.internal.PlatformDependent; @@ -51,9 +52,7 @@ public class UnpooledDirectByteBuf extends AbstractReferenceCountedByteBuf { */ public UnpooledDirectByteBuf(ByteBufAllocator alloc, int initialCapacity, int maxCapacity) { super(maxCapacity); - if (alloc == null) { - throw new NullPointerException("alloc"); - } + requireNonNull(alloc, "alloc"); checkPositiveOrZero(initialCapacity, "initialCapacity"); checkPositiveOrZero(maxCapacity, "maxCapacity"); if (initialCapacity > maxCapacity) { @@ -72,12 +71,8 @@ public class UnpooledDirectByteBuf extends AbstractReferenceCountedByteBuf { */ protected UnpooledDirectByteBuf(ByteBufAllocator alloc, ByteBuffer initialBuffer, int maxCapacity) { super(maxCapacity); - if (alloc == null) { - throw new NullPointerException("alloc"); - } - if (initialBuffer == null) { - throw new NullPointerException("initialBuffer"); - } + requireNonNull(alloc, "alloc"); + requireNonNull(initialBuffer, "initialBuffer"); if (!initialBuffer.isDirect()) { throw new IllegalArgumentException("initialBuffer is not a direct buffer."); } diff --git a/buffer/src/main/java/io/netty/buffer/UnpooledHeapByteBuf.java b/buffer/src/main/java/io/netty/buffer/UnpooledHeapByteBuf.java index f37ceb0559..4d65522de8 100644 --- a/buffer/src/main/java/io/netty/buffer/UnpooledHeapByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/UnpooledHeapByteBuf.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.EmptyArrays; import io.netty.util.internal.PlatformDependent; @@ -28,8 +30,6 @@ import java.nio.channels.FileChannel; import java.nio.channels.GatheringByteChannel; import java.nio.channels.ScatteringByteChannel; -import static io.netty.util.internal.ObjectUtil.checkNotNull; - /** * Big endian Java heap buffer implementation. It is recommended to use * {@link UnpooledByteBufAllocator#heapBuffer(int, int)}, {@link Unpooled#buffer(int)} and @@ -50,7 +50,7 @@ public class UnpooledHeapByteBuf extends AbstractReferenceCountedByteBuf { public UnpooledHeapByteBuf(ByteBufAllocator alloc, int initialCapacity, int maxCapacity) { super(maxCapacity); - checkNotNull(alloc, "alloc"); + requireNonNull(alloc, "alloc"); if (initialCapacity > maxCapacity) { throw new IllegalArgumentException(String.format( @@ -71,8 +71,8 @@ public class UnpooledHeapByteBuf extends AbstractReferenceCountedByteBuf { protected UnpooledHeapByteBuf(ByteBufAllocator alloc, byte[] initialArray, int maxCapacity) { super(maxCapacity); - checkNotNull(alloc, "alloc"); - checkNotNull(initialArray, "initialArray"); + requireNonNull(alloc, "alloc"); + requireNonNull(initialArray, "initialArray"); if (initialArray.length > maxCapacity) { throw new IllegalArgumentException(String.format( diff --git a/buffer/src/main/java/io/netty/buffer/UnpooledUnsafeDirectByteBuf.java b/buffer/src/main/java/io/netty/buffer/UnpooledUnsafeDirectByteBuf.java index 3bccd08a08..1d704b91a7 100644 --- a/buffer/src/main/java/io/netty/buffer/UnpooledUnsafeDirectByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/UnpooledUnsafeDirectByteBuf.java @@ -16,6 +16,7 @@ package io.netty.buffer; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import io.netty.util.internal.PlatformDependent; @@ -52,9 +53,7 @@ public class UnpooledUnsafeDirectByteBuf extends AbstractReferenceCountedByteBuf */ public UnpooledUnsafeDirectByteBuf(ByteBufAllocator alloc, int initialCapacity, int maxCapacity) { super(maxCapacity); - if (alloc == null) { - throw new NullPointerException("alloc"); - } + requireNonNull(alloc, "alloc"); checkPositiveOrZero(initialCapacity, "initialCapacity"); checkPositiveOrZero(maxCapacity, "maxCapacity"); if (initialCapacity > maxCapacity) { @@ -86,12 +85,8 @@ public class UnpooledUnsafeDirectByteBuf extends AbstractReferenceCountedByteBuf UnpooledUnsafeDirectByteBuf(ByteBufAllocator alloc, ByteBuffer initialBuffer, int maxCapacity, boolean doFree) { super(maxCapacity); - if (alloc == null) { - throw new NullPointerException("alloc"); - } - if (initialBuffer == null) { - throw new NullPointerException("initialBuffer"); - } + requireNonNull(alloc, "alloc"); + requireNonNull(initialBuffer, "initialBuffer"); if (!initialBuffer.isDirect()) { throw new IllegalArgumentException("initialBuffer is not a direct buffer."); } diff --git a/buffer/src/main/java/io/netty/buffer/UnreleasableByteBuf.java b/buffer/src/main/java/io/netty/buffer/UnreleasableByteBuf.java index ba06103ff4..38dddb6741 100644 --- a/buffer/src/main/java/io/netty/buffer/UnreleasableByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/UnreleasableByteBuf.java @@ -15,6 +15,8 @@ */ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import java.nio.ByteOrder; /** @@ -31,9 +33,7 @@ final class UnreleasableByteBuf extends WrappedByteBuf { @Override public ByteBuf order(ByteOrder endianness) { - if (endianness == null) { - throw new NullPointerException("endianness"); - } + requireNonNull(endianness, "endianness"); if (endianness == order()) { return this; } diff --git a/buffer/src/main/java/io/netty/buffer/UnsafeByteBufUtil.java b/buffer/src/main/java/io/netty/buffer/UnsafeByteBufUtil.java index 05918a8ebb..5cf27dceb9 100644 --- a/buffer/src/main/java/io/netty/buffer/UnsafeByteBufUtil.java +++ b/buffer/src/main/java/io/netty/buffer/UnsafeByteBufUtil.java @@ -25,8 +25,8 @@ import java.nio.ByteOrder; import java.nio.ReadOnlyBufferException; import static io.netty.util.internal.MathUtil.isOutOfBounds; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.PlatformDependent.BIG_ENDIAN_NATIVE_ORDER; +import static java.util.Objects.requireNonNull; /** * All operations get and set as {@link ByteOrder#BIG_ENDIAN}. @@ -463,7 +463,7 @@ final class UnsafeByteBufUtil { static void getBytes(AbstractByteBuf buf, long addr, int index, ByteBuf dst, int dstIndex, int length) { buf.checkIndex(index, length); - checkNotNull(dst, "dst"); + requireNonNull(dst, "dst"); if (isOutOfBounds(dstIndex, length, dst.capacity())) { throw new IndexOutOfBoundsException("dstIndex: " + dstIndex); } @@ -479,7 +479,7 @@ final class UnsafeByteBufUtil { static void getBytes(AbstractByteBuf buf, long addr, int index, byte[] dst, int dstIndex, int length) { buf.checkIndex(index, length); - checkNotNull(dst, "dst"); + requireNonNull(dst, "dst"); if (isOutOfBounds(dstIndex, length, dst.length)) { throw new IndexOutOfBoundsException("dstIndex: " + dstIndex); } @@ -514,7 +514,7 @@ final class UnsafeByteBufUtil { static void setBytes(AbstractByteBuf buf, long addr, int index, ByteBuf src, int srcIndex, int length) { buf.checkIndex(index, length); - checkNotNull(src, "src"); + requireNonNull(src, "src"); if (isOutOfBounds(srcIndex, length, src.capacity())) { throw new IndexOutOfBoundsException("srcIndex: " + srcIndex); } diff --git a/buffer/src/main/java/io/netty/buffer/WrappedByteBuf.java b/buffer/src/main/java/io/netty/buffer/WrappedByteBuf.java index b81854888a..6efe49dfe3 100644 --- a/buffer/src/main/java/io/netty/buffer/WrappedByteBuf.java +++ b/buffer/src/main/java/io/netty/buffer/WrappedByteBuf.java @@ -16,6 +16,8 @@ package io.netty.buffer; +import static java.util.Objects.requireNonNull; + import io.netty.util.ByteProcessor; import io.netty.util.internal.StringUtil; @@ -41,9 +43,7 @@ class WrappedByteBuf extends ByteBuf { protected final ByteBuf buf; protected WrappedByteBuf(ByteBuf buf) { - if (buf == null) { - throw new NullPointerException("buf"); - } + requireNonNull(buf, "buf"); this.buf = buf; } diff --git a/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsMessage.java b/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsMessage.java index f7f2f12f8a..0fdeaa7464 100644 --- a/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsMessage.java +++ b/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsMessage.java @@ -27,7 +27,7 @@ import io.netty.util.internal.UnstableApi; import java.util.ArrayList; import java.util.List; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A skeletal implementation of {@link DnsMessage}. @@ -87,7 +87,7 @@ public abstract class AbstractDnsMessage extends AbstractReferenceCounted implem @Override public DnsMessage setOpCode(DnsOpCode opCode) { - this.opCode = checkNotNull(opCode, "opCode"); + this.opCode = requireNonNull(opCode, "opCode"); return this; } @@ -452,11 +452,11 @@ public abstract class AbstractDnsMessage extends AbstractReferenceCounted implem } private static int sectionOrdinal(DnsSection section) { - return checkNotNull(section, "section").ordinal(); + return requireNonNull(section, "section").ordinal(); } private static DnsRecord checkQuestion(int section, DnsRecord record) { - if (section == SECTION_QUESTION && !(checkNotNull(record, "record") instanceof DnsQuestion)) { + if (section == SECTION_QUESTION && !(requireNonNull(record, "record") instanceof DnsQuestion)) { throw new IllegalArgumentException( "record: " + record + " (expected: " + StringUtil.simpleClassName(DnsQuestion.class) + ')'); } diff --git a/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsRecord.java b/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsRecord.java index 28b92c27f9..b1faf41c6a 100644 --- a/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsRecord.java +++ b/codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsRecord.java @@ -20,7 +20,7 @@ import io.netty.util.internal.UnstableApi; import java.net.IDN; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A skeletal implementation of {@link DnsRecord}. @@ -69,8 +69,8 @@ public abstract class AbstractDnsRecord implements DnsRecord { // See: // - https://github.com/netty/netty/issues/4937 // - https://github.com/netty/netty/issues/4935 - this.name = appendTrailingDot(IDN.toASCII(checkNotNull(name, "name"))); - this.type = checkNotNull(type, "type"); + this.name = appendTrailingDot(IDN.toASCII(requireNonNull(name, "name"))); + this.type = requireNonNull(type, "type"); this.dnsClass = (short) dnsClass; this.timeToLive = timeToLive; } diff --git a/codec-dns/src/main/java/io/netty/handler/codec/dns/DatagramDnsQueryDecoder.java b/codec-dns/src/main/java/io/netty/handler/codec/dns/DatagramDnsQueryDecoder.java index 660368317b..760c57cc66 100644 --- a/codec-dns/src/main/java/io/netty/handler/codec/dns/DatagramDnsQueryDecoder.java +++ b/codec-dns/src/main/java/io/netty/handler/codec/dns/DatagramDnsQueryDecoder.java @@ -25,7 +25,7 @@ import io.netty.util.internal.UnstableApi; import java.util.List; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Decodes a {@link DatagramPacket} into a {@link DatagramDnsQuery}. @@ -47,7 +47,7 @@ public class DatagramDnsQueryDecoder extends MessageToMessageDecoderRFC2929. @@ -80,7 +80,7 @@ public class DnsOpCode implements Comparable { public DnsOpCode(int byteValue, String name) { this.byteValue = (byte) byteValue; - this.name = checkNotNull(name, "name"); + this.name = requireNonNull(name, "name"); } public byte byteValue() { diff --git a/codec-dns/src/main/java/io/netty/handler/codec/dns/DnsResponseCode.java b/codec-dns/src/main/java/io/netty/handler/codec/dns/DnsResponseCode.java index abc9b0d4ea..269ca98c2e 100644 --- a/codec-dns/src/main/java/io/netty/handler/codec/dns/DnsResponseCode.java +++ b/codec-dns/src/main/java/io/netty/handler/codec/dns/DnsResponseCode.java @@ -17,7 +17,7 @@ package io.netty.handler.codec.dns; import io.netty.util.internal.UnstableApi; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The DNS {@code RCODE}, as defined in RFC2929. @@ -173,7 +173,7 @@ public class DnsResponseCode implements Comparable { } this.code = code; - this.name = checkNotNull(name, "name"); + this.name = requireNonNull(name, "name"); } /** diff --git a/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyMessage.java b/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyMessage.java index 9540e538ca..67ab2eb71b 100644 --- a/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyMessage.java +++ b/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyMessage.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.haproxy; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.handler.codec.haproxy.HAProxyProxiedProtocol.AddressFamily; import io.netty.util.ByteProcessor; @@ -89,10 +91,7 @@ public final class HAProxyMessage { HAProxyProtocolVersion protocolVersion, HAProxyCommand command, HAProxyProxiedProtocol proxiedProtocol, String sourceAddress, String destinationAddress, int sourcePort, int destinationPort, List tlvs) { - - if (proxiedProtocol == null) { - throw new NullPointerException("proxiedProtocol"); - } + requireNonNull(proxiedProtocol, "proxiedProtocol"); AddressFamily addrFamily = proxiedProtocol.addressFamily(); checkAddress(sourceAddress, addrFamily); @@ -118,9 +117,7 @@ public final class HAProxyMessage { * @throws HAProxyProtocolException if any portion of the header is invalid */ static HAProxyMessage decodeHeader(ByteBuf header) { - if (header == null) { - throw new NullPointerException("header"); - } + requireNonNull(header, "header"); if (header.readableBytes() < 16) { throw new HAProxyProtocolException( @@ -416,9 +413,7 @@ public final class HAProxyMessage { * @throws HAProxyProtocolException if the address is invalid */ private static void checkAddress(String address, AddressFamily addrFamily) { - if (addrFamily == null) { - throw new NullPointerException("addrFamily"); - } + requireNonNull(addrFamily, "addrFamily"); switch (addrFamily) { case AF_UNSPEC: @@ -430,9 +425,7 @@ public final class HAProxyMessage { return; } - if (address == null) { - throw new NullPointerException("address"); - } + requireNonNull(address, "address"); switch (addrFamily) { case AF_IPv4: diff --git a/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyTLV.java b/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyTLV.java index 380c6aa058..3242c3bcf4 100644 --- a/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyTLV.java +++ b/codec-haproxy/src/main/java/io/netty/handler/codec/haproxy/HAProxyTLV.java @@ -19,7 +19,7 @@ package io.netty.handler.codec.haproxy; import io.netty.buffer.ByteBuf; import io.netty.buffer.DefaultByteBufHolder; -import static io.netty.util.internal.ObjectUtil.*; +import static java.util.Objects.requireNonNull; /** * A Type-Length Value (TLV vector) that can be added to the PROXY protocol @@ -85,7 +85,7 @@ public class HAProxyTLV extends DefaultByteBufHolder { */ HAProxyTLV(final Type type, final byte typeByteValue, final ByteBuf content) { super(content); - checkNotNull(type, "type"); + requireNonNull(type, "type"); this.type = type; this.typeByteValue = typeByteValue; diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpRequest.java b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpRequest.java index 117e6dbf64..e7099e4d59 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpRequest.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpRequest.java @@ -18,7 +18,7 @@ package io.netty.handler.codec.http; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.util.IllegalReferenceCountException; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Default implementation of {@link FullHttpRequest}. @@ -47,15 +47,15 @@ public class DefaultFullHttpRequest extends DefaultHttpRequest implements FullHt public DefaultFullHttpRequest(HttpVersion httpVersion, HttpMethod method, String uri, ByteBuf content, boolean validateHeaders) { super(httpVersion, method, uri, validateHeaders); - this.content = checkNotNull(content, "content"); + this.content = requireNonNull(content, "content"); trailingHeader = new DefaultHttpHeaders(validateHeaders); } public DefaultFullHttpRequest(HttpVersion httpVersion, HttpMethod method, String uri, ByteBuf content, HttpHeaders headers, HttpHeaders trailingHeader) { super(httpVersion, method, uri, headers); - this.content = checkNotNull(content, "content"); - this.trailingHeader = checkNotNull(trailingHeader, "trailingHeader"); + this.content = requireNonNull(content, "content"); + this.trailingHeader = requireNonNull(trailingHeader, "trailingHeader"); } @Override diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpResponse.java b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpResponse.java index 012b996a24..13bb1e2da3 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpResponse.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultFullHttpResponse.java @@ -19,7 +19,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.util.IllegalReferenceCountException; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Default implementation of a {@link FullHttpResponse}. @@ -59,7 +59,7 @@ public class DefaultFullHttpResponse extends DefaultHttpResponse implements Full public DefaultFullHttpResponse(HttpVersion version, HttpResponseStatus status, ByteBuf content, boolean validateHeaders, boolean singleFieldHeaders) { super(version, status, validateHeaders, singleFieldHeaders); - this.content = checkNotNull(content, "content"); + this.content = requireNonNull(content, "content"); this.trailingHeaders = singleFieldHeaders ? new CombinedHttpHeaders(validateHeaders) : new DefaultHttpHeaders(validateHeaders); } @@ -67,8 +67,8 @@ public class DefaultFullHttpResponse extends DefaultHttpResponse implements Full public DefaultFullHttpResponse(HttpVersion version, HttpResponseStatus status, ByteBuf content, HttpHeaders headers, HttpHeaders trailingHeaders) { super(version, status, headers); - this.content = checkNotNull(content, "content"); - this.trailingHeaders = checkNotNull(trailingHeaders, "trailingHeaders"); + this.content = requireNonNull(content, "content"); + this.trailingHeaders = requireNonNull(trailingHeaders, "trailingHeaders"); } @Override diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpContent.java b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpContent.java index 48fad8eb1a..415a65ab56 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpContent.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpContent.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.internal.StringUtil; @@ -29,9 +31,7 @@ public class DefaultHttpContent extends DefaultHttpObject implements HttpContent * Creates a new instance with the specified chunk content. */ public DefaultHttpContent(ByteBuf content) { - if (content == null) { - throw new NullPointerException("content"); - } + requireNonNull(content, "content"); this.content = content; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpMessage.java b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpMessage.java index 5a6a45a376..e27a16efb9 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpMessage.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpMessage.java @@ -15,7 +15,7 @@ */ package io.netty.handler.codec.http; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link HttpMessage} implementation. @@ -45,8 +45,8 @@ public abstract class DefaultHttpMessage extends DefaultHttpObject implements Ht * Creates a new instance. */ protected DefaultHttpMessage(final HttpVersion version, HttpHeaders headers) { - this.version = checkNotNull(version, "version"); - this.headers = checkNotNull(headers, "headers"); + this.version = requireNonNull(version, "version"); + this.headers = requireNonNull(headers, "headers"); } @Override @@ -89,9 +89,7 @@ public abstract class DefaultHttpMessage extends DefaultHttpObject implements Ht @Override public HttpMessage setProtocolVersion(HttpVersion version) { - if (version == null) { - throw new NullPointerException("version"); - } + requireNonNull(version, "version"); this.version = version; return this; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpObject.java b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpObject.java index c26ad39a7b..c4fe06cf8d 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpObject.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpObject.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; public class DefaultHttpObject implements HttpObject { @@ -39,9 +41,7 @@ public class DefaultHttpObject implements HttpObject { @Override public void setDecoderResult(DecoderResult decoderResult) { - if (decoderResult == null) { - throw new NullPointerException("decoderResult"); - } + requireNonNull(decoderResult, "decoderResult"); this.decoderResult = decoderResult; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpRequest.java b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpRequest.java index 84be3bb72c..24a9a6de08 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpRequest.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpRequest.java @@ -15,7 +15,7 @@ */ package io.netty.handler.codec.http; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link HttpRequest} implementation. @@ -46,8 +46,8 @@ public class DefaultHttpRequest extends DefaultHttpMessage implements HttpReques */ public DefaultHttpRequest(HttpVersion httpVersion, HttpMethod method, String uri, boolean validateHeaders) { super(httpVersion, validateHeaders, false); - this.method = checkNotNull(method, "method"); - this.uri = checkNotNull(uri, "uri"); + this.method = requireNonNull(method, "method"); + this.uri = requireNonNull(uri, "uri"); } /** @@ -60,8 +60,8 @@ public class DefaultHttpRequest extends DefaultHttpMessage implements HttpReques */ public DefaultHttpRequest(HttpVersion httpVersion, HttpMethod method, String uri, HttpHeaders headers) { super(httpVersion, headers); - this.method = checkNotNull(method, "method"); - this.uri = checkNotNull(uri, "uri"); + this.method = requireNonNull(method, "method"); + this.uri = requireNonNull(uri, "uri"); } @Override @@ -88,18 +88,14 @@ public class DefaultHttpRequest extends DefaultHttpMessage implements HttpReques @Override public HttpRequest setMethod(HttpMethod method) { - if (method == null) { - throw new NullPointerException("method"); - } + requireNonNull(method, "method"); this.method = method; return this; } @Override public HttpRequest setUri(String uri) { - if (uri == null) { - throw new NullPointerException("uri"); - } + requireNonNull(uri, "uri"); this.uri = uri; return this; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpResponse.java b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpResponse.java index d5b7cf0b7b..ef659ca9e1 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpResponse.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/DefaultHttpResponse.java @@ -15,7 +15,7 @@ */ package io.netty.handler.codec.http; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link HttpResponse} implementation. @@ -60,7 +60,7 @@ public class DefaultHttpResponse extends DefaultHttpMessage implements HttpRespo public DefaultHttpResponse(HttpVersion version, HttpResponseStatus status, boolean validateHeaders, boolean singleFieldHeaders) { super(version, validateHeaders, singleFieldHeaders); - this.status = checkNotNull(status, "status"); + this.status = requireNonNull(status, "status"); } /** @@ -72,7 +72,7 @@ public class DefaultHttpResponse extends DefaultHttpMessage implements HttpRespo */ public DefaultHttpResponse(HttpVersion version, HttpResponseStatus status, HttpHeaders headers) { super(version, headers); - this.status = checkNotNull(status, "status"); + this.status = requireNonNull(status, "status"); } @Override @@ -88,9 +88,7 @@ public class DefaultHttpResponse extends DefaultHttpMessage implements HttpRespo @Override public HttpResponse setStatus(HttpResponseStatus status) { - if (status == null) { - throw new NullPointerException("status"); - } + requireNonNull(status, "status"); this.status = status; return this; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpClientUpgradeHandler.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpClientUpgradeHandler.java index d17cfc6c1d..b5a3e29a91 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpClientUpgradeHandler.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpClientUpgradeHandler.java @@ -27,6 +27,7 @@ import java.util.Set; import static io.netty.handler.codec.http.HttpResponseStatus.SWITCHING_PROTOCOLS; import static io.netty.util.ReferenceCountUtil.release; +import static java.util.Objects.requireNonNull; /** * Client-side handler for handling an HTTP upgrade handshake to another protocol. When the first @@ -115,12 +116,8 @@ public class HttpClientUpgradeHandler extends HttpObjectAggregator implements Ch public HttpClientUpgradeHandler(SourceCodec sourceCodec, UpgradeCodec upgradeCodec, int maxContentLength) { super(maxContentLength); - if (sourceCodec == null) { - throw new NullPointerException("sourceCodec"); - } - if (upgradeCodec == null) { - throw new NullPointerException("upgradeCodec"); - } + requireNonNull(sourceCodec, "sourceCodec"); + requireNonNull(upgradeCodec, "upgradeCodec"); this.sourceCodec = sourceCodec; this.upgradeCodec = upgradeCodec; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpContentEncoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpContentEncoder.java index 659ec4b474..a6ccf28af8 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpContentEncoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpContentEncoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufHolder; import io.netty.channel.ChannelHandlerContext; @@ -350,12 +352,8 @@ public abstract class HttpContentEncoder extends MessageToMessageCodec> * @return {@code this} */ public HttpHeaders add(HttpHeaders headers) { - if (headers == null) { - throw new NullPointerException("headers"); - } + requireNonNull(headers, "headers"); for (Map.Entry e: headers) { add(e.getKey(), e.getValue()); } @@ -1031,7 +1029,7 @@ public abstract class HttpHeaders implements Iterable> * @return {@code this} */ public HttpHeaders set(HttpHeaders headers) { - checkNotNull(headers, "headers"); + requireNonNull(headers, "headers"); clear(); @@ -1052,7 +1050,7 @@ public abstract class HttpHeaders implements Iterable> * @return {@code this} */ public HttpHeaders setAll(HttpHeaders headers) { - checkNotNull(headers, "headers"); + requireNonNull(headers, "headers"); if (headers.isEmpty()) { return this; diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpMethod.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpMethod.java index 500defc2a3..44791b79c0 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpMethod.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpMethod.java @@ -18,7 +18,7 @@ package io.netty.handler.codec.http; import io.netty.util.AsciiString; import static io.netty.util.internal.MathUtil.findNextPositivePowerOfTwo; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The request method of HTTP or its derived protocols, such as @@ -120,7 +120,7 @@ public class HttpMethod implements Comparable { * ICAP */ public HttpMethod(String name) { - name = checkNotNull(name, "name").trim(); + name = requireNonNull(name, "name").trim(); if (name.isEmpty()) { throw new IllegalArgumentException("empty name"); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpResponseStatus.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpResponseStatus.java index b7e2c10d45..b4f43249f9 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpResponseStatus.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpResponseStatus.java @@ -23,6 +23,7 @@ import io.netty.util.CharsetUtil; import static io.netty.handler.codec.http.HttpConstants.SP; import static io.netty.util.ByteProcessor.FIND_ASCII_SPACE; import static java.lang.Integer.parseInt; +import static java.util.Objects.requireNonNull; /** * The response code and its description of HTTP or its derived protocols, such as @@ -543,9 +544,7 @@ public class HttpResponseStatus implements Comparable { "code: " + code + " (expected: 0+)"); } - if (reasonPhrase == null) { - throw new NullPointerException("reasonPhrase"); - } + requireNonNull(reasonPhrase, "reasonPhrase"); for (int i = 0; i < reasonPhrase.length(); i ++) { char c = reasonPhrase.charAt(i); diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpServerUpgradeHandler.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpServerUpgradeHandler.java index a720661fd3..59513c02cc 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpServerUpgradeHandler.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpServerUpgradeHandler.java @@ -30,7 +30,7 @@ import java.util.List; import static io.netty.handler.codec.http.HttpResponseStatus.SWITCHING_PROTOCOLS; import static io.netty.handler.codec.http.HttpVersion.HTTP_1_1; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A server-side handler that receives HTTP requests and optionally performs a protocol switch if @@ -201,8 +201,8 @@ public class HttpServerUpgradeHandler extends HttpObjectAggregator { SourceCodec sourceCodec, UpgradeCodecFactory upgradeCodecFactory, int maxContentLength) { super(maxContentLength); - this.sourceCodec = checkNotNull(sourceCodec, "sourceCodec"); - this.upgradeCodecFactory = checkNotNull(upgradeCodecFactory, "upgradeCodecFactory"); + this.sourceCodec = requireNonNull(sourceCodec, "sourceCodec"); + this.upgradeCodecFactory = requireNonNull(upgradeCodecFactory, "upgradeCodecFactory"); } @Override diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpUtil.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpUtil.java index a668b8942a..3541774695 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpUtil.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpUtil.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http; +import static java.util.Objects.requireNonNull; + import java.net.InetSocketAddress; import java.net.URI; import java.nio.charset.Charset; @@ -455,9 +457,7 @@ public final class HttpUtil { * @throws NullPointerException in case if {@code contentTypeValue == null} */ public static CharSequence getCharsetAsSequence(CharSequence contentTypeValue) { - if (contentTypeValue == null) { - throw new NullPointerException("contentTypeValue"); - } + requireNonNull(contentTypeValue, "contentTypeValue"); int indexOfCharset = AsciiString.indexOfIgnoreCaseAscii(contentTypeValue, CHARSET_EQUALS, 0); if (indexOfCharset == AsciiString.INDEX_NOT_FOUND) { @@ -511,9 +511,7 @@ public final class HttpUtil { * @throws NullPointerException in case if {@code contentTypeValue == null} */ public static CharSequence getMimeType(CharSequence contentTypeValue) { - if (contentTypeValue == null) { - throw new NullPointerException("contentTypeValue"); - } + requireNonNull(contentTypeValue, "contentTypeValue"); int indexOfSemicolon = AsciiString.indexOfIgnoreCaseAscii(contentTypeValue, SEMICOLON, 0); if (indexOfSemicolon != AsciiString.INDEX_NOT_FOUND) { diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpVersion.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpVersion.java index a643f42458..2315206bbb 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpVersion.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpVersion.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.CharsetUtil; @@ -53,9 +55,7 @@ public class HttpVersion implements Comparable { * returned. */ public static HttpVersion valueOf(String text) { - if (text == null) { - throw new NullPointerException("text"); - } + requireNonNull(text, "text"); text = text.trim(); @@ -107,9 +107,7 @@ public class HttpVersion implements Comparable { * the {@code "Connection"} header is set to {@code "close"} explicitly. */ public HttpVersion(String text, boolean keepAliveDefault) { - if (text == null) { - throw new NullPointerException("text"); - } + requireNonNull(text, "text"); text = text.trim().toUpperCase(); if (text.isEmpty()) { @@ -149,9 +147,7 @@ public class HttpVersion implements Comparable { private HttpVersion( String protocolName, int majorVersion, int minorVersion, boolean keepAliveDefault, boolean bytes) { - if (protocolName == null) { - throw new NullPointerException("protocolName"); - } + requireNonNull(protocolName, "protocolName"); protocolName = protocolName.trim().toUpperCase(); if (protocolName.isEmpty()) { diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringDecoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringDecoder.java index fadb610adb..403f12b59b 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringDecoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringDecoder.java @@ -31,8 +31,9 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import static io.netty.util.internal.ObjectUtil.*; +import static io.netty.util.internal.ObjectUtil.checkPositive; import static io.netty.util.internal.StringUtil.*; +import static java.util.Objects.requireNonNull; /** * Splits an HTTP query string into a path string and key-value parameter pairs. @@ -109,8 +110,8 @@ public class QueryStringDecoder { * specified charset. */ public QueryStringDecoder(String uri, Charset charset, boolean hasPath, int maxParams) { - this.uri = checkNotNull(uri, "uri"); - this.charset = checkNotNull(charset, "charset"); + this.uri = requireNonNull(uri, "uri"); + this.charset = requireNonNull(charset, "charset"); this.maxParams = checkPositive(maxParams, "maxParams"); // `-1` means that path end index will be initialized lazily @@ -145,7 +146,7 @@ public class QueryStringDecoder { String rawQuery = uri.getRawQuery(); // Also take care of cut of things like "http://localhost" this.uri = rawQuery == null? rawPath : rawPath + '?' + rawQuery; - this.charset = checkNotNull(charset, "charset"); + this.charset = requireNonNull(charset, "charset"); this.maxParams = checkPositive(maxParams, "maxParams"); pathEndIdx = rawPath.length(); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringEncoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringEncoder.java index cb1de9fefd..1d192b91aa 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringEncoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/QueryStringEncoder.java @@ -15,7 +15,7 @@ */ package io.netty.handler.codec.http; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; import java.io.UnsupportedEncodingException; import java.net.URI; @@ -62,7 +62,7 @@ public class QueryStringEncoder { * Adds a parameter with the specified name and value to this encoder. */ public void addParam(String name, String value) { - ObjectUtil.checkNotNull(name, "name"); + requireNonNull(name, "name"); if (hasParams) { uriBuilder.append('&'); } else { diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieDecoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieDecoder.java index 74cace7385..91c6464786 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieDecoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieDecoder.java @@ -19,7 +19,7 @@ import io.netty.handler.codec.DateFormatter; import java.util.Date; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A RFC6265 compliant cookie decoder to be used client side. @@ -52,7 +52,7 @@ public final class ClientCookieDecoder extends CookieDecoder { * @return the decoded {@link Cookie} */ public Cookie decode(String header) { - final int headerLen = checkNotNull(header, "header").length(); + final int headerLen = requireNonNull(header, "header").length(); if (headerLen == 0) { return null; diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieEncoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieEncoder.java index 043e51ae4f..5c84f86156 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieEncoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ClientCookieEncoder.java @@ -20,7 +20,8 @@ import static io.netty.handler.codec.http.cookie.CookieUtil.addQuoted; import static io.netty.handler.codec.http.cookie.CookieUtil.stringBuilder; import static io.netty.handler.codec.http.cookie.CookieUtil.stripTrailingSeparator; import static io.netty.handler.codec.http.cookie.CookieUtil.stripTrailingSeparatorOrNull; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.http.HttpRequest; import io.netty.util.internal.InternalThreadLocalMap; @@ -83,7 +84,7 @@ public final class ClientCookieEncoder extends CookieEncoder { */ public String encode(Cookie cookie) { StringBuilder buf = stringBuilder(); - encode(buf, checkNotNull(cookie, "cookie")); + encode(buf, requireNonNull(cookie, "cookie")); return stripTrailingSeparator(buf); } @@ -118,7 +119,7 @@ public final class ClientCookieEncoder extends CookieEncoder { * @return a Rfc6265 style Cookie header value, null if no cookies are passed. */ public String encode(Cookie... cookies) { - if (checkNotNull(cookies, "cookies").length == 0) { + if (requireNonNull(cookies, "cookies").length == 0) { return null; } @@ -149,7 +150,7 @@ public final class ClientCookieEncoder extends CookieEncoder { * @return a Rfc6265 style Cookie header value, null if no cookies are passed. */ public String encode(Collection cookies) { - if (checkNotNull(cookies, "cookies").isEmpty()) { + if (requireNonNull(cookies, "cookies").isEmpty()) { return null; } @@ -179,7 +180,7 @@ public final class ClientCookieEncoder extends CookieEncoder { * @return a Rfc6265 style Cookie header value, null if no cookies are passed. */ public String encode(Iterable cookies) { - Iterator cookiesIt = checkNotNull(cookies, "cookies").iterator(); + Iterator cookiesIt = requireNonNull(cookies, "cookies").iterator(); if (!cookiesIt.hasNext()) { return null; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/DefaultCookie.java b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/DefaultCookie.java index a53c0a6ee7..7df07afcb6 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/DefaultCookie.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/DefaultCookie.java @@ -16,7 +16,7 @@ package io.netty.handler.codec.http.cookie; import static io.netty.handler.codec.http.cookie.CookieUtil.*; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link Cookie} implementation. @@ -36,7 +36,7 @@ public class DefaultCookie implements Cookie { * Creates a new cookie with the specified name and value. */ public DefaultCookie(String name, String value) { - name = checkNotNull(name, "name").trim(); + name = requireNonNull(name, "name").trim(); if (name.isEmpty()) { throw new IllegalArgumentException("empty name"); } @@ -56,7 +56,7 @@ public class DefaultCookie implements Cookie { @Override public void setValue(String value) { - this.value = checkNotNull(value, "value"); + this.value = requireNonNull(value, "value"); } @Override diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieDecoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieDecoder.java index 4ec93d8335..ccf8eceaa1 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieDecoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieDecoder.java @@ -15,7 +15,7 @@ */ package io.netty.handler.codec.http.cookie; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import java.util.Collections; import java.util.Set; @@ -62,7 +62,7 @@ public final class ServerCookieDecoder extends CookieDecoder { * @return the decoded {@link Cookie} */ public Set decode(String header) { - final int headerLen = checkNotNull(header, "header").length(); + final int headerLen = requireNonNull(header, "header").length(); if (headerLen == 0) { return Collections.emptySet(); diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieEncoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieEncoder.java index de130b7f3b..4c7d0b1ee5 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieEncoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/cookie/ServerCookieEncoder.java @@ -19,7 +19,7 @@ import static io.netty.handler.codec.http.cookie.CookieUtil.add; import static io.netty.handler.codec.http.cookie.CookieUtil.addQuoted; import static io.netty.handler.codec.http.cookie.CookieUtil.stringBuilder; import static io.netty.handler.codec.http.cookie.CookieUtil.stripTrailingSeparator; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import io.netty.handler.codec.DateFormatter; import io.netty.handler.codec.http.HttpConstants; @@ -88,7 +88,7 @@ public final class ServerCookieEncoder extends CookieEncoder { * @return a single Set-Cookie header value */ public String encode(Cookie cookie) { - final String name = checkNotNull(cookie, "cookie").name(); + final String name = requireNonNull(cookie, "cookie").name(); final String value = cookie.value() != null ? cookie.value() : ""; validateCookie(name, value); @@ -155,7 +155,7 @@ public final class ServerCookieEncoder extends CookieEncoder { * @return the corresponding bunch of Set-Cookie headers */ public List encode(Cookie... cookies) { - if (checkNotNull(cookies, "cookies").length == 0) { + if (requireNonNull(cookies, "cookies").length == 0) { return Collections.emptyList(); } @@ -179,7 +179,7 @@ public final class ServerCookieEncoder extends CookieEncoder { * @return the corresponding bunch of Set-Cookie headers */ public List encode(Collection cookies) { - if (checkNotNull(cookies, "cookies").isEmpty()) { + if (requireNonNull(cookies, "cookies").isEmpty()) { return Collections.emptyList(); } @@ -203,7 +203,7 @@ public final class ServerCookieEncoder extends CookieEncoder { * @return the corresponding bunch of Set-Cookie headers */ public List encode(Iterable cookies) { - Iterator cookiesIt = checkNotNull(cookies, "cookies").iterator(); + Iterator cookiesIt = requireNonNull(cookies, "cookies").iterator(); if (!cookiesIt.hasNext()) { return Collections.emptyList(); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/cors/CorsHandler.java b/codec-http/src/main/java/io/netty/handler/codec/http/cors/CorsHandler.java index f1e162f1ac..87642d3a6d 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/cors/CorsHandler.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/cors/CorsHandler.java @@ -38,7 +38,7 @@ import static io.netty.handler.codec.http.HttpResponseStatus.FORBIDDEN; import static io.netty.handler.codec.http.HttpResponseStatus.OK; import static io.netty.util.ReferenceCountUtil.release; import static io.netty.util.internal.ObjectUtil.checkNonEmpty; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Handles Cross Origin Resource Sharing (CORS) requests. @@ -61,7 +61,7 @@ public class CorsHandler extends ChannelDuplexHandler { * Creates a new instance with a single {@link CorsConfig}. */ public CorsHandler(final CorsConfig config) { - this(Collections.singletonList(checkNotNull(config, "config")), config.isShortCircuit()); + this(Collections.singletonList(requireNonNull(config, "config")), config.isShortCircuit()); } /** diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractDiskHttpData.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractDiskHttpData.java index 6e86b68630..c0b0c87344 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractDiskHttpData.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractDiskHttpData.java @@ -32,6 +32,7 @@ import java.nio.charset.Charset; import java.nio.file.Files; import static io.netty.buffer.Unpooled.*; +import static java.util.Objects.requireNonNull; /** * Abstract Disk HttpData implementation @@ -101,9 +102,7 @@ public abstract class AbstractDiskHttpData extends AbstractHttpData { @Override public void setContent(ByteBuf buffer) throws IOException { - if (buffer == null) { - throw new NullPointerException("buffer"); - } + requireNonNull(buffer, "buffer"); try { size = buffer.readableBytes(); checkSize(size); @@ -188,9 +187,7 @@ public abstract class AbstractDiskHttpData extends AbstractHttpData { fileChannel = null; setCompleted(); } else { - if (buffer == null) { - throw new NullPointerException("buffer"); - } + requireNonNull(buffer, "buffer"); } } @@ -208,9 +205,7 @@ public abstract class AbstractDiskHttpData extends AbstractHttpData { @Override public void setContent(InputStream inputStream) throws IOException { - if (inputStream == null) { - throw new NullPointerException("inputStream"); - } + requireNonNull(inputStream, "inputStream"); if (file != null) { delete(); } @@ -335,9 +330,7 @@ public abstract class AbstractDiskHttpData extends AbstractHttpData { @Override public boolean renameTo(File dest) throws IOException { - if (dest == null) { - throw new NullPointerException("dest"); - } + requireNonNull(dest, "dest"); if (file == null) { throw new IOException("No file defined so cannot be renamed"); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractHttpData.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractHttpData.java index 6657f5f527..b388616505 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractHttpData.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractHttpData.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.multipart; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelException; import io.netty.handler.codec.http.HttpConstants; @@ -40,9 +42,7 @@ public abstract class AbstractHttpData extends AbstractReferenceCounted implemen private long maxSize = DefaultHttpDataFactory.MAXSIZE; protected AbstractHttpData(String name, Charset charset, long size) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); name = REPLACE_PATTERN.matcher(name).replaceAll(" "); name = STRIP_PATTERN.matcher(name).replaceAll(""); @@ -96,9 +96,7 @@ public abstract class AbstractHttpData extends AbstractReferenceCounted implemen @Override public void setCharset(Charset charset) { - if (charset == null) { - throw new NullPointerException("charset"); - } + requireNonNull(charset, "charset"); this.charset = charset; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractMemoryHttpData.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractMemoryHttpData.java index 31aa9ce64b..d565a98ad9 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractMemoryHttpData.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractMemoryHttpData.java @@ -32,6 +32,7 @@ import static io.netty.buffer.Unpooled.EMPTY_BUFFER; import static io.netty.buffer.Unpooled.buffer; import static io.netty.buffer.Unpooled.compositeBuffer; import static io.netty.buffer.Unpooled.wrappedBuffer; +import static java.util.Objects.requireNonNull; /** * Abstract Memory HttpData implementation @@ -47,9 +48,7 @@ public abstract class AbstractMemoryHttpData extends AbstractHttpData { @Override public void setContent(ByteBuf buffer) throws IOException { - if (buffer == null) { - throw new NullPointerException("buffer"); - } + requireNonNull(buffer, "buffer"); long localsize = buffer.readableBytes(); checkSize(localsize); if (definedSize > 0 && definedSize < localsize) { @@ -66,9 +65,7 @@ public abstract class AbstractMemoryHttpData extends AbstractHttpData { @Override public void setContent(InputStream inputStream) throws IOException { - if (inputStream == null) { - throw new NullPointerException("inputStream"); - } + requireNonNull(inputStream, "inputStream"); ByteBuf buffer = buffer(); byte[] bytes = new byte[4096 * 4]; int read = inputStream.read(bytes); @@ -115,17 +112,13 @@ public abstract class AbstractMemoryHttpData extends AbstractHttpData { if (last) { setCompleted(); } else { - if (buffer == null) { - throw new NullPointerException("buffer"); - } + requireNonNull(buffer, "buffer"); } } @Override public void setContent(File file) throws IOException { - if (file == null) { - throw new NullPointerException("file"); - } + requireNonNull(file, "file"); long newsize = file.length(); if (newsize > Integer.MAX_VALUE) { throw new IllegalArgumentException( @@ -222,9 +215,7 @@ public abstract class AbstractMemoryHttpData extends AbstractHttpData { @Override public boolean renameTo(File dest) throws IOException { - if (dest == null) { - throw new NullPointerException("dest"); - } + requireNonNull(dest, "dest"); if (byteBuf == null) { // empty file if (!dest.createNewFile()) { diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskAttribute.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskAttribute.java index 74391885b2..d70732ea02 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskAttribute.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskAttribute.java @@ -23,6 +23,7 @@ import java.io.IOException; import java.nio.charset.Charset; import static io.netty.buffer.Unpooled.wrappedBuffer; +import static java.util.Objects.requireNonNull; /** * Disk implementation of Attributes @@ -77,9 +78,7 @@ public class DiskAttribute extends AbstractDiskHttpData implements Attribute { @Override public void setValue(String value) throws IOException { - if (value == null) { - throw new NullPointerException("value"); - } + requireNonNull(value, "value"); byte [] bytes = value.getBytes(getCharset()); checkSize(bytes.length); ByteBuf buffer = wrappedBuffer(bytes); diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskFileUpload.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskFileUpload.java index 1a5076f508..345f42e119 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskFileUpload.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/DiskFileUpload.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.multipart; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelException; import io.netty.handler.codec.http.HttpHeaderNames; @@ -62,9 +64,7 @@ public class DiskFileUpload extends AbstractDiskHttpData implements FileUpload { @Override public void setFilename(String filename) { - if (filename == null) { - throw new NullPointerException("filename"); - } + requireNonNull(filename, "filename"); this.filename = filename; } @@ -93,9 +93,7 @@ public class DiskFileUpload extends AbstractDiskHttpData implements FileUpload { @Override public void setContentType(String contentType) { - if (contentType == null) { - throw new NullPointerException("contentType"); - } + requireNonNull(contentType, "contentType"); this.contentType = contentType; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostMultipartRequestDecoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostMultipartRequestDecoder.java index 55b89d20ca..58fd6af463 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostMultipartRequestDecoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostMultipartRequestDecoder.java @@ -45,8 +45,8 @@ import static io.netty.buffer.Unpooled.buffer; import static io.netty.handler.codec.http.multipart.HttpPostBodyUtil.BINARY_STRING; import static io.netty.handler.codec.http.multipart.HttpPostBodyUtil.BIT_7_STRING; import static io.netty.handler.codec.http.multipart.HttpPostBodyUtil.BIT_8_STRING; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * This decoder will decode Body and can handle POST BODY. @@ -177,9 +177,9 @@ public class HttpPostMultipartRequestDecoder implements InterfaceHttpPostRequest * errors */ public HttpPostMultipartRequestDecoder(HttpDataFactory factory, HttpRequest request, Charset charset) { - this.request = checkNotNull(request, "request"); - this.charset = checkNotNull(charset, "charset"); - this.factory = checkNotNull(factory, "factory"); + this.request = requireNonNull(request, "request"); + this.charset = requireNonNull(charset, "charset"); + this.factory = requireNonNull(factory, "factory"); // Fill default values setMultipart(this.request.headers().get(HttpHeaderNames.CONTENT_TYPE)); diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestDecoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestDecoder.java index 0c10626406..42add80676 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestDecoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestDecoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.multipart; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderException; import io.netty.handler.codec.http.HttpConstants; import io.netty.handler.codec.http.HttpContent; @@ -83,15 +85,9 @@ public class HttpPostRequestDecoder implements InterfaceHttpPostRequestDecoder { * errors */ public HttpPostRequestDecoder(HttpDataFactory factory, HttpRequest request, Charset charset) { - if (factory == null) { - throw new NullPointerException("factory"); - } - if (request == null) { - throw new NullPointerException("request"); - } - if (charset == null) { - throw new NullPointerException("charset"); - } + requireNonNull(factory, "factory"); + requireNonNull(request, "request"); + requireNonNull(charset, "charset"); // Fill default values if (isMultipart(request)) { decoder = new HttpPostMultipartRequestDecoder(factory, request, charset); diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java index f735b6044f..7b352f179b 100755 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java @@ -49,8 +49,8 @@ import java.util.concurrent.ThreadLocalRandom; import java.util.regex.Pattern; import static io.netty.buffer.Unpooled.wrappedBuffer; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.util.AbstractMap.SimpleImmutableEntry; +import static java.util.Objects.requireNonNull; /** * This encoder will help to encode Request for a FORM as POST. @@ -209,9 +209,9 @@ public class HttpPostRequestEncoder implements ChunkedInput { HttpDataFactory factory, HttpRequest request, boolean multipart, Charset charset, EncoderMode encoderMode) throws ErrorDataEncoderException { - this.request = checkNotNull(request, "request"); - this.charset = checkNotNull(charset, "charset"); - this.factory = checkNotNull(factory, "factory"); + this.request = requireNonNull(request, "request"); + this.charset = requireNonNull(charset, "charset"); + this.factory = requireNonNull(factory, "factory"); if (HttpMethod.TRACE.equals(request.method())) { throw new ErrorDataEncoderException("Cannot create a Encoder if request is a TRACE"); } @@ -310,9 +310,7 @@ public class HttpPostRequestEncoder implements ChunkedInput { * if the encoding is in error or if the finalize were already done */ public void setBodyHttpDatas(List datas) throws ErrorDataEncoderException { - if (datas == null) { - throw new NullPointerException("datas"); - } + requireNonNull(datas, "datas"); globalBodySize = 0; bodyListDatas.clear(); currentFileUpload = null; @@ -337,7 +335,7 @@ public class HttpPostRequestEncoder implements ChunkedInput { */ public void addBodyAttribute(String name, String value) throws ErrorDataEncoderException { String svalue = value != null? value : StringUtil.EMPTY_STRING; - Attribute data = factory.createAttribute(request, checkNotNull(name, "name"), svalue); + Attribute data = factory.createAttribute(request, requireNonNull(name, "name"), svalue); addBodyHttpData(data); } @@ -383,8 +381,8 @@ public class HttpPostRequestEncoder implements ChunkedInput { */ public void addBodyFileUpload(String name, String filename, File file, String contentType, boolean isText) throws ErrorDataEncoderException { - checkNotNull(name, "name"); - checkNotNull(file, "file"); + requireNonNull(name, "name"); + requireNonNull(file, "file"); if (filename == null) { filename = StringUtil.EMPTY_STRING; } @@ -448,7 +446,7 @@ public class HttpPostRequestEncoder implements ChunkedInput { if (headerFinalized) { throw new ErrorDataEncoderException("Cannot add value once finalized"); } - bodyListDatas.add(checkNotNull(data, "data")); + bodyListDatas.add(requireNonNull(data, "data")); if (!isMultipart) { if (data instanceof Attribute) { Attribute attribute = (Attribute) data; diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostStandardRequestDecoder.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostStandardRequestDecoder.java index f527b104f6..2443cca0b0 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostStandardRequestDecoder.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostStandardRequestDecoder.java @@ -35,7 +35,8 @@ import java.util.Map; import java.util.TreeMap; import static io.netty.buffer.Unpooled.*; -import static io.netty.util.internal.ObjectUtil.*; +import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * This decoder will decode Body and can handle POST BODY. @@ -145,9 +146,9 @@ public class HttpPostStandardRequestDecoder implements InterfaceHttpPostRequestD * errors */ public HttpPostStandardRequestDecoder(HttpDataFactory factory, HttpRequest request, Charset charset) { - this.request = checkNotNull(request, "request"); - this.charset = checkNotNull(charset, "charset"); - this.factory = checkNotNull(factory, "factory"); + this.request = requireNonNull(request, "request"); + this.charset = requireNonNull(charset, "charset"); + this.factory = requireNonNull(factory, "factory"); if (request instanceof HttpContent) { // Offer automatically if the given request is als type of HttpContent // See #1089 diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/InternalAttribute.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/InternalAttribute.java index 24059355ee..0e1dfcabc0 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/InternalAttribute.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/InternalAttribute.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.multipart; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.util.AbstractReferenceCounted; @@ -42,27 +44,21 @@ final class InternalAttribute extends AbstractReferenceCounted implements Interf } public void addValue(String value) { - if (value == null) { - throw new NullPointerException("value"); - } + requireNonNull(value, "value"); ByteBuf buf = Unpooled.copiedBuffer(value, charset); this.value.add(buf); size += buf.readableBytes(); } public void addValue(String value, int rank) { - if (value == null) { - throw new NullPointerException("value"); - } + requireNonNull(value, "value"); ByteBuf buf = Unpooled.copiedBuffer(value, charset); this.value.add(rank, buf); size += buf.readableBytes(); } public void setValue(String value, int rank) { - if (value == null) { - throw new NullPointerException("value"); - } + requireNonNull(value, "value"); ByteBuf buf = Unpooled.copiedBuffer(value, charset); ByteBuf old = this.value.set(rank, buf); if (old != null) { diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryAttribute.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryAttribute.java index 63c8c34b2a..55af3ac4f9 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryAttribute.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryAttribute.java @@ -23,6 +23,7 @@ import java.io.IOException; import java.nio.charset.Charset; import static io.netty.buffer.Unpooled.*; +import static java.util.Objects.requireNonNull; /** * Memory implementation of Attributes @@ -66,9 +67,7 @@ public class MemoryAttribute extends AbstractMemoryHttpData implements Attribute @Override public void setValue(String value) throws IOException { - if (value == null) { - throw new NullPointerException("value"); - } + requireNonNull(value, "value"); byte [] bytes = value.getBytes(getCharset()); checkSize(bytes.length); ByteBuf buffer = wrappedBuffer(bytes); diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryFileUpload.java b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryFileUpload.java index 28e3859b79..8d752127f8 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryFileUpload.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/multipart/MemoryFileUpload.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.multipart; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelException; import io.netty.handler.codec.http.HttpHeaderNames; @@ -56,9 +58,7 @@ public class MemoryFileUpload extends AbstractMemoryHttpData implements FileUplo @Override public void setFilename(String filename) { - if (filename == null) { - throw new NullPointerException("filename"); - } + requireNonNull(filename, "filename"); this.filename = filename; } @@ -87,9 +87,7 @@ public class MemoryFileUpload extends AbstractMemoryHttpData implements FileUplo @Override public void setContentType(String contentType) { - if (contentType == null) { - throw new NullPointerException("contentType"); - } + requireNonNull(contentType, "contentType"); this.contentType = contentType; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketChunkedInput.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketChunkedInput.java index c1069de3c1..79f24ff8bd 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketChunkedInput.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketChunkedInput.java @@ -15,11 +15,12 @@ */ package io.netty.handler.codec.http.websocketx; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.stream.ChunkedInput; -import io.netty.util.internal.ObjectUtil; /** * A {@link ChunkedInput} that fetches data chunk by chunk for use with WebSocket chunked transfers. @@ -48,7 +49,7 @@ public final class WebSocketChunkedInput implements ChunkedInput * @throws NullPointerException if {@code input} is null */ public WebSocketChunkedInput(ChunkedInput input, int rsv) { - this.input = ObjectUtil.checkNotNull(input, "input"); + this.input = requireNonNull(input, "input"); this.rsv = rsv; } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientHandshaker.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientHandshaker.java index 188899f957..db620500b6 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientHandshaker.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientHandshaker.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.websocketx; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; @@ -147,9 +149,7 @@ public abstract class WebSocketClientHandshaker { * Channel */ public ChannelFuture handshake(Channel channel) { - if (channel == null) { - throw new NullPointerException("channel"); - } + requireNonNull(channel, "channel"); return handshake(channel, channel.newPromise()); } @@ -398,9 +398,7 @@ public abstract class WebSocketClientHandshaker { * Closing Frame that was received */ public ChannelFuture close(Channel channel, CloseWebSocketFrame frame) { - if (channel == null) { - throw new NullPointerException("channel"); - } + requireNonNull(channel, "channel"); return close(channel, frame, channel.newPromise()); } @@ -415,9 +413,7 @@ public abstract class WebSocketClientHandshaker { * the {@link ChannelPromise} to be notified when the closing handshake is done */ public ChannelFuture close(Channel channel, CloseWebSocketFrame frame, ChannelPromise promise) { - if (channel == null) { - throw new NullPointerException("channel"); - } + requireNonNull(channel, "channel"); return channel.writeAndFlush(frame, promise); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerHandshaker.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerHandshaker.java index 0044516fda..df26ad3914 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerHandshaker.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerHandshaker.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.websocketx; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; @@ -305,9 +307,7 @@ public abstract class WebSocketServerHandshaker { * Closing Frame that was received */ public ChannelFuture close(Channel channel, CloseWebSocketFrame frame) { - if (channel == null) { - throw new NullPointerException("channel"); - } + requireNonNull(channel, "channel"); return close(channel, frame, channel.newPromise()); } @@ -322,9 +322,7 @@ public abstract class WebSocketServerHandshaker { * the {@link ChannelPromise} to be notified when the closing handshake is done */ public ChannelFuture close(Channel channel, CloseWebSocketFrame frame, ChannelPromise promise) { - if (channel == null) { - throw new NullPointerException("channel"); - } + requireNonNull(channel, "channel"); return channel.writeAndFlush(frame, promise).addListener(ChannelFutureListener.CLOSE); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketClientExtensionHandler.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketClientExtensionHandler.java index ab8b782568..e32daa5142 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketClientExtensionHandler.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketClientExtensionHandler.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.websocketx.extensions; +import static java.util.Objects.requireNonNull; + import io.netty.channel.ChannelDuplexHandler; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelPromise; @@ -50,9 +52,7 @@ public class WebSocketClientExtensionHandler extends ChannelDuplexHandler { * with fallback configuration. */ public WebSocketClientExtensionHandler(WebSocketClientExtensionHandshaker... extensionHandshakers) { - if (extensionHandshakers == null) { - throw new NullPointerException("extensionHandshakers"); - } + requireNonNull(extensionHandshakers, "extensionHandshakers"); if (extensionHandshakers.length == 0) { throw new IllegalArgumentException("extensionHandshakers must contains at least one handshaker"); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketExtensionData.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketExtensionData.java index eb3c5864de..01747a77f2 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketExtensionData.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketExtensionData.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http.websocketx.extensions; +import static java.util.Objects.requireNonNull; + import java.util.Collections; import java.util.Map; @@ -29,12 +31,8 @@ public final class WebSocketExtensionData { private final Map parameters; public WebSocketExtensionData(String name, Map parameters) { - if (name == null) { - throw new NullPointerException("name"); - } - if (parameters == null) { - throw new NullPointerException("parameters"); - } + requireNonNull(name, "name"); + requireNonNull(parameters, "parameters"); this.name = name; this.parameters = Collections.unmodifiableMap(parameters); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketServerExtensionHandler.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketServerExtensionHandler.java index 9b63fef7ee..0b7f9adf83 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketServerExtensionHandler.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/WebSocketServerExtensionHandler.java @@ -15,8 +15,9 @@ */ package io.netty.handler.codec.http.websocketx.extensions; +import static java.util.Objects.requireNonNull; + import io.netty.channel.ChannelDuplexHandler; -import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelPromise; @@ -53,9 +54,7 @@ public class WebSocketServerExtensionHandler extends ChannelDuplexHandler { * with fallback configuration. */ public WebSocketServerExtensionHandler(WebSocketServerExtensionHandshaker... extensionHandshakers) { - if (extensionHandshakers == null) { - throw new NullPointerException("extensionHandshakers"); - } + requireNonNull(extensionHandshakers, "extensionHandshakers"); if (extensionHandshakers.length == 0) { throw new IllegalArgumentException("extensionHandshakers must contains at least one handshaker"); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspMethods.java b/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspMethods.java index 8bf5ce754e..daa3e5b1bc 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspMethods.java +++ b/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspMethods.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.rtsp; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.http.HttpMethod; import java.util.HashMap; @@ -117,9 +119,7 @@ public final class RtspMethods { * will be returned. Otherwise, a new instance will be returned. */ public static HttpMethod valueOf(String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); name = name.trim().toUpperCase(); if (name.isEmpty()) { diff --git a/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspVersions.java b/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspVersions.java index 94d0368654..6157b11561 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspVersions.java +++ b/codec-http/src/main/java/io/netty/handler/codec/rtsp/RtspVersions.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.rtsp; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.http.HttpVersion; /** @@ -34,9 +36,7 @@ public final class RtspVersions { * Otherwise, a new {@link HttpVersion} instance will be returned. */ public static HttpVersion valueOf(String text) { - if (text == null) { - throw new NullPointerException("text"); - } + requireNonNull(text, "text"); text = text.trim().toUpperCase(); if ("RTSP/1.0".equals(text)) { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/AbstractHttp2ConnectionHandlerBuilder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/AbstractHttp2ConnectionHandlerBuilder.java index 50164acfd6..59b98f1c89 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/AbstractHttp2ConnectionHandlerBuilder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/AbstractHttp2ConnectionHandlerBuilder.java @@ -22,9 +22,9 @@ import io.netty.util.internal.UnstableApi; import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_HEADER_LIST_SIZE; import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_INITIAL_HUFFMAN_DECODE_CAPACITY; import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_MAX_RESERVED_STREAMS; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositive; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * Abstract base class which defines commonly used features required to build {@link Http2ConnectionHandler} instances. @@ -116,7 +116,7 @@ public abstract class AbstractHttp2ConnectionHandlerBuilder close(final Promise promise) { - checkNotNull(promise, "promise"); + requireNonNull(promise, "promise"); // Since we allow this method to be called multiple times, we must make sure that all the promises are notified // when all streams are removed and the close operation completes. if (closePromise != null) { @@ -370,7 +370,7 @@ public class DefaultHttp2Connection implements Http2Connection { * @throws IllegalArgumentException if the key was not created by this connection. */ final DefaultPropertyKey verifyKey(PropertyKey key) { - return checkNotNull((DefaultPropertyKey) key, "key").verifyConnection(this); + return requireNonNull((DefaultPropertyKey) key, "key").verifyConnection(this); } /** @@ -853,7 +853,7 @@ public class DefaultHttp2Connection implements Http2Connection { @Override public void flowController(F flowController) { - this.flowController = checkNotNull(flowController, "flowController"); + this.flowController = requireNonNull(flowController, "flowController"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionDecoder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionDecoder.java index 57ad0f81b6..6db2c7088d 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionDecoder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionDecoder.java @@ -34,9 +34,9 @@ import static io.netty.handler.codec.http2.Http2Exception.streamError; import static io.netty.handler.codec.http2.Http2PromisedRequestVerifier.ALWAYS_VERIFY; import static io.netty.handler.codec.http2.Http2Stream.State.CLOSED; import static io.netty.handler.codec.http2.Http2Stream.State.HALF_CLOSED_REMOTE; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Integer.MAX_VALUE; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * Provides the default implementation for processing inbound frame events and delegates to a @@ -68,10 +68,10 @@ public class DefaultHttp2ConnectionDecoder implements Http2ConnectionDecoder { Http2ConnectionEncoder encoder, Http2FrameReader frameReader, Http2PromisedRequestVerifier requestVerifier) { - this.connection = checkNotNull(connection, "connection"); - this.frameReader = checkNotNull(frameReader, "frameReader"); - this.encoder = checkNotNull(encoder, "encoder"); - this.requestVerifier = checkNotNull(requestVerifier, "requestVerifier"); + this.connection = requireNonNull(connection, "connection"); + this.frameReader = requireNonNull(frameReader, "frameReader"); + this.encoder = requireNonNull(encoder, "encoder"); + this.requestVerifier = requireNonNull(requestVerifier, "requestVerifier"); if (connection.local().flowController() == null) { connection.local().flowController(new DefaultHttp2LocalFlowController(connection)); } @@ -80,7 +80,7 @@ public class DefaultHttp2ConnectionDecoder implements Http2ConnectionDecoder { @Override public void lifecycleManager(Http2LifecycleManager lifecycleManager) { - this.lifecycleManager = checkNotNull(lifecycleManager, "lifecycleManager"); + this.lifecycleManager = requireNonNull(lifecycleManager, "lifecycleManager"); } @Override @@ -95,7 +95,7 @@ public class DefaultHttp2ConnectionDecoder implements Http2ConnectionDecoder { @Override public void frameListener(Http2FrameListener listener) { - this.listener = checkNotNull(listener, "listener"); + this.listener = requireNonNull(listener, "listener"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java index a4b1069fb5..a081441658 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java @@ -29,9 +29,9 @@ import static io.netty.handler.codec.http.HttpStatusClass.INFORMATIONAL; import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_PRIORITY_WEIGHT; import static io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Integer.MAX_VALUE; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * Default implementation of {@link Http2ConnectionEncoder}. @@ -46,8 +46,8 @@ public class DefaultHttp2ConnectionEncoder implements Http2ConnectionEncoder { private final ArrayDeque outstandingLocalSettingsQueue = new ArrayDeque<>(4); public DefaultHttp2ConnectionEncoder(Http2Connection connection, Http2FrameWriter frameWriter) { - this.connection = checkNotNull(connection, "connection"); - this.frameWriter = checkNotNull(frameWriter, "frameWriter"); + this.connection = requireNonNull(connection, "connection"); + this.frameWriter = requireNonNull(frameWriter, "frameWriter"); if (connection.remote().flowController() == null) { connection.remote().flowController(new DefaultHttp2RemoteFlowController(connection)); } @@ -55,7 +55,7 @@ public class DefaultHttp2ConnectionEncoder implements Http2ConnectionEncoder { @Override public void lifecycleManager(Http2LifecycleManager lifecycleManager) { - this.lifecycleManager = checkNotNull(lifecycleManager, "lifecycleManager"); + this.lifecycleManager = requireNonNull(lifecycleManager, "lifecycleManager"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2DataFrame.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2DataFrame.java index b5554379df..7b75543920 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2DataFrame.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2DataFrame.java @@ -22,7 +22,7 @@ import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; import static io.netty.handler.codec.http2.Http2CodecUtil.verifyPadding; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link Http2DataFrame} implementation. @@ -71,7 +71,7 @@ public final class DefaultHttp2DataFrame extends AbstractHttp2StreamFrame implem * 256 (inclusive). */ public DefaultHttp2DataFrame(ByteBuf content, boolean endStream, int padding) { - this.content = checkNotNull(content, "content"); + this.content = requireNonNull(content, "content"); this.endStream = endStream; verifyPadding(padding); this.padding = padding; diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameWriter.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameWriter.java index 1e4cdcd937..3114c99396 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameWriter.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameWriter.java @@ -60,9 +60,9 @@ import static io.netty.handler.codec.http2.Http2FrameTypes.PUSH_PROMISE; import static io.netty.handler.codec.http2.Http2FrameTypes.RST_STREAM; import static io.netty.handler.codec.http2.Http2FrameTypes.SETTINGS; import static io.netty.handler.codec.http2.Http2FrameTypes.WINDOW_UPDATE; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Math.max; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * A {@link Http2FrameWriter} that supports all frame types defined by the HTTP/2 specification. @@ -306,7 +306,7 @@ public class DefaultHttp2FrameWriter implements Http2FrameWriter, Http2FrameSize public ChannelFuture writeSettings(ChannelHandlerContext ctx, Http2Settings settings, ChannelPromise promise) { try { - checkNotNull(settings, "settings"); + requireNonNull(settings, "settings"); int payloadLength = SETTING_ENTRY_LENGTH * settings.size(); ByteBuf buf = ctx.alloc().buffer(FRAME_HEADER_LENGTH + settings.size() * SETTING_ENTRY_LENGTH); writeFrameHeaderInternal(buf, payloadLength, SETTINGS, new Http2Flags(), 0); diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersDecoder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersDecoder.java index 5d6320950c..d1d40a42a7 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersDecoder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersDecoder.java @@ -16,7 +16,6 @@ package io.netty.handler.codec.http2; import io.netty.buffer.ByteBuf; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.UnstableApi; import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_HEADER_LIST_SIZE; @@ -24,6 +23,7 @@ import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_INITIAL_HUFFMA import static io.netty.handler.codec.http2.Http2Error.COMPRESSION_ERROR; import static io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; +import static java.util.Objects.requireNonNull; @UnstableApi public class DefaultHttp2HeadersDecoder implements Http2HeadersDecoder, Http2HeadersDecoder.Configuration { @@ -79,7 +79,7 @@ public class DefaultHttp2HeadersDecoder implements Http2HeadersDecoder, Http2Hea * for testing but violate the RFC if used outside the scope of testing. */ DefaultHttp2HeadersDecoder(boolean validateHeaders, HpackDecoder hpackDecoder) { - this.hpackDecoder = ObjectUtil.checkNotNull(hpackDecoder, "hpackDecoder"); + this.hpackDecoder = requireNonNull(hpackDecoder, "hpackDecoder"); this.validateHeaders = validateHeaders; this.maxHeaderListSizeGoAway = Http2CodecUtil.calculateMaxHeaderListSizeGoAway(hpackDecoder.getMaxHeaderListSize()); diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersEncoder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersEncoder.java index 5e0a9f6cf1..557f780faa 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersEncoder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersEncoder.java @@ -21,7 +21,7 @@ import io.netty.util.internal.UnstableApi; import static io.netty.handler.codec.http2.Http2Error.COMPRESSION_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; @UnstableApi public class DefaultHttp2HeadersEncoder implements Http2HeadersEncoder, Http2HeadersEncoder.Configuration { @@ -51,8 +51,8 @@ public class DefaultHttp2HeadersEncoder implements Http2HeadersEncoder, Http2Hea * for testing but violate the RFC if used outside the scope of testing. */ DefaultHttp2HeadersEncoder(SensitivityDetector sensitivityDetector, HpackEncoder hpackEncoder) { - this.sensitivityDetector = checkNotNull(sensitivityDetector, "sensitiveDetector"); - this.hpackEncoder = checkNotNull(hpackEncoder, "hpackEncoder"); + this.sensitivityDetector = requireNonNull(sensitivityDetector, "sensitiveDetector"); + this.hpackEncoder = requireNonNull(hpackEncoder, "hpackEncoder"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersFrame.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersFrame.java index 9d239e230b..46453caf0c 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersFrame.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2HeadersFrame.java @@ -19,7 +19,7 @@ import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; import static io.netty.handler.codec.http2.Http2CodecUtil.verifyPadding; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link Http2HeadersFrame} implementation. @@ -57,7 +57,7 @@ public final class DefaultHttp2HeadersFrame extends AbstractHttp2StreamFrame imp * 256 (inclusive). */ public DefaultHttp2HeadersFrame(Http2Headers headers, boolean endStream, int padding) { - this.headers = checkNotNull(headers, "headers"); + this.headers = requireNonNull(headers, "headers"); this.endStream = endStream; verifyPadding(padding); this.padding = padding; diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2LocalFlowController.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2LocalFlowController.java index 9c8308ecf3..08699bae85 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2LocalFlowController.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2LocalFlowController.java @@ -23,9 +23,10 @@ import static io.netty.handler.codec.http2.Http2Error.FLOW_CONTROL_ERROR; import static io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; import static io.netty.handler.codec.http2.Http2Exception.streamError; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Math.max; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.http2.Http2Exception.CompositeStreamException; @@ -74,7 +75,7 @@ public class DefaultHttp2LocalFlowController implements Http2LocalFlowController public DefaultHttp2LocalFlowController(Http2Connection connection, float windowUpdateRatio, boolean autoRefillConnectionWindow) { - this.connection = checkNotNull(connection, "connection"); + this.connection = requireNonNull(connection, "connection"); windowUpdateRatio(windowUpdateRatio); // Add a flow state for the connection. @@ -125,13 +126,13 @@ public class DefaultHttp2LocalFlowController implements Http2LocalFlowController @Override public DefaultHttp2LocalFlowController frameWriter(Http2FrameWriter frameWriter) { - this.frameWriter = checkNotNull(frameWriter, "frameWriter"); + this.frameWriter = requireNonNull(frameWriter, "frameWriter"); return this; } @Override public void channelHandlerContext(ChannelHandlerContext ctx) { - this.ctx = checkNotNull(ctx, "ctx"); + this.ctx = requireNonNull(ctx, "ctx"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2RemoteFlowController.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2RemoteFlowController.java index f0ef835a8b..b9020d60c9 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2RemoteFlowController.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2RemoteFlowController.java @@ -30,9 +30,9 @@ import static io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR; import static io.netty.handler.codec.http2.Http2Error.STREAM_CLOSED; import static io.netty.handler.codec.http2.Http2Exception.streamError; import static io.netty.handler.codec.http2.Http2Stream.State.HALF_CLOSED_LOCAL; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Math.max; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * Basic implementation of {@link Http2RemoteFlowController}. @@ -69,8 +69,8 @@ public class DefaultHttp2RemoteFlowController implements Http2RemoteFlowControll public DefaultHttp2RemoteFlowController(Http2Connection connection, StreamByteDistributor streamByteDistributor, final Listener listener) { - this.connection = checkNotNull(connection, "connection"); - this.streamByteDistributor = checkNotNull(streamByteDistributor, "streamWriteDistributor"); + this.connection = requireNonNull(connection, "connection"); + this.streamByteDistributor = requireNonNull(streamByteDistributor, "streamWriteDistributor"); // Add a flow state for the connection. stateKey = connection.newKey(); @@ -131,7 +131,7 @@ public class DefaultHttp2RemoteFlowController implements Http2RemoteFlowControll */ @Override public void channelHandlerContext(ChannelHandlerContext ctx) throws Http2Exception { - this.ctx = checkNotNull(ctx, "ctx"); + this.ctx = requireNonNull(ctx, "ctx"); // Writing the pending bytes will not check writability change and instead a writability change notification // to be provided by an explicit call. @@ -210,7 +210,7 @@ public class DefaultHttp2RemoteFlowController implements Http2RemoteFlowControll public void addFlowControlled(Http2Stream stream, FlowControlled frame) { // The context can be null assuming the frame will be queued and send later when the context is set. assert ctx == null || ctx.executor().inEventLoop(); - checkNotNull(frame, "frame"); + requireNonNull(frame, "frame"); try { monitor.enqueueFrame(state(stream), frame); } catch (Throwable t) { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ResetFrame.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ResetFrame.java index d3cdf67eb8..c3da1f62a4 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ResetFrame.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ResetFrame.java @@ -18,7 +18,7 @@ package io.netty.handler.codec.http2; import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link Http2ResetFrame} implementation. @@ -34,7 +34,7 @@ public final class DefaultHttp2ResetFrame extends AbstractHttp2StreamFrame imple * @param error the non-{@code null} reason for reset */ public DefaultHttp2ResetFrame(Http2Error error) { - errorCode = checkNotNull(error, "error").code(); + errorCode = requireNonNull(error, "error").code(); } /** diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2SettingsFrame.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2SettingsFrame.java index c60f59feec..1e7b868c3a 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2SettingsFrame.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2SettingsFrame.java @@ -16,7 +16,8 @@ package io.netty.handler.codec.http2; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; @@ -29,7 +30,7 @@ public class DefaultHttp2SettingsFrame implements Http2SettingsFrame { private final Http2Settings settings; public DefaultHttp2SettingsFrame(Http2Settings settings) { - this.settings = ObjectUtil.checkNotNull(settings, "settings"); + this.settings = requireNonNull(settings, "settings"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DelegatingDecompressorFrameListener.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DelegatingDecompressorFrameListener.java index 78ef230c62..ca8d666246 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DelegatingDecompressorFrameListener.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DelegatingDecompressorFrameListener.java @@ -32,7 +32,7 @@ import static io.netty.handler.codec.http.HttpHeaderValues.X_DEFLATE; import static io.netty.handler.codec.http.HttpHeaderValues.X_GZIP; import static io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.streamError; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A HTTP2 frame listener that will decompress data frames according to the {@code content-encoding} header for each @@ -286,7 +286,7 @@ public class DelegatingDecompressorFrameListener extends Http2FrameListenerDecor private final Http2LocalFlowController flowController; ConsumedBytesConverter(Http2LocalFlowController flowController) { - this.flowController = checkNotNull(flowController, "flowController"); + this.flowController = requireNonNull(flowController, "flowController"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHeaderField.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHeaderField.java index 0b0d646895..c1997ba444 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHeaderField.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHeaderField.java @@ -31,7 +31,7 @@ */ package io.netty.handler.codec.http2; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; class HpackHeaderField { @@ -49,8 +49,8 @@ class HpackHeaderField { // This constructor can only be used if name and value are ISO-8859-1 encoded. HpackHeaderField(CharSequence name, CharSequence value) { - this.name = checkNotNull(name, "name"); - this.value = checkNotNull(value, "value"); + this.name = requireNonNull(name, "name"); + this.value = requireNonNull(value, "value"); } final int size() { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHuffmanEncoder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHuffmanEncoder.java index d271c6533f..c0013f9fa6 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHuffmanEncoder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/HpackHuffmanEncoder.java @@ -31,10 +31,11 @@ */ package io.netty.handler.codec.http2; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.AsciiString; import io.netty.util.ByteProcessor; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.PlatformDependent; final class HpackHuffmanEncoder { @@ -66,7 +67,7 @@ final class HpackHuffmanEncoder { * @param data the string literal to be Huffman encoded */ public void encode(ByteBuf out, CharSequence data) { - ObjectUtil.checkNotNull(out, "out"); + requireNonNull(out, "out"); if (data instanceof AsciiString) { AsciiString string = (AsciiString) data; try { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ClientUpgradeCodec.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ClientUpgradeCodec.java index 6028a6fcd1..3a7ffed51c 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ClientUpgradeCodec.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ClientUpgradeCodec.java @@ -34,7 +34,7 @@ import static io.netty.handler.codec.http2.Http2CodecUtil.HTTP_UPGRADE_SETTINGS_ import static io.netty.handler.codec.http2.Http2CodecUtil.SETTING_ENTRY_LENGTH; import static io.netty.util.CharsetUtil.UTF_8; import static io.netty.util.ReferenceCountUtil.release; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Client-side cleartext upgrade codec from HTTP to HTTP/2. @@ -80,8 +80,8 @@ public class Http2ClientUpgradeCodec implements HttpClientUpgradeHandler.Upgrade private Http2ClientUpgradeCodec(String handlerName, Http2ConnectionHandler connectionHandler, ChannelHandler upgradeToHandler) { this.handlerName = handlerName; - this.connectionHandler = checkNotNull(connectionHandler, "connectionHandler"); - this.upgradeToHandler = checkNotNull(upgradeToHandler, "upgradeToHandler"); + this.connectionHandler = requireNonNull(connectionHandler, "connectionHandler"); + this.upgradeToHandler = requireNonNull(upgradeToHandler, "upgradeToHandler"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java index 7141c0e203..4a0c942d58 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java @@ -49,8 +49,8 @@ import static io.netty.handler.codec.http2.Http2Exception.isStreamError; import static io.netty.handler.codec.http2.Http2FrameTypes.SETTINGS; import static io.netty.handler.codec.http2.Http2Stream.State.IDLE; import static io.netty.util.CharsetUtil.UTF_8; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; import static java.util.concurrent.TimeUnit.MILLISECONDS; /** @@ -82,9 +82,9 @@ public class Http2ConnectionHandler extends ByteToMessageDecoder implements Http protected Http2ConnectionHandler(Http2ConnectionDecoder decoder, Http2ConnectionEncoder encoder, Http2Settings initialSettings) { - this.initialSettings = checkNotNull(initialSettings, "initialSettings"); - this.decoder = checkNotNull(decoder, "decoder"); - this.encoder = checkNotNull(encoder, "encoder"); + this.initialSettings = requireNonNull(initialSettings, "initialSettings"); + this.decoder = requireNonNull(decoder, "decoder"); + this.encoder = requireNonNull(encoder, "encoder"); if (encoder.connection() != decoder.connection()) { throw new IllegalArgumentException("Encoder and Decoder do not share the same connection object"); } @@ -92,7 +92,7 @@ public class Http2ConnectionHandler extends ByteToMessageDecoder implements Http Http2ConnectionHandler(boolean server, Http2FrameWriter frameWriter, Http2FrameLogger frameLogger, Http2Settings initialSettings) { - this.initialSettings = checkNotNull(initialSettings, "initialSettings"); + this.initialSettings = requireNonNull(initialSettings, "initialSettings"); Http2Connection connection = new DefaultHttp2Connection(server); diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Exception.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Exception.java index 37f5b22de5..8f57d651df 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Exception.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Exception.java @@ -22,7 +22,7 @@ import java.util.Iterator; import java.util.List; import static io.netty.handler.codec.http2.Http2CodecUtil.CONNECTION_STREAM_ID; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Exception thrown when an HTTP/2 error was encountered. @@ -38,8 +38,8 @@ public class Http2Exception extends Exception { } public Http2Exception(Http2Error error, ShutdownHint shutdownHint) { - this.error = checkNotNull(error, "error"); - this.shutdownHint = checkNotNull(shutdownHint, "shutdownHint"); + this.error = requireNonNull(error, "error"); + this.shutdownHint = requireNonNull(shutdownHint, "shutdownHint"); } public Http2Exception(Http2Error error, String message) { @@ -48,8 +48,8 @@ public class Http2Exception extends Exception { public Http2Exception(Http2Error error, String message, ShutdownHint shutdownHint) { super(message); - this.error = checkNotNull(error, "error"); - this.shutdownHint = checkNotNull(shutdownHint, "shutdownHint"); + this.error = requireNonNull(error, "error"); + this.shutdownHint = requireNonNull(shutdownHint, "shutdownHint"); } public Http2Exception(Http2Error error, String message, Throwable cause) { @@ -58,8 +58,8 @@ public class Http2Exception extends Exception { public Http2Exception(Http2Error error, String message, Throwable cause, ShutdownHint shutdownHint) { super(message, cause); - this.error = checkNotNull(error, "error"); - this.shutdownHint = checkNotNull(shutdownHint, "shutdownHint"); + this.error = requireNonNull(error, "error"); + this.shutdownHint = requireNonNull(shutdownHint, "shutdownHint"); } public Http2Error error() { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodecBuilder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodecBuilder.java index eb45723897..ac4d54c411 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodecBuilder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodecBuilder.java @@ -18,7 +18,7 @@ package io.netty.handler.codec.http2; import io.netty.util.internal.UnstableApi; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Builder for the {@link Http2FrameCodec}. @@ -49,7 +49,7 @@ public class Http2FrameCodecBuilder extends // For testing only. Http2FrameCodecBuilder frameWriter(Http2FrameWriter frameWriter) { - this.frameWriter = checkNotNull(frameWriter, "frameWriter"); + this.frameWriter = requireNonNull(frameWriter, "frameWriter"); return this; } diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameListenerDecorator.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameListenerDecorator.java index e2eecd18c6..657ace9b92 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameListenerDecorator.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameListenerDecorator.java @@ -14,7 +14,8 @@ */ package io.netty.handler.codec.http2; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.util.internal.UnstableApi; @@ -27,7 +28,7 @@ public class Http2FrameListenerDecorator implements Http2FrameListener { protected final Http2FrameListener listener; public Http2FrameListenerDecorator(Http2FrameListener listener) { - this.listener = checkNotNull(listener, "listener"); + this.listener = requireNonNull(listener, "listener"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameLogger.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameLogger.java index 791e991cb8..5908c9fd9e 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameLogger.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameLogger.java @@ -25,7 +25,7 @@ import io.netty.util.internal.logging.InternalLogLevel; import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Logs HTTP2 frames for debugging purposes. @@ -55,8 +55,8 @@ public class Http2FrameLogger extends ChannelHandlerAdapter { } private Http2FrameLogger(InternalLogLevel level, InternalLogger logger) { - this.level = checkNotNull(level, "level"); - this.logger = checkNotNull(logger, "logger"); + this.level = requireNonNull(level, "level"); + this.logger = requireNonNull(logger, "logger"); } public boolean isEnabled() { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameStreamException.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameStreamException.java index e70a0f162a..307bf504a3 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameStreamException.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameStreamException.java @@ -18,7 +18,7 @@ package io.netty.handler.codec.http2; import io.netty.util.internal.UnstableApi; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A HTTP/2 exception for a specific {@link Http2FrameStream}. @@ -33,8 +33,8 @@ public final class Http2FrameStreamException extends Exception { public Http2FrameStreamException(Http2FrameStream stream, Http2Error error, Throwable cause) { super(cause.getMessage(), cause); - this.stream = checkNotNull(stream, "stream"); - this.error = checkNotNull(error, "error"); + this.stream = requireNonNull(stream, "stream"); + this.error = requireNonNull(error, "error"); } public Http2Error error() { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2InboundFrameLogger.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2InboundFrameLogger.java index 806b872105..9913943e4e 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2InboundFrameLogger.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2InboundFrameLogger.java @@ -16,7 +16,8 @@ package io.netty.handler.codec.http2; import static io.netty.handler.codec.http2.Http2FrameLogger.Direction.INBOUND; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.util.internal.UnstableApi; @@ -31,8 +32,8 @@ public class Http2InboundFrameLogger implements Http2FrameReader { private final Http2FrameLogger logger; public Http2InboundFrameLogger(Http2FrameReader reader, Http2FrameLogger logger) { - this.reader = checkNotNull(reader, "reader"); - this.logger = checkNotNull(logger, "logger"); + this.reader = requireNonNull(reader, "reader"); + this.logger = requireNonNull(logger, "logger"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexCodecBuilder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexCodecBuilder.java index c5732ec687..0325de25c7 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexCodecBuilder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexCodecBuilder.java @@ -19,7 +19,7 @@ import io.netty.channel.ChannelHandler; import io.netty.channel.ChannelHandlerAdapter; import io.netty.util.internal.UnstableApi; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A builder for {@link Http2MultiplexCodec}. @@ -34,7 +34,7 @@ public class Http2MultiplexCodecBuilder Http2MultiplexCodecBuilder(boolean server, ChannelHandler childHandler) { server(server); - this.childHandler = checkSharable(checkNotNull(childHandler, "childHandler")); + this.childHandler = checkSharable(requireNonNull(childHandler, "childHandler")); } private static ChannelHandler checkSharable(ChannelHandler handler) { @@ -47,7 +47,7 @@ public class Http2MultiplexCodecBuilder // For testing only. Http2MultiplexCodecBuilder frameWriter(Http2FrameWriter frameWriter) { - this.frameWriter = checkNotNull(frameWriter, "frameWriter"); + this.frameWriter = requireNonNull(frameWriter, "frameWriter"); return this; } diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2OutboundFrameLogger.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2OutboundFrameLogger.java index 5a86ac5364..031142349e 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2OutboundFrameLogger.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2OutboundFrameLogger.java @@ -16,7 +16,8 @@ package io.netty.handler.codec.http2; import static io.netty.handler.codec.http2.Http2FrameLogger.Direction.OUTBOUND; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelHandlerContext; @@ -33,8 +34,8 @@ public class Http2OutboundFrameLogger implements Http2FrameWriter { private final Http2FrameLogger logger; public Http2OutboundFrameLogger(Http2FrameWriter writer, Http2FrameLogger logger) { - this.writer = checkNotNull(writer, "writer"); - this.logger = checkNotNull(logger, "logger"); + this.writer = requireNonNull(writer, "writer"); + this.logger = requireNonNull(logger, "logger"); } @Override diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Settings.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Settings.java index c1231377f4..26bddf56dc 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Settings.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2Settings.java @@ -35,7 +35,7 @@ import static io.netty.handler.codec.http2.Http2CodecUtil.SETTINGS_MAX_CONCURREN import static io.netty.handler.codec.http2.Http2CodecUtil.SETTINGS_MAX_FRAME_SIZE; import static io.netty.handler.codec.http2.Http2CodecUtil.SETTINGS_MAX_HEADER_LIST_SIZE; import static io.netty.handler.codec.http2.Http2CodecUtil.isMaxFrameSizeValid; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Settings for one endpoint in an HTTP/2 connection. Each of the values are optional as defined in @@ -203,7 +203,7 @@ public final class Http2Settings extends CharObjectHashMap { } private static void verifyStandardSetting(int key, Long value) { - checkNotNull(value, "value"); + requireNonNull(value, "value"); switch (key) { case SETTINGS_HEADER_TABLE_SIZE: if (value < MIN_HEADER_TABLE_SIZE || value > MAX_HEADER_TABLE_SIZE) { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2StreamChannelBootstrap.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2StreamChannelBootstrap.java index 05444c7694..9c1531f5b9 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2StreamChannelBootstrap.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2StreamChannelBootstrap.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.http2; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; @@ -26,7 +28,6 @@ import io.netty.util.AttributeKey; import io.netty.util.concurrent.EventExecutor; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.Promise; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; import io.netty.util.internal.logging.InternalLogger; @@ -46,7 +47,7 @@ public final class Http2StreamChannelBootstrap { private volatile ChannelHandler handler; public Http2StreamChannelBootstrap(Channel channel) { - this.channel = ObjectUtil.checkNotNull(channel, "channel"); + this.channel = requireNonNull(channel, "channel"); } /** @@ -55,9 +56,7 @@ public final class Http2StreamChannelBootstrap { */ @SuppressWarnings("unchecked") public Http2StreamChannelBootstrap option(ChannelOption option, T value) { - if (option == null) { - throw new NullPointerException("option"); - } + requireNonNull(option, "option"); if (value == null) { synchronized (options) { options.remove(option); @@ -76,9 +75,7 @@ public final class Http2StreamChannelBootstrap { */ @SuppressWarnings("unchecked") public Http2StreamChannelBootstrap attr(AttributeKey key, T value) { - if (key == null) { - throw new NullPointerException("key"); - } + requireNonNull(key, "key"); if (value == null) { synchronized (attrs) { attrs.remove(key); @@ -96,7 +93,7 @@ public final class Http2StreamChannelBootstrap { */ @SuppressWarnings("unchecked") public Http2StreamChannelBootstrap handler(ChannelHandler handler) { - this.handler = ObjectUtil.checkNotNull(handler, "handler"); + this.handler = requireNonNull(handler, "handler"); return this; } diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/HttpConversionUtil.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/HttpConversionUtil.java index 952d9c38b1..e350f30c62 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/HttpConversionUtil.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/HttpConversionUtil.java @@ -58,10 +58,10 @@ import static io.netty.util.AsciiString.indexOf; import static io.netty.util.AsciiString.trim; import static io.netty.util.ByteProcessor.FIND_COMMA; import static io.netty.util.ByteProcessor.FIND_SEMI_COLON; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.StringUtil.isNullOrEmpty; import static io.netty.util.internal.StringUtil.length; import static io.netty.util.internal.StringUtil.unescapeCsvFields; +import static java.util.Objects.requireNonNull; /** * Provides utility methods and constants for the HTTP/2 to HTTP conversion @@ -247,9 +247,9 @@ public final class HttpConversionUtil { boolean validateHttpHeaders) throws Http2Exception { // HTTP/2 does not define a way to carry the version identifier that is included in the HTTP/1.1 request line. - final CharSequence method = checkNotNull(http2Headers.method(), + final CharSequence method = requireNonNull(http2Headers.method(), "method header cannot be null in conversion to HTTP/1.x"); - final CharSequence path = checkNotNull(http2Headers.path(), + final CharSequence path = requireNonNull(http2Headers.path(), "path header cannot be null in conversion to HTTP/1.x"); FullHttpRequest msg = new DefaultFullHttpRequest(HttpVersion.HTTP_1_1, HttpMethod.valueOf(method .toString()), path.toString(), alloc.buffer(), validateHttpHeaders); @@ -280,9 +280,9 @@ public final class HttpConversionUtil { public static HttpRequest toHttpRequest(int streamId, Http2Headers http2Headers, boolean validateHttpHeaders) throws Http2Exception { // HTTP/2 does not define a way to carry the version identifier that is included in the HTTP/1.1 request line. - final CharSequence method = checkNotNull(http2Headers.method(), + final CharSequence method = requireNonNull(http2Headers.method(), "method header cannot be null in conversion to HTTP/1.x"); - final CharSequence path = checkNotNull(http2Headers.path(), + final CharSequence path = requireNonNull(http2Headers.path(), "path header cannot be null in conversion to HTTP/1.x"); HttpRequest msg = new DefaultHttpRequest(HttpVersion.HTTP_1_1, HttpMethod.valueOf(method.toString()), path.toString(), validateHttpHeaders); diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapter.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapter.java index b5adf25d04..edae93ae6f 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapter.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapter.java @@ -30,7 +30,7 @@ import static io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR; import static io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; import static io.netty.handler.codec.http.HttpResponseStatus.OK; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * This adapter provides just header/data events from the HTTP message flow defined @@ -73,7 +73,7 @@ public class InboundHttp2ToHttpAdapter extends Http2EventAdapter { protected InboundHttp2ToHttpAdapter(Http2Connection connection, int maxContentLength, boolean validateHttpHeaders, boolean propagateSettings) { - checkNotNull(connection, "connection"); + requireNonNull(connection, "connection"); if (maxContentLength <= 0) { throw new IllegalArgumentException("maxContentLength: " + maxContentLength + " (expected: > 0)"); } diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/UniformStreamByteDistributor.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/UniformStreamByteDistributor.java index f02484f1ed..28d38c8321 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/UniformStreamByteDistributor.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/UniformStreamByteDistributor.java @@ -23,9 +23,9 @@ import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_MIN_ALLOCATION import static io.netty.handler.codec.http2.Http2CodecUtil.streamableBytes; import static io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Math.max; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * A {@link StreamByteDistributor} that ignores stream priority and uniformly allocates bytes to all @@ -126,7 +126,7 @@ public final class UniformStreamByteDistributor implements StreamByteDistributor } private State state(Http2Stream stream) { - return checkNotNull(stream, "stream").getProperty(stateKey); + return requireNonNull(stream, "stream").getProperty(stateKey); } /** diff --git a/codec-http2/src/test/java/io/netty/handler/codec/http2/LastInboundHandler.java b/codec-http2/src/test/java/io/netty/handler/codec/http2/LastInboundHandler.java index 07cabd5041..b21d12e35d 100644 --- a/codec-http2/src/test/java/io/netty/handler/codec/http2/LastInboundHandler.java +++ b/codec-http2/src/test/java/io/netty/handler/codec/http2/LastInboundHandler.java @@ -27,7 +27,7 @@ import java.util.ArrayList; import java.util.List; import java.util.concurrent.locks.LockSupport; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import static java.util.concurrent.TimeUnit.MILLISECONDS; /** @@ -59,7 +59,7 @@ public class LastInboundHandler extends ChannelDuplexHandler { } public LastInboundHandler(Consumer channelReadCompleteConsumer) { - this.channelReadCompleteConsumer = checkNotNull(channelReadCompleteConsumer, "channelReadCompleteConsumer"); + this.channelReadCompleteConsumer = requireNonNull(channelReadCompleteConsumer, "channelReadCompleteConsumer"); } @Override diff --git a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/AbstractMemcacheObject.java b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/AbstractMemcacheObject.java index 2ac6c29fcd..ffcb43b8e5 100644 --- a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/AbstractMemcacheObject.java +++ b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/AbstractMemcacheObject.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.memcache; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.AbstractReferenceCounted; import io.netty.util.internal.UnstableApi; @@ -38,9 +40,7 @@ public abstract class AbstractMemcacheObject extends AbstractReferenceCounted im @Override public void setDecoderResult(DecoderResult result) { - if (result == null) { - throw new NullPointerException("DecoderResult should not be null."); - } + requireNonNull(result, "result"); decoderResult = result; } diff --git a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/DefaultMemcacheContent.java b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/DefaultMemcacheContent.java index 1ff7bcd6bb..1ca9dc605f 100644 --- a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/DefaultMemcacheContent.java +++ b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/DefaultMemcacheContent.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.memcache; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; @@ -31,9 +33,7 @@ public class DefaultMemcacheContent extends AbstractMemcacheObject implements Me * Creates a new instance with the specified content. */ public DefaultMemcacheContent(ByteBuf content) { - if (content == null) { - throw new NullPointerException("Content cannot be null."); - } + requireNonNull(content, "content"); this.content = content; } diff --git a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheRequest.java b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheRequest.java index dbc5bacbab..01a1ce88b1 100644 --- a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheRequest.java +++ b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.memcache.binary; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.util.internal.UnstableApi; @@ -48,9 +50,7 @@ public class DefaultFullBinaryMemcacheRequest extends DefaultBinaryMemcacheReque public DefaultFullBinaryMemcacheRequest(ByteBuf key, ByteBuf extras, ByteBuf content) { super(key, extras); - if (content == null) { - throw new NullPointerException("Supplied content is null."); - } + requireNonNull(content, "content"); this.content = content; setTotalBodyLength(keyLength() + extrasLength() + content.readableBytes()); diff --git a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheResponse.java b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheResponse.java index 734cba8ffe..b522935211 100644 --- a/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheResponse.java +++ b/codec-memcache/src/main/java/io/netty/handler/codec/memcache/binary/DefaultFullBinaryMemcacheResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.memcache.binary; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.util.internal.UnstableApi; @@ -48,9 +50,7 @@ public class DefaultFullBinaryMemcacheResponse extends DefaultBinaryMemcacheResp public DefaultFullBinaryMemcacheResponse(ByteBuf key, ByteBuf extras, ByteBuf content) { super(key, extras); - if (content == null) { - throw new NullPointerException("Supplied content is null."); - } + requireNonNull(content, "content"); this.content = content; setTotalBodyLength(keyLength() + extrasLength() + content.readableBytes()); diff --git a/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttFixedHeader.java b/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttFixedHeader.java index 2c0e28ce22..d067d7e1b0 100644 --- a/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttFixedHeader.java +++ b/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttFixedHeader.java @@ -16,7 +16,8 @@ package io.netty.handler.codec.mqtt; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; /** @@ -37,9 +38,9 @@ public final class MqttFixedHeader { MqttQoS qosLevel, boolean isRetain, int remainingLength) { - this.messageType = ObjectUtil.checkNotNull(messageType, "messageType"); + this.messageType = requireNonNull(messageType, "messageType"); this.isDup = isDup; - this.qosLevel = ObjectUtil.checkNotNull(qosLevel, "qosLevel"); + this.qosLevel = requireNonNull(qosLevel, "qosLevel"); this.isRetain = isRetain; this.remainingLength = remainingLength; } diff --git a/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttSubAckPayload.java b/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttSubAckPayload.java index 6b658f808e..5f31471f7f 100644 --- a/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttSubAckPayload.java +++ b/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttSubAckPayload.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.mqtt; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import java.util.ArrayList; @@ -30,9 +32,7 @@ public class MqttSubAckPayload { private final List grantedQoSLevels; public MqttSubAckPayload(int... grantedQoSLevels) { - if (grantedQoSLevels == null) { - throw new NullPointerException("grantedQoSLevels"); - } + requireNonNull(grantedQoSLevels, "grantedQoSLevels"); List list = new ArrayList<>(grantedQoSLevels.length); for (int v: grantedQoSLevels) { @@ -42,9 +42,7 @@ public class MqttSubAckPayload { } public MqttSubAckPayload(Iterable grantedQoSLevels) { - if (grantedQoSLevels == null) { - throw new NullPointerException("grantedQoSLevels"); - } + requireNonNull(grantedQoSLevels, "grantedQoSLevels"); List list = new ArrayList<>(); for (Integer v: grantedQoSLevels) { if (v == null) { diff --git a/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttVersion.java b/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttVersion.java index 985bd9a094..2c1197818b 100644 --- a/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttVersion.java +++ b/codec-mqtt/src/main/java/io/netty/handler/codec/mqtt/MqttVersion.java @@ -16,8 +16,9 @@ package io.netty.handler.codec.mqtt; +import static java.util.Objects.requireNonNull; + import io.netty.util.CharsetUtil; -import io.netty.util.internal.ObjectUtil; /** * Mqtt version specific constant values used by multiple classes in mqtt-codec. @@ -30,7 +31,7 @@ public enum MqttVersion { private final byte level; MqttVersion(String protocolName, byte protocolLevel) { - name = ObjectUtil.checkNotNull(protocolName, "protocolName"); + name = requireNonNull(protocolName, "protocolName"); level = protocolLevel; } diff --git a/codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractStringRedisMessage.java b/codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractStringRedisMessage.java index 19be6c126b..20f1e10808 100644 --- a/codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractStringRedisMessage.java +++ b/codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractStringRedisMessage.java @@ -15,7 +15,8 @@ package io.netty.handler.codec.redis; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; @@ -28,7 +29,7 @@ public abstract class AbstractStringRedisMessage implements RedisMessage { private final String content; AbstractStringRedisMessage(String content) { - this.content = ObjectUtil.checkNotNull(content, "content"); + this.content = requireNonNull(content, "content"); } /** diff --git a/codec-redis/src/main/java/io/netty/handler/codec/redis/ArrayRedisMessage.java b/codec-redis/src/main/java/io/netty/handler/codec/redis/ArrayRedisMessage.java index 3421d328be..019267a3cd 100644 --- a/codec-redis/src/main/java/io/netty/handler/codec/redis/ArrayRedisMessage.java +++ b/codec-redis/src/main/java/io/netty/handler/codec/redis/ArrayRedisMessage.java @@ -15,9 +15,10 @@ package io.netty.handler.codec.redis; +import static java.util.Objects.requireNonNull; + import io.netty.util.AbstractReferenceCounted; import io.netty.util.ReferenceCountUtil; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; @@ -43,7 +44,7 @@ public class ArrayRedisMessage extends AbstractReferenceCounted implements Redis */ public ArrayRedisMessage(List children) { // do not retain here. children are already retained when created. - this.children = ObjectUtil.checkNotNull(children, "children"); + this.children = requireNonNull(children, "children"); } /** diff --git a/codec-redis/src/main/java/io/netty/handler/codec/redis/RedisEncoder.java b/codec-redis/src/main/java/io/netty/handler/codec/redis/RedisEncoder.java index 9a72f451c9..33f29739f8 100644 --- a/codec-redis/src/main/java/io/netty/handler/codec/redis/RedisEncoder.java +++ b/codec-redis/src/main/java/io/netty/handler/codec/redis/RedisEncoder.java @@ -15,13 +15,14 @@ package io.netty.handler.codec.redis; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.buffer.ByteBufUtil; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.CodecException; import io.netty.handler.codec.MessageToMessageEncoder; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.UnstableApi; import java.util.List; @@ -47,7 +48,7 @@ public class RedisEncoder extends MessageToMessageEncoder { * @param messagePool the predefined message pool. */ public RedisEncoder(RedisMessagePool messagePool) { - this.messagePool = ObjectUtil.checkNotNull(messagePool, "messagePool"); + this.messagePool = requireNonNull(messagePool, "messagePool"); } @Override diff --git a/codec-smtp/src/main/java/io/netty/handler/codec/smtp/DefaultSmtpRequest.java b/codec-smtp/src/main/java/io/netty/handler/codec/smtp/DefaultSmtpRequest.java index 7a298405e2..ae5626c504 100644 --- a/codec-smtp/src/main/java/io/netty/handler/codec/smtp/DefaultSmtpRequest.java +++ b/codec-smtp/src/main/java/io/netty/handler/codec/smtp/DefaultSmtpRequest.java @@ -15,7 +15,8 @@ */ package io.netty.handler.codec.smtp; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.UnstableApi; import java.util.Collections; @@ -34,7 +35,7 @@ public final class DefaultSmtpRequest implements SmtpRequest { * Creates a new instance with the given command and no parameters. */ public DefaultSmtpRequest(SmtpCommand command) { - this.command = ObjectUtil.checkNotNull(command, "command"); + this.command = requireNonNull(command, "command"); parameters = Collections.emptyList(); } @@ -42,7 +43,7 @@ public final class DefaultSmtpRequest implements SmtpRequest { * Creates a new instance with the given command and parameters. */ public DefaultSmtpRequest(SmtpCommand command, CharSequence... parameters) { - this.command = ObjectUtil.checkNotNull(command, "command"); + this.command = requireNonNull(command, "command"); this.parameters = SmtpUtils.toUnmodifiableList(parameters); } @@ -54,7 +55,7 @@ public final class DefaultSmtpRequest implements SmtpRequest { } DefaultSmtpRequest(SmtpCommand command, List parameters) { - this.command = ObjectUtil.checkNotNull(command, "command"); + this.command = requireNonNull(command, "command"); this.parameters = parameters != null ? Collections.unmodifiableList(parameters) : Collections.emptyList(); } diff --git a/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpCommand.java b/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpCommand.java index da1d9b5ace..4a12571a67 100644 --- a/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpCommand.java +++ b/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpCommand.java @@ -15,10 +15,11 @@ */ package io.netty.handler.codec.smtp; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; import io.netty.util.AsciiString; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.UnstableApi; import java.util.HashMap; @@ -60,7 +61,7 @@ public final class SmtpCommand { * Returns the {@link SmtpCommand} for the given command name. */ public static SmtpCommand valueOf(CharSequence commandName) { - ObjectUtil.checkNotNull(commandName, "commandName"); + requireNonNull(commandName, "commandName"); SmtpCommand command = COMMANDS.get(commandName.toString()); return command != null ? command : new SmtpCommand(AsciiString.of(commandName)); } diff --git a/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpRequests.java b/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpRequests.java index ae917ad26a..5bffbab7cf 100644 --- a/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpRequests.java +++ b/codec-smtp/src/main/java/io/netty/handler/codec/smtp/SmtpRequests.java @@ -15,8 +15,9 @@ */ package io.netty.handler.codec.smtp; +import static java.util.Objects.requireNonNull; + import io.netty.util.AsciiString; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.UnstableApi; import java.util.ArrayList; @@ -104,7 +105,7 @@ public final class SmtpRequests { * Creates a {@code RCPT} request. */ public static SmtpRequest rcpt(CharSequence recipient, CharSequence... rcptParameters) { - ObjectUtil.checkNotNull(recipient, "recipient"); + requireNonNull(recipient, "recipient"); if (rcptParameters == null || rcptParameters.length == 0) { return new DefaultSmtpRequest(SmtpCommand.RCPT, "TO:<" + recipient + '>'); } else { @@ -119,14 +120,14 @@ public final class SmtpRequests { * Creates a {@code EXPN} request. */ public static SmtpRequest expn(CharSequence mailingList) { - return new DefaultSmtpRequest(SmtpCommand.EXPN, ObjectUtil.checkNotNull(mailingList, "mailingList")); + return new DefaultSmtpRequest(SmtpCommand.EXPN, requireNonNull(mailingList, "mailingList")); } /** * Creates a {@code VRFY} request. */ public static SmtpRequest vrfy(CharSequence user) { - return new DefaultSmtpRequest(SmtpCommand.VRFY, ObjectUtil.checkNotNull(user, "user")); + return new DefaultSmtpRequest(SmtpCommand.VRFY, requireNonNull(user, "user")); } private SmtpRequests() { } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthRequest.java index 277e0d339b..5788ac23ae 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.CharsetUtil; @@ -34,12 +36,8 @@ public final class SocksAuthRequest extends SocksRequest { public SocksAuthRequest(String username, String password) { super(SocksRequestType.AUTH); - if (username == null) { - throw new NullPointerException("username"); - } - if (password == null) { - throw new NullPointerException("username"); - } + requireNonNull(username, "username"); + requireNonNull(password, "password"); if (!asciiEncoder.canEncode(username) || !asciiEncoder.canEncode(password)) { throw new IllegalArgumentException( "username: " + username + " or password: **** values should be in pure ascii"); diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthResponse.java index 5cacdde79e..0b1bc11a1e 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksAuthResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; /** @@ -29,9 +31,7 @@ public final class SocksAuthResponse extends SocksResponse { public SocksAuthResponse(SocksAuthStatus authStatus) { super(SocksResponseType.AUTH); - if (authStatus == null) { - throw new NullPointerException("authStatus"); - } + requireNonNull(authStatus, "authStatus"); this.authStatus = authStatus; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdRequest.java index 18bd65f7b9..106ab597d9 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.CharsetUtil; import io.netty.util.NetUtil; @@ -35,15 +37,9 @@ public final class SocksCmdRequest extends SocksRequest { public SocksCmdRequest(SocksCmdType cmdType, SocksAddressType addressType, String host, int port) { super(SocksRequestType.CMD); - if (cmdType == null) { - throw new NullPointerException("cmdType"); - } - if (addressType == null) { - throw new NullPointerException("addressType"); - } - if (host == null) { - throw new NullPointerException("host"); - } + requireNonNull(cmdType, "cmdType"); + requireNonNull(addressType, "addressType"); + requireNonNull(host, "host"); switch (addressType) { case IPv4: if (!NetUtil.isValidIpV4Address(host)) { diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdResponse.java index 94ee51678e..964618df33 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksCmdResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.CharsetUtil; import io.netty.util.NetUtil; @@ -61,12 +63,8 @@ public final class SocksCmdResponse extends SocksResponse { */ public SocksCmdResponse(SocksCmdStatus cmdStatus, SocksAddressType addressType, String host, int port) { super(SocksResponseType.CMD); - if (cmdStatus == null) { - throw new NullPointerException("cmdStatus"); - } - if (addressType == null) { - throw new NullPointerException("addressType"); - } + requireNonNull(cmdStatus, "cmdStatus"); + requireNonNull(addressType, "addressType"); if (host != null) { switch (addressType) { case IPv4: diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitRequest.java index 2299d2b63b..7a99c127e3 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import java.util.Collections; @@ -31,9 +33,7 @@ public final class SocksInitRequest extends SocksRequest { public SocksInitRequest(List authSchemes) { super(SocksRequestType.INIT); - if (authSchemes == null) { - throw new NullPointerException("authSchemes"); - } + requireNonNull(authSchemes, "authSchemes"); this.authSchemes = authSchemes; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitResponse.java index b4d90391fe..1a137cedc1 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksInitResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; /** @@ -28,9 +30,7 @@ public final class SocksInitResponse extends SocksResponse { public SocksInitResponse(SocksAuthScheme authScheme) { super(SocksResponseType.INIT); - if (authScheme == null) { - throw new NullPointerException("authScheme"); - } + requireNonNull(authScheme, "authScheme"); this.authScheme = authScheme; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksMessage.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksMessage.java index 5f5f48ba39..77569f32b2 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksMessage.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksMessage.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; /** @@ -30,9 +32,7 @@ public abstract class SocksMessage { private final SocksProtocolVersion protocolVersion = SocksProtocolVersion.SOCKS5; protected SocksMessage(SocksMessageType type) { - if (type == null) { - throw new NullPointerException("type"); - } + requireNonNull(type, "type"); this.type = type; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksRequest.java index 148353c380..cd7193351e 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + /** * An abstract class that defines a SocksRequest, providing common properties for * {@link SocksInitRequest}, {@link SocksAuthRequest}, {@link SocksCmdRequest} and {@link UnknownSocksRequest}. @@ -29,9 +31,7 @@ public abstract class SocksRequest extends SocksMessage { protected SocksRequest(SocksRequestType requestType) { super(SocksMessageType.REQUEST); - if (requestType == null) { - throw new NullPointerException("requestType"); - } + requireNonNull(requestType, "requestType"); this.requestType = requestType; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksResponse.java index 8bdd3ccee3..506af5284f 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socks/SocksResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socks; +import static java.util.Objects.requireNonNull; + /** * An abstract class that defines a SocksResponse, providing common properties for * {@link SocksInitResponse}, {@link SocksAuthResponse}, {@link SocksCmdResponse} and {@link UnknownSocksResponse}. @@ -29,9 +31,7 @@ public abstract class SocksResponse extends SocksMessage { protected SocksResponse(SocksResponseType responseType) { super(SocksMessageType.RESPONSE); - if (responseType == null) { - throw new NullPointerException("responseType"); - } + requireNonNull(responseType, "responseType"); this.responseType = responseType; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/AbstractSocksMessage.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/AbstractSocksMessage.java index fbb847a68c..477b640e3e 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/AbstractSocksMessage.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/AbstractSocksMessage.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; /** @@ -32,9 +34,7 @@ public abstract class AbstractSocksMessage implements SocksMessage { @Override public void setDecoderResult(DecoderResult decoderResult) { - if (decoderResult == null) { - throw new NullPointerException("decoderResult"); - } + requireNonNull(decoderResult, "decoderResult"); this.decoderResult = decoderResult; } } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/SocksPortUnificationServerHandler.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/SocksPortUnificationServerHandler.java index c4dfe3f642..0e0daf2702 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/SocksPortUnificationServerHandler.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/SocksPortUnificationServerHandler.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelPipeline; @@ -53,9 +55,7 @@ public class SocksPortUnificationServerHandler extends ByteToMessageDecoder { * This constructor is useful when a user wants to use an alternative {@link Socks5AddressEncoder}. */ public SocksPortUnificationServerHandler(Socks5ServerEncoder socks5encoder) { - if (socks5encoder == null) { - throw new NullPointerException("socks5encoder"); - } + requireNonNull(socks5encoder, "socks5encoder"); this.socks5encoder = socks5encoder; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandRequest.java index 169768e183..6b2c84c996 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v4; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.internal.StringUtil; @@ -50,18 +52,12 @@ public class DefaultSocks4CommandRequest extends AbstractSocks4Message implement * @param userId the {@code USERID} field of the request */ public DefaultSocks4CommandRequest(Socks4CommandType type, String dstAddr, int dstPort, String userId) { - if (type == null) { - throw new NullPointerException("type"); - } - if (dstAddr == null) { - throw new NullPointerException("dstAddr"); - } + requireNonNull(type, "type"); + requireNonNull(dstAddr, "dstAddr"); if (dstPort <= 0 || dstPort >= 65536) { throw new IllegalArgumentException("dstPort: " + dstPort + " (expected: 1~65535)"); } - if (userId == null) { - throw new NullPointerException("userId"); - } + requireNonNull(userId, "userId"); this.userId = userId; this.type = type; diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandResponse.java index bd76265e44..0ae1166646 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/DefaultSocks4CommandResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v4; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.NetUtil; import io.netty.util.internal.StringUtil; @@ -45,9 +47,7 @@ public class DefaultSocks4CommandResponse extends AbstractSocks4Message implemen * @param dstPort the {@code DSTPORT} field of the response */ public DefaultSocks4CommandResponse(Socks4CommandStatus status, String dstAddr, int dstPort) { - if (status == null) { - throw new NullPointerException("cmdStatus"); - } + requireNonNull(status, "status"); if (dstAddr != null) { if (!NetUtil.isValidIpV4Address(dstAddr)) { throw new IllegalArgumentException( diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandStatus.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandStatus.java index fdcfe0f18f..ed540b1611 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandStatus.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandStatus.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v4; +import static java.util.Objects.requireNonNull; + /** * The status of {@link Socks4CommandResponse}. */ @@ -49,9 +51,7 @@ public class Socks4CommandStatus implements Comparable { } public Socks4CommandStatus(int byteValue, String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.byteValue = (byte) byteValue; this.name = name; diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandType.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandType.java index 0cd6fe48f8..e452670922 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandType.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v4/Socks4CommandType.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v4; +import static java.util.Objects.requireNonNull; + /** * The type of {@link Socks4CommandRequest}. */ @@ -43,9 +45,7 @@ public class Socks4CommandType implements Comparable { } public Socks4CommandType(int byteValue, String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.byteValue = (byte) byteValue; this.name = name; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandRequest.java index ddd35fd625..8936df7295 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.NetUtil; import io.netty.util.internal.StringUtil; @@ -33,16 +35,9 @@ public final class DefaultSocks5CommandRequest extends AbstractSocks5Message imp public DefaultSocks5CommandRequest( Socks5CommandType type, Socks5AddressType dstAddrType, String dstAddr, int dstPort) { - - if (type == null) { - throw new NullPointerException("type"); - } - if (dstAddrType == null) { - throw new NullPointerException("dstAddrType"); - } - if (dstAddr == null) { - throw new NullPointerException("dstAddr"); - } + requireNonNull(type, "type"); + requireNonNull(dstAddrType, "dstAddrType"); + requireNonNull(dstAddr, "dstAddr"); if (dstAddrType == Socks5AddressType.IPv4) { if (!NetUtil.isValidIpV4Address(dstAddr)) { diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandResponse.java index 8d9719e6f8..0237e171af 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5CommandResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.NetUtil; import io.netty.util.internal.StringUtil; @@ -37,13 +39,8 @@ public final class DefaultSocks5CommandResponse extends AbstractSocks5Message im public DefaultSocks5CommandResponse( Socks5CommandStatus status, Socks5AddressType bndAddrType, String bndAddr, int bndPort) { - - if (status == null) { - throw new NullPointerException("status"); - } - if (bndAddrType == null) { - throw new NullPointerException("bndAddrType"); - } + requireNonNull(status, "status"); + requireNonNull(bndAddrType, "bndAddrType"); if (bndAddr != null) { if (bndAddrType == Socks5AddressType.IPv4) { if (!NetUtil.isValidIpV4Address(bndAddr)) { diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialRequest.java index 3c7cf3eee9..904ee507a8 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.internal.StringUtil; @@ -30,9 +32,7 @@ public class DefaultSocks5InitialRequest extends AbstractSocks5Message implement private final List authMethods; public DefaultSocks5InitialRequest(Socks5AuthMethod... authMethods) { - if (authMethods == null) { - throw new NullPointerException("authMethods"); - } + requireNonNull(authMethods, "authMethods"); List list = new ArrayList<>(authMethods.length); for (Socks5AuthMethod m: authMethods) { @@ -50,9 +50,7 @@ public class DefaultSocks5InitialRequest extends AbstractSocks5Message implement } public DefaultSocks5InitialRequest(Iterable authMethods) { - if (authMethods == null) { - throw new NullPointerException("authSchemes"); - } + requireNonNull(authMethods, "authMethods"); List list = new ArrayList<>(); for (Socks5AuthMethod m: authMethods) { diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialResponse.java index 23d1c12ed8..b00e136242 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5InitialResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.internal.StringUtil; @@ -26,9 +28,7 @@ public class DefaultSocks5InitialResponse extends AbstractSocks5Message implemen private final Socks5AuthMethod authMethod; public DefaultSocks5InitialResponse(Socks5AuthMethod authMethod) { - if (authMethod == null) { - throw new NullPointerException("authMethod"); - } + requireNonNull(authMethod, "authMethod"); this.authMethod = authMethod; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthRequest.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthRequest.java index 69177895c4..af67d36b2e 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthRequest.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthRequest.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.internal.StringUtil; @@ -27,12 +29,8 @@ public class DefaultSocks5PasswordAuthRequest extends AbstractSocks5Message impl private final String password; public DefaultSocks5PasswordAuthRequest(String username, String password) { - if (username == null) { - throw new NullPointerException("username"); - } - if (password == null) { - throw new NullPointerException("password"); - } + requireNonNull(username, "username"); + requireNonNull(password, "password"); if (username.length() > 255) { throw new IllegalArgumentException("username: **** (expected: less than 256 chars)"); diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthResponse.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthResponse.java index 6cd9a30620..f4304e4a12 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthResponse.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/DefaultSocks5PasswordAuthResponse.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; import io.netty.util.internal.StringUtil; @@ -26,9 +28,7 @@ public class DefaultSocks5PasswordAuthResponse extends AbstractSocks5Message imp private final Socks5PasswordAuthStatus status; public DefaultSocks5PasswordAuthResponse(Socks5PasswordAuthStatus status) { - if (status == null) { - throw new NullPointerException("status"); - } + requireNonNull(status, "status"); this.status = status; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AddressType.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AddressType.java index 554721a8bc..da3bdfe56d 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AddressType.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AddressType.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + /** * The type of address in {@link Socks5CommandRequest} and {@link Socks5CommandResponse}. */ @@ -47,9 +49,7 @@ public class Socks5AddressType implements Comparable { } public Socks5AddressType(int byteValue, String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.byteValue = (byte) byteValue; this.name = name; diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AuthMethod.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AuthMethod.java index 8efceeea7a..f993195980 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AuthMethod.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5AuthMethod.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + /** * The authentication method of SOCKS5. */ @@ -54,9 +56,7 @@ public class Socks5AuthMethod implements Comparable { } public Socks5AuthMethod(int byteValue, String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.byteValue = (byte) byteValue; this.name = name; diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5ClientEncoder.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5ClientEncoder.java index ea6092a9b1..b6ee9a8e7f 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5ClientEncoder.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5ClientEncoder.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; import io.netty.channel.ChannelHandler.Sharable; @@ -48,9 +50,7 @@ public class Socks5ClientEncoder extends MessageToByteEncoder { * Creates a new instance with the specified {@link Socks5AddressEncoder}. */ public Socks5ClientEncoder(Socks5AddressEncoder addressEncoder) { - if (addressEncoder == null) { - throw new NullPointerException("addressEncoder"); - } + requireNonNull(addressEncoder, "addressEncoder"); this.addressEncoder = addressEncoder; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandRequestDecoder.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandRequestDecoder.java index eab1b1579e..ef909b8964 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandRequestDecoder.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandRequestDecoder.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.DecoderException; @@ -48,9 +50,7 @@ public class Socks5CommandRequestDecoder extends ReplayingDecoder { public Socks5CommandRequestDecoder(Socks5AddressDecoder addressDecoder) { super(State.INIT); - if (addressDecoder == null) { - throw new NullPointerException("addressDecoder"); - } + requireNonNull(addressDecoder, "addressDecoder"); this.addressDecoder = addressDecoder; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandResponseDecoder.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandResponseDecoder.java index e3ac387623..af04e41b80 100644 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandResponseDecoder.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandResponseDecoder.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.DecoderException; @@ -48,9 +50,7 @@ public class Socks5CommandResponseDecoder extends ReplayingDecoder { public Socks5CommandResponseDecoder(Socks5AddressDecoder addressDecoder) { super(State.INIT); - if (addressDecoder == null) { - throw new NullPointerException("addressDecoder"); - } + requireNonNull(addressDecoder, "addressDecoder"); this.addressDecoder = addressDecoder; } diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandStatus.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandStatus.java index 7973c043a0..6bc4bff7c2 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandStatus.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandStatus.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + /** * The status of {@link Socks5CommandResponse}. */ @@ -65,9 +67,7 @@ public class Socks5CommandStatus implements Comparable { } public Socks5CommandStatus(int byteValue, String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.byteValue = (byte) byteValue; this.name = name; diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandType.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandType.java index ecc4ca3e43..a0d3ab9024 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandType.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5CommandType.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + /** * The type of {@link Socks5CommandRequest}. */ @@ -47,9 +49,7 @@ public class Socks5CommandType implements Comparable { } public Socks5CommandType(int byteValue, String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.byteValue = (byte) byteValue; this.name = name; diff --git a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5PasswordAuthStatus.java b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5PasswordAuthStatus.java index e7ea4a1eda..ee2421ffca 100755 --- a/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5PasswordAuthStatus.java +++ b/codec-socks/src/main/java/io/netty/handler/codec/socksx/v5/Socks5PasswordAuthStatus.java @@ -16,6 +16,8 @@ package io.netty.handler.codec.socksx.v5; +import static java.util.Objects.requireNonNull; + /** * The status of {@link Socks5PasswordAuthResponse}. */ @@ -44,9 +46,7 @@ public class Socks5PasswordAuthStatus implements Comparable { * Creates a new instance with the specified {@link Socks5AddressEncoder}. */ public Socks5ServerEncoder(Socks5AddressEncoder addressEncoder) { - if (addressEncoder == null) { - throw new NullPointerException("addressEncoder"); - } + requireNonNull(addressEncoder, "addressEncoder"); this.addressEncoder = addressEncoder; } diff --git a/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompFrame.java b/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompFrame.java index 8df4c65043..57e8a59edf 100644 --- a/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompFrame.java +++ b/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompFrame.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.stomp; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.util.CharsetUtil; @@ -36,10 +38,7 @@ public class DefaultStompFrame extends DefaultStompHeadersSubframe implements St DefaultStompFrame(StompCommand command, ByteBuf content, DefaultStompHeaders headers) { super(command, headers); - - if (content == null) { - throw new NullPointerException("content"); - } + requireNonNull(content, "content"); this.content = content; } diff --git a/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompHeadersSubframe.java b/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompHeadersSubframe.java index 728a8894be..afee55129a 100644 --- a/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompHeadersSubframe.java +++ b/codec-stomp/src/main/java/io/netty/handler/codec/stomp/DefaultStompHeadersSubframe.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.stomp; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.DecoderResult; /** @@ -31,9 +33,7 @@ public class DefaultStompHeadersSubframe implements StompHeadersSubframe { } DefaultStompHeadersSubframe(StompCommand command, DefaultStompHeaders headers) { - if (command == null) { - throw new NullPointerException("command"); - } + requireNonNull(command, "command"); this.command = command; this.headers = headers == null ? new DefaultStompHeaders() : headers; diff --git a/codec/src/main/java/io/netty/handler/codec/AsciiHeadersEncoder.java b/codec/src/main/java/io/netty/handler/codec/AsciiHeadersEncoder.java index b8162e8dcb..08e366dbfc 100644 --- a/codec/src/main/java/io/netty/handler/codec/AsciiHeadersEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/AsciiHeadersEncoder.java @@ -16,6 +16,7 @@ package io.netty.handler.codec; +import static java.util.Objects.requireNonNull; import java.util.Map.Entry; @@ -63,15 +64,9 @@ public final class AsciiHeadersEncoder { } public AsciiHeadersEncoder(ByteBuf buf, SeparatorType separatorType, NewlineType newlineType) { - if (buf == null) { - throw new NullPointerException("buf"); - } - if (separatorType == null) { - throw new NullPointerException("separatorType"); - } - if (newlineType == null) { - throw new NullPointerException("newlineType"); - } + requireNonNull(buf, "buf"); + requireNonNull(separatorType, "separatorType"); + requireNonNull(newlineType, "newlineType"); this.buf = buf; this.separatorType = separatorType; diff --git a/codec/src/main/java/io/netty/handler/codec/ByteToMessageDecoder.java b/codec/src/main/java/io/netty/handler/codec/ByteToMessageDecoder.java index 0008262060..3f3fe59981 100644 --- a/codec/src/main/java/io/netty/handler/codec/ByteToMessageDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/ByteToMessageDecoder.java @@ -16,6 +16,7 @@ package io.netty.handler.codec; import static io.netty.util.internal.ObjectUtil.checkPositive; +import static java.util.Objects.requireNonNull; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; @@ -187,9 +188,7 @@ public abstract class ByteToMessageDecoder extends ChannelInboundHandlerAdapter * Set the {@link Cumulator} to use for cumulate the received {@link ByteBuf}s. */ public void setCumulator(Cumulator cumulator) { - if (cumulator == null) { - throw new NullPointerException("cumulator"); - } + requireNonNull(cumulator, "cumulator"); this.cumulator = cumulator; } diff --git a/codec/src/main/java/io/netty/handler/codec/CodecOutputList.java b/codec/src/main/java/io/netty/handler/codec/CodecOutputList.java index 8e3d976f48..5285aaf1fb 100644 --- a/codec/src/main/java/io/netty/handler/codec/CodecOutputList.java +++ b/codec/src/main/java/io/netty/handler/codec/CodecOutputList.java @@ -15,14 +15,14 @@ */ package io.netty.handler.codec; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.FastThreadLocal; import io.netty.util.internal.MathUtil; import java.util.AbstractList; import java.util.RandomAccess; -import static io.netty.util.internal.ObjectUtil.checkNotNull; - /** * Special {@link AbstractList} implementation which is used within our codec base classes. */ @@ -114,7 +114,7 @@ final class CodecOutputList extends AbstractList implements RandomAccess @Override public boolean add(Object element) { - checkNotNull(element, "element"); + requireNonNull(element, "element"); try { insert(size, element); } catch (IndexOutOfBoundsException ignore) { @@ -128,7 +128,7 @@ final class CodecOutputList extends AbstractList implements RandomAccess @Override public Object set(int index, Object element) { - checkNotNull(element, "element"); + requireNonNull(element, "element"); checkIndex(index); Object old = array[index]; @@ -138,7 +138,7 @@ final class CodecOutputList extends AbstractList implements RandomAccess @Override public void add(int index, Object element) { - checkNotNull(element, "element"); + requireNonNull(element, "element"); checkIndex(index); if (size == array.length) { diff --git a/codec/src/main/java/io/netty/handler/codec/DatagramPacketDecoder.java b/codec/src/main/java/io/netty/handler/codec/DatagramPacketDecoder.java index d31f6e7faa..bb8cafe4d2 100644 --- a/codec/src/main/java/io/netty/handler/codec/DatagramPacketDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/DatagramPacketDecoder.java @@ -15,12 +15,13 @@ */ package io.netty.handler.codec; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelPipeline; import io.netty.channel.socket.DatagramPacket; import io.netty.handler.codec.protobuf.ProtobufDecoder; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import java.util.List; @@ -43,7 +44,7 @@ public class DatagramPacketDecoder extends MessageToMessageDecoder decoder) { - this.decoder = checkNotNull(decoder, "decoder"); + this.decoder = requireNonNull(decoder, "decoder"); } @Override diff --git a/codec/src/main/java/io/netty/handler/codec/DatagramPacketEncoder.java b/codec/src/main/java/io/netty/handler/codec/DatagramPacketEncoder.java index 7a6f9c53ad..6b39dd3214 100644 --- a/codec/src/main/java/io/netty/handler/codec/DatagramPacketEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/DatagramPacketEncoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.AddressedEnvelope; import io.netty.channel.ChannelHandlerContext; @@ -23,7 +25,6 @@ import io.netty.channel.ChannelPromise; import io.netty.channel.socket.DatagramPacket; import io.netty.handler.codec.protobuf.ProtobufEncoder; import io.netty.util.internal.StringUtil; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import java.net.InetSocketAddress; import java.net.SocketAddress; @@ -54,7 +55,7 @@ public class DatagramPacketEncoder extends MessageToMessageEncoder encoder) { - this.encoder = checkNotNull(encoder, "encoder"); + this.encoder = requireNonNull(encoder, "encoder"); } @Override diff --git a/codec/src/main/java/io/netty/handler/codec/DateFormatter.java b/codec/src/main/java/io/netty/handler/codec/DateFormatter.java index b07912abaa..c1b5e46df6 100644 --- a/codec/src/main/java/io/netty/handler/codec/DateFormatter.java +++ b/codec/src/main/java/io/netty/handler/codec/DateFormatter.java @@ -15,7 +15,7 @@ */ package io.netty.handler.codec; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import io.netty.util.AsciiString; import io.netty.util.concurrent.FastThreadLocal; @@ -102,7 +102,7 @@ public final class DateFormatter { throw new IllegalArgumentException("Can't parse more than 64 chars," + "looks like a user error or a malformed header"); } - return formatter().parse0(checkNotNull(txt, "txt"), start, end); + return formatter().parse0(requireNonNull(txt, "txt"), start, end); } /** @@ -111,7 +111,7 @@ public final class DateFormatter { * @return a RFC1123 string */ public static String format(Date date) { - return formatter().format0(checkNotNull(date, "date")); + return formatter().format0(requireNonNull(date, "date")); } /** @@ -121,7 +121,7 @@ public final class DateFormatter { * @return the same StringBuilder */ public static StringBuilder append(Date date, StringBuilder sb) { - return formatter().append0(checkNotNull(date, "date"), checkNotNull(sb, "sb")); + return formatter().append0(requireNonNull(date, "date"), requireNonNull(sb, "sb")); } private static DateFormatter formatter() { diff --git a/codec/src/main/java/io/netty/handler/codec/DecoderResult.java b/codec/src/main/java/io/netty/handler/codec/DecoderResult.java index f666a3b4f7..f1d625e4f8 100644 --- a/codec/src/main/java/io/netty/handler/codec/DecoderResult.java +++ b/codec/src/main/java/io/netty/handler/codec/DecoderResult.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec; +import static java.util.Objects.requireNonNull; + import io.netty.util.Signal; public class DecoderResult { @@ -26,18 +28,14 @@ public class DecoderResult { public static final DecoderResult SUCCESS = new DecoderResult(SIGNAL_SUCCESS); public static DecoderResult failure(Throwable cause) { - if (cause == null) { - throw new NullPointerException("cause"); - } + requireNonNull(cause, "cause"); return new DecoderResult(cause); } private final Throwable cause; protected DecoderResult(Throwable cause) { - if (cause == null) { - throw new NullPointerException("cause"); - } + requireNonNull(cause, "cause"); this.cause = cause; } diff --git a/codec/src/main/java/io/netty/handler/codec/DefaultHeaders.java b/codec/src/main/java/io/netty/handler/codec/DefaultHeaders.java index e658c66966..9f308aa57b 100644 --- a/codec/src/main/java/io/netty/handler/codec/DefaultHeaders.java +++ b/codec/src/main/java/io/netty/handler/codec/DefaultHeaders.java @@ -29,9 +29,9 @@ import java.util.Set; import static io.netty.util.HashingStrategy.JAVA_HASHER; import static io.netty.util.internal.MathUtil.findNextPositivePowerOfTwo; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Math.max; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * Default implementation of {@link Headers}; @@ -64,7 +64,7 @@ public class DefaultHeaders> implements Headers void validateName(K name); @SuppressWarnings("rawtypes") - NameValidator NOT_NULL = name -> checkNotNull(name, "name"); + NameValidator NOT_NULL = name -> requireNonNull(name, "name"); } @SuppressWarnings("unchecked") @@ -98,9 +98,9 @@ public class DefaultHeaders> implements Headers @SuppressWarnings("unchecked") public DefaultHeaders(HashingStrategy nameHashingStrategy, ValueConverter valueConverter, NameValidator nameValidator, int arraySizeHint) { - this.valueConverter = checkNotNull(valueConverter, "valueConverter"); - this.nameValidator = checkNotNull(nameValidator, "nameValidator"); - this.hashingStrategy = checkNotNull(nameHashingStrategy, "nameHashingStrategy"); + this.valueConverter = requireNonNull(valueConverter, "valueConverter"); + this.nameValidator = requireNonNull(nameValidator, "nameValidator"); + this.hashingStrategy = requireNonNull(nameHashingStrategy, "nameHashingStrategy"); // Enforce a bound of [2, 128] because hashMask is a byte. The max possible value of hashMask is one less // than the length of this array, and we want the mask to be > 0. entries = new DefaultHeaders.HeaderEntry[findNextPositivePowerOfTwo(max(2, min(arraySizeHint, 128)))]; @@ -110,7 +110,7 @@ public class DefaultHeaders> implements Headers @Override public V get(K name) { - checkNotNull(name, "name"); + requireNonNull(name, "name"); int h = hashingStrategy.hashCode(name); int i = index(h); @@ -139,7 +139,7 @@ public class DefaultHeaders> implements Headers @Override public V getAndRemove(K name) { int h = hashingStrategy.hashCode(name); - return remove0(h, index(h), checkNotNull(name, "name")); + return remove0(h, index(h), requireNonNull(name, "name")); } @Override @@ -153,7 +153,7 @@ public class DefaultHeaders> implements Headers @Override public List getAll(K name) { - checkNotNull(name, "name"); + requireNonNull(name, "name"); LinkedList values = new LinkedList<>(); @@ -192,7 +192,7 @@ public class DefaultHeaders> implements Headers @Override public boolean containsObject(K name, Object value) { - return contains(name, valueConverter.convertObject(checkNotNull(value, "value"))); + return contains(name, valueConverter.convertObject(requireNonNull(value, "value"))); } @Override @@ -247,7 +247,7 @@ public class DefaultHeaders> implements Headers } public final boolean contains(K name, V value, HashingStrategy valueHashingStrategy) { - checkNotNull(name, "name"); + requireNonNull(name, "name"); int h = hashingStrategy.hashCode(name); int i = index(h); @@ -288,7 +288,7 @@ public class DefaultHeaders> implements Headers @Override public T add(K name, V value) { nameValidator.validateName(name); - checkNotNull(value, "value"); + requireNonNull(value, "value"); int h = hashingStrategy.hashCode(name); int i = index(h); add0(h, i, name, value); @@ -319,7 +319,7 @@ public class DefaultHeaders> implements Headers @Override public T addObject(K name, Object value) { - return add(name, valueConverter.convertObject(checkNotNull(value, "value"))); + return add(name, valueConverter.convertObject(requireNonNull(value, "value"))); } @Override @@ -423,7 +423,7 @@ public class DefaultHeaders> implements Headers @Override public T set(K name, V value) { nameValidator.validateName(name); - checkNotNull(value, "value"); + requireNonNull(value, "value"); int h = hashingStrategy.hashCode(name); int i = index(h); remove0(h, i, name); @@ -434,7 +434,7 @@ public class DefaultHeaders> implements Headers @Override public T set(K name, Iterable values) { nameValidator.validateName(name); - checkNotNull(values, "values"); + requireNonNull(values, "values"); int h = hashingStrategy.hashCode(name); int i = index(h); @@ -453,7 +453,7 @@ public class DefaultHeaders> implements Headers @Override public T set(K name, V... values) { nameValidator.validateName(name); - checkNotNull(values, "values"); + requireNonNull(values, "values"); int h = hashingStrategy.hashCode(name); int i = index(h); @@ -471,8 +471,8 @@ public class DefaultHeaders> implements Headers @Override public T setObject(K name, Object value) { - checkNotNull(value, "value"); - V convertedValue = checkNotNull(valueConverter.convertObject(value), "convertedValue"); + requireNonNull(value, "value"); + V convertedValue = requireNonNull(valueConverter.convertObject(value), "convertedValue"); return set(name, convertedValue); } @@ -1053,7 +1053,7 @@ public class DefaultHeaders> implements Headers private HeaderEntry next; ValueIterator(K name) { - this.name = checkNotNull(name, "name"); + this.name = requireNonNull(name, "name"); hash = hashingStrategy.hashCode(name); calculateNext(entries[index(hash)]); } @@ -1155,7 +1155,7 @@ public class DefaultHeaders> implements Headers @Override public final V setValue(V value) { - checkNotNull(value, "value"); + requireNonNull(value, "value"); V oldValue = this.value; this.value = value; return oldValue; diff --git a/codec/src/main/java/io/netty/handler/codec/DelimiterBasedFrameDecoder.java b/codec/src/main/java/io/netty/handler/codec/DelimiterBasedFrameDecoder.java index 2fb6fec729..8c06dd85c1 100644 --- a/codec/src/main/java/io/netty/handler/codec/DelimiterBasedFrameDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/DelimiterBasedFrameDecoder.java @@ -16,6 +16,7 @@ package io.netty.handler.codec; import static io.netty.util.internal.ObjectUtil.checkPositive; +import static java.util.Objects.requireNonNull; import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; @@ -166,9 +167,7 @@ public class DelimiterBasedFrameDecoder extends ByteToMessageDecoder { public DelimiterBasedFrameDecoder( int maxFrameLength, boolean stripDelimiter, boolean failFast, ByteBuf... delimiters) { validateMaxFrameLength(maxFrameLength); - if (delimiters == null) { - throw new NullPointerException("delimiters"); - } + requireNonNull(delimiters, "delimiters"); if (delimiters.length == 0) { throw new IllegalArgumentException("empty delimiters"); } @@ -339,9 +338,7 @@ public class DelimiterBasedFrameDecoder extends ByteToMessageDecoder { } private static void validateDelimiter(ByteBuf delimiter) { - if (delimiter == null) { - throw new NullPointerException("delimiter"); - } + requireNonNull(delimiter, "delimiter"); if (!delimiter.isReadable()) { throw new IllegalArgumentException("empty delimiter"); } diff --git a/codec/src/main/java/io/netty/handler/codec/HeadersUtils.java b/codec/src/main/java/io/netty/handler/codec/HeadersUtils.java index 385ba157bd..2bc4d705e1 100644 --- a/codec/src/main/java/io/netty/handler/codec/HeadersUtils.java +++ b/codec/src/main/java/io/netty/handler/codec/HeadersUtils.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec; +import static java.util.Objects.requireNonNull; + import java.util.AbstractCollection; import java.util.AbstractList; import java.util.Collection; @@ -23,8 +25,6 @@ import java.util.List; import java.util.Map.Entry; import java.util.Set; -import static io.netty.util.internal.ObjectUtil.checkNotNull; - /** * Provides utility methods related to {@link Headers}. */ @@ -212,7 +212,7 @@ public final class HeadersUtils { protected final Set allNames; DelegatingStringSet(Set allNames) { - this.allNames = checkNotNull(allNames, "allNames"); + this.allNames = requireNonNull(allNames, "allNames"); } @Override diff --git a/codec/src/main/java/io/netty/handler/codec/LengthFieldBasedFrameDecoder.java b/codec/src/main/java/io/netty/handler/codec/LengthFieldBasedFrameDecoder.java index b2a5cac49b..497f92c683 100644 --- a/codec/src/main/java/io/netty/handler/codec/LengthFieldBasedFrameDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/LengthFieldBasedFrameDecoder.java @@ -17,6 +17,7 @@ package io.netty.handler.codec; import static io.netty.util.internal.ObjectUtil.checkPositive; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import java.nio.ByteOrder; import java.util.List; @@ -301,9 +302,7 @@ public class LengthFieldBasedFrameDecoder extends ByteToMessageDecoder { public LengthFieldBasedFrameDecoder( ByteOrder byteOrder, int maxFrameLength, int lengthFieldOffset, int lengthFieldLength, int lengthAdjustment, int initialBytesToStrip, boolean failFast) { - if (byteOrder == null) { - throw new NullPointerException("byteOrder"); - } + requireNonNull(byteOrder, "byteOrder"); checkPositive(maxFrameLength, "maxFrameLength"); diff --git a/codec/src/main/java/io/netty/handler/codec/LengthFieldPrepender.java b/codec/src/main/java/io/netty/handler/codec/LengthFieldPrepender.java index b5c787f531..c6d58642cf 100644 --- a/codec/src/main/java/io/netty/handler/codec/LengthFieldPrepender.java +++ b/codec/src/main/java/io/netty/handler/codec/LengthFieldPrepender.java @@ -16,11 +16,11 @@ package io.netty.handler.codec; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandler.Sharable; import io.netty.channel.ChannelHandlerContext; -import io.netty.util.internal.ObjectUtil; import java.nio.ByteOrder; import java.util.List; @@ -150,7 +150,7 @@ public class LengthFieldPrepender extends MessageToMessageEncoder { "lengthFieldLength must be either 1, 2, 3, 4, or 8: " + lengthFieldLength); } - ObjectUtil.checkNotNull(byteOrder, "byteOrder"); + requireNonNull(byteOrder, "byteOrder"); this.byteOrder = byteOrder; this.lengthFieldLength = lengthFieldLength; diff --git a/codec/src/main/java/io/netty/handler/codec/ProtocolDetectionResult.java b/codec/src/main/java/io/netty/handler/codec/ProtocolDetectionResult.java index f06a331a9a..1f967c9c0a 100644 --- a/codec/src/main/java/io/netty/handler/codec/ProtocolDetectionResult.java +++ b/codec/src/main/java/io/netty/handler/codec/ProtocolDetectionResult.java @@ -15,7 +15,7 @@ */ package io.netty.handler.codec; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Result of detecting a protocol. @@ -55,7 +55,7 @@ public final class ProtocolDetectionResult { */ @SuppressWarnings("unchecked") public static ProtocolDetectionResult detected(T protocol) { - return new ProtocolDetectionResult<>(ProtocolDetectionState.DETECTED, checkNotNull(protocol, "protocol")); + return new ProtocolDetectionResult<>(ProtocolDetectionState.DETECTED, requireNonNull(protocol, "protocol")); } private ProtocolDetectionResult(ProtocolDetectionState state, T result) { diff --git a/codec/src/main/java/io/netty/handler/codec/ReplayingDecoderByteBuf.java b/codec/src/main/java/io/netty/handler/codec/ReplayingDecoderByteBuf.java index d5f45b26b9..7000e8d0a6 100644 --- a/codec/src/main/java/io/netty/handler/codec/ReplayingDecoderByteBuf.java +++ b/codec/src/main/java/io/netty/handler/codec/ReplayingDecoderByteBuf.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.buffer.SwappedByteBuf; @@ -461,9 +463,7 @@ final class ReplayingDecoderByteBuf extends ByteBuf { @Override public ByteBuf order(ByteOrder endianness) { - if (endianness == null) { - throw new NullPointerException("endianness"); - } + requireNonNull(endianness, "endianness"); if (endianness == order()) { return this; } diff --git a/codec/src/main/java/io/netty/handler/codec/base64/Base64.java b/codec/src/main/java/io/netty/handler/codec/base64/Base64.java index a4efca2b37..c4d0ced08d 100644 --- a/codec/src/main/java/io/netty/handler/codec/base64/Base64.java +++ b/codec/src/main/java/io/netty/handler/codec/base64/Base64.java @@ -19,6 +19,8 @@ */ package io.netty.handler.codec.base64; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.util.ByteProcessor; @@ -50,23 +52,17 @@ public final class Base64 { private static final byte EQUALS_SIGN_ENC = -1; // Indicates equals sign in encoding private static byte[] alphabet(Base64Dialect dialect) { - if (dialect == null) { - throw new NullPointerException("dialect"); - } + requireNonNull(dialect, "dialect"); return dialect.alphabet; } private static byte[] decodabet(Base64Dialect dialect) { - if (dialect == null) { - throw new NullPointerException("dialect"); - } + requireNonNull(dialect, "dialect"); return dialect.decodabet; } private static boolean breakLines(Base64Dialect dialect) { - if (dialect == null) { - throw new NullPointerException("dialect"); - } + requireNonNull(dialect, "dialect"); return dialect.breakLinesByDefault; } @@ -83,10 +79,7 @@ public final class Base64 { } public static ByteBuf encode(ByteBuf src, boolean breakLines, Base64Dialect dialect) { - - if (src == null) { - throw new NullPointerException("src"); - } + requireNonNull(src, "src"); ByteBuf dest = encode(src, src.readerIndex(), src.readableBytes(), breakLines, dialect); src.readerIndex(src.writerIndex()); @@ -113,12 +106,8 @@ public final class Base64 { public static ByteBuf encode( ByteBuf src, int off, int len, boolean breakLines, Base64Dialect dialect, ByteBufAllocator allocator) { - if (src == null) { - throw new NullPointerException("src"); - } - if (dialect == null) { - throw new NullPointerException("dialect"); - } + requireNonNull(src, "src"); + requireNonNull(dialect, "dialect"); ByteBuf dest = allocator.buffer(encodedBufferSize(len, breakLines)).order(src.order()); byte[] alphabet = alphabet(dialect); @@ -291,9 +280,7 @@ public final class Base64 { } public static ByteBuf decode(ByteBuf src, Base64Dialect dialect) { - if (src == null) { - throw new NullPointerException("src"); - } + requireNonNull(src, "src"); ByteBuf dest = decode(src, src.readerIndex(), src.readableBytes(), dialect); src.readerIndex(src.writerIndex()); @@ -312,12 +299,8 @@ public final class Base64 { public static ByteBuf decode( ByteBuf src, int off, int len, Base64Dialect dialect, ByteBufAllocator allocator) { - if (src == null) { - throw new NullPointerException("src"); - } - if (dialect == null) { - throw new NullPointerException("dialect"); - } + requireNonNull(src, "src"); + requireNonNull(dialect, "dialect"); // Using a ByteProcessor to reduce bound and reference count checking. return new Decoder().decode(src, off, len, allocator, dialect); diff --git a/codec/src/main/java/io/netty/handler/codec/base64/Base64Decoder.java b/codec/src/main/java/io/netty/handler/codec/base64/Base64Decoder.java index b8d7279062..7ad220917b 100644 --- a/codec/src/main/java/io/netty/handler/codec/base64/Base64Decoder.java +++ b/codec/src/main/java/io/netty/handler/codec/base64/Base64Decoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.base64; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandler.Sharable; import io.netty.channel.ChannelHandlerContext; @@ -53,9 +55,7 @@ public class Base64Decoder extends MessageToMessageDecoder { } public Base64Decoder(Base64Dialect dialect) { - if (dialect == null) { - throw new NullPointerException("dialect"); - } + requireNonNull(dialect, "dialect"); this.dialect = dialect; } diff --git a/codec/src/main/java/io/netty/handler/codec/base64/Base64Encoder.java b/codec/src/main/java/io/netty/handler/codec/base64/Base64Encoder.java index 92c23a5bb7..f4c49f9cd1 100644 --- a/codec/src/main/java/io/netty/handler/codec/base64/Base64Encoder.java +++ b/codec/src/main/java/io/netty/handler/codec/base64/Base64Encoder.java @@ -15,6 +15,10 @@ */ package io.netty.handler.codec.base64; +import static java.util.Objects.requireNonNull; + +import java.util.List; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandler.Sharable; import io.netty.channel.ChannelHandlerContext; @@ -23,8 +27,6 @@ import io.netty.handler.codec.DelimiterBasedFrameDecoder; import io.netty.handler.codec.Delimiters; import io.netty.handler.codec.MessageToMessageEncoder; -import java.util.List; - /** * Encodes a {@link ByteBuf} into a Base64-encoded {@link ByteBuf}. * A typical setup for TCP/IP would be: @@ -54,9 +56,7 @@ public class Base64Encoder extends MessageToMessageEncoder { } public Base64Encoder(boolean breakLines, Base64Dialect dialect) { - if (dialect == null) { - throw new NullPointerException("dialect"); - } + requireNonNull(dialect, "dialect"); this.breakLines = breakLines; this.dialect = dialect; diff --git a/codec/src/main/java/io/netty/handler/codec/compression/ByteBufChecksum.java b/codec/src/main/java/io/netty/handler/codec/compression/ByteBufChecksum.java index a4af6ca232..bd630f7a18 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/ByteBufChecksum.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/ByteBufChecksum.java @@ -15,9 +15,10 @@ */ package io.netty.handler.codec.compression; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.util.ByteProcessor; -import io.netty.util.internal.ObjectUtil; import java.lang.reflect.Method; import java.nio.ByteBuffer; @@ -58,7 +59,7 @@ abstract class ByteBufChecksum implements Checksum { } static ByteBufChecksum wrapChecksum(Checksum checksum) { - ObjectUtil.checkNotNull(checksum, "checksum"); + requireNonNull(checksum, "checksum"); if (checksum instanceof Adler32 && ADLER32_UPDATE_METHOD != null) { return new ReflectiveByteBufChecksum(checksum, ADLER32_UPDATE_METHOD); } diff --git a/codec/src/main/java/io/netty/handler/codec/compression/JZlibDecoder.java b/codec/src/main/java/io/netty/handler/codec/compression/JZlibDecoder.java index 5d23bb8bd6..12012820f5 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/JZlibDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/JZlibDecoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.compression; +import static java.util.Objects.requireNonNull; + import com.jcraft.jzlib.Inflater; import com.jcraft.jzlib.JZlib; import io.netty.buffer.ByteBuf; @@ -43,9 +45,7 @@ public class JZlibDecoder extends ZlibDecoder { * @throws DecompressionException if failed to initialize zlib */ public JZlibDecoder(ZlibWrapper wrapper) { - if (wrapper == null) { - throw new NullPointerException("wrapper"); - } + requireNonNull(wrapper, "wrapper"); int resultCode = z.init(ZlibUtil.convertWrapperType(wrapper)); if (resultCode != JZlib.Z_OK) { @@ -61,9 +61,7 @@ public class JZlibDecoder extends ZlibDecoder { * @throws DecompressionException if failed to initialize zlib */ public JZlibDecoder(byte[] dictionary) { - if (dictionary == null) { - throw new NullPointerException("dictionary"); - } + requireNonNull(dictionary, "dictionary"); this.dictionary = dictionary; int resultCode; diff --git a/codec/src/main/java/io/netty/handler/codec/compression/JZlibEncoder.java b/codec/src/main/java/io/netty/handler/codec/compression/JZlibEncoder.java index b1f8c647c9..a001582de5 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/JZlibEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/JZlibEncoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.compression; +import static java.util.Objects.requireNonNull; + import com.jcraft.jzlib.Deflater; import com.jcraft.jzlib.JZlib; import io.netty.buffer.ByteBuf; @@ -130,9 +132,7 @@ public class JZlibEncoder extends ZlibEncoder { throw new IllegalArgumentException( "memLevel: " + memLevel + " (expected: 1-9)"); } - if (wrapper == null) { - throw new NullPointerException("wrapper"); - } + requireNonNull(wrapper, "wrapper"); if (wrapper == ZlibWrapper.ZLIB_OR_NONE) { throw new IllegalArgumentException( "wrapper '" + ZlibWrapper.ZLIB_OR_NONE + "' is not " + @@ -220,9 +220,7 @@ public class JZlibEncoder extends ZlibEncoder { throw new IllegalArgumentException( "memLevel: " + memLevel + " (expected: 1-9)"); } - if (dictionary == null) { - throw new NullPointerException("dictionary"); - } + requireNonNull(dictionary, "dictionary"); int resultCode; resultCode = z.deflateInit( compressionLevel, windowBits, memLevel, diff --git a/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibDecoder.java b/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibDecoder.java index c90cc4bd98..0fa295ae14 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibDecoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.compression; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; @@ -94,9 +96,7 @@ public class JdkZlibDecoder extends ZlibDecoder { } private JdkZlibDecoder(ZlibWrapper wrapper, byte[] dictionary, boolean decompressConcatenated) { - if (wrapper == null) { - throw new NullPointerException("wrapper"); - } + requireNonNull(wrapper, "wrapper"); this.decompressConcatenated = decompressConcatenated; switch (wrapper) { case GZIP: diff --git a/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibEncoder.java b/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibEncoder.java index 38743f19ce..093ed5569d 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/JdkZlibEncoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.compression; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; @@ -95,9 +97,7 @@ public class JdkZlibEncoder extends ZlibEncoder { throw new IllegalArgumentException( "compressionLevel: " + compressionLevel + " (expected: 0-9)"); } - if (wrapper == null) { - throw new NullPointerException("wrapper"); - } + requireNonNull(wrapper, "wrapper"); if (wrapper == ZlibWrapper.ZLIB_OR_NONE) { throw new IllegalArgumentException( "wrapper '" + ZlibWrapper.ZLIB_OR_NONE + "' is not " + @@ -141,9 +141,7 @@ public class JdkZlibEncoder extends ZlibEncoder { throw new IllegalArgumentException( "compressionLevel: " + compressionLevel + " (expected: 0-9)"); } - if (dictionary == null) { - throw new NullPointerException("dictionary"); - } + requireNonNull(dictionary, "dictionary"); wrapper = ZlibWrapper.ZLIB; deflater = new Deflater(compressionLevel); diff --git a/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameDecoder.java b/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameDecoder.java index addf105df8..0a0ebb3c27 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameDecoder.java @@ -27,6 +27,7 @@ import java.util.List; import java.util.zip.Checksum; import static io.netty.handler.codec.compression.Lz4Constants.*; +import static java.util.Objects.requireNonNull; /** * Uncompresses a {@link ByteBuf} encoded with the LZ4 format. @@ -139,9 +140,7 @@ public class Lz4FrameDecoder extends ByteToMessageDecoder { * You may set {@code null} if you do not want to validate checksum of each block */ public Lz4FrameDecoder(LZ4Factory factory, Checksum checksum) { - if (factory == null) { - throw new NullPointerException("factory"); - } + requireNonNull(factory, "factory"); decompressor = factory.fastDecompressor(); this.checksum = checksum == null ? null : ByteBufChecksum.wrapChecksum(checksum); } diff --git a/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java b/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java index 6204c362e4..3625c79486 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java @@ -51,6 +51,7 @@ import static io.netty.handler.codec.compression.Lz4Constants.MAX_BLOCK_SIZE; import static io.netty.handler.codec.compression.Lz4Constants.MIN_BLOCK_SIZE; import static io.netty.handler.codec.compression.Lz4Constants.TOKEN_OFFSET; import static io.netty.util.internal.ThrowableUtil.unknownStackTrace; +import static java.util.Objects.requireNonNull; /** * Compresses a {@link ByteBuf} using the LZ4 format. @@ -164,12 +165,8 @@ public class Lz4FrameEncoder extends MessageToByteEncoder { */ public Lz4FrameEncoder(LZ4Factory factory, boolean highCompressor, int blockSize, Checksum checksum, int maxEncodeSize) { - if (factory == null) { - throw new NullPointerException("factory"); - } - if (checksum == null) { - throw new NullPointerException("checksum"); - } + requireNonNull(factory, "factory"); + requireNonNull(checksum, "checksum"); compressor = highCompressor ? factory.highCompressor() : factory.fastCompressor(); this.checksum = ByteBufChecksum.wrapChecksum(checksum); diff --git a/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoder.java b/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoder.java index 9ef56f11d4..3710d3275d 100644 --- a/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.protobuf; +import static java.util.Objects.requireNonNull; + import com.google.protobuf.ExtensionRegistry; import com.google.protobuf.ExtensionRegistryLite; import com.google.protobuf.Message; @@ -95,16 +97,13 @@ public class ProtobufDecoder extends MessageToMessageDecoder { } public ProtobufDecoder(MessageLite prototype, ExtensionRegistryLite extensionRegistry) { - if (prototype == null) { - throw new NullPointerException("prototype"); - } + requireNonNull(prototype, "prototype"); this.prototype = prototype.getDefaultInstanceForType(); this.extensionRegistry = extensionRegistry; } @Override - protected void decode(ChannelHandlerContext ctx, ByteBuf msg, List out) - throws Exception { + protected void decode(ChannelHandlerContext ctx, ByteBuf msg, List out) throws Exception { final byte[] array; final int offset; final int length = msg.readableBytes(); diff --git a/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoderNano.java b/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoderNano.java index 0d6685c979..9fc3f4d4ff 100644 --- a/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoderNano.java +++ b/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufDecoderNano.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.protobuf; +import static java.util.Objects.requireNonNull; + import com.google.protobuf.nano.MessageNano; import java.util.List; @@ -27,7 +29,6 @@ import io.netty.channel.ChannelPipeline; import io.netty.handler.codec.ByteToMessageDecoder; import io.netty.handler.codec.LengthFieldBasedFrameDecoder; import io.netty.handler.codec.MessageToMessageDecoder; -import io.netty.util.internal.ObjectUtil; /** * Decodes a received {@link ByteBuf} into a @@ -66,7 +67,7 @@ public class ProtobufDecoderNano extends MessageToMessageDecoder { * Creates a new instance. */ public ProtobufDecoderNano(Class clazz) { - this.clazz = ObjectUtil.checkNotNull(clazz, "You must provide a Class"); + this.clazz = requireNonNull(clazz, "You must provide a Class"); } @Override diff --git a/codec/src/main/java/io/netty/handler/codec/serialization/ObjectDecoderInputStream.java b/codec/src/main/java/io/netty/handler/codec/serialization/ObjectDecoderInputStream.java index ef705ae455..7a6071beaa 100644 --- a/codec/src/main/java/io/netty/handler/codec/serialization/ObjectDecoderInputStream.java +++ b/codec/src/main/java/io/netty/handler/codec/serialization/ObjectDecoderInputStream.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.serialization; +import static java.util.Objects.requireNonNull; + import java.io.BufferedReader; import java.io.DataInputStream; import java.io.IOException; @@ -88,9 +90,7 @@ public class ObjectDecoderInputStream extends InputStream implements * a {@link StreamCorruptedException} will be raised. */ public ObjectDecoderInputStream(InputStream in, ClassLoader classLoader, int maxObjectSize) { - if (in == null) { - throw new NullPointerException("in"); - } + requireNonNull(in, "in"); if (maxObjectSize <= 0) { throw new IllegalArgumentException("maxObjectSize: " + maxObjectSize); } diff --git a/codec/src/main/java/io/netty/handler/codec/serialization/ObjectEncoderOutputStream.java b/codec/src/main/java/io/netty/handler/codec/serialization/ObjectEncoderOutputStream.java index 5f090e30de..4ad831edb4 100644 --- a/codec/src/main/java/io/netty/handler/codec/serialization/ObjectEncoderOutputStream.java +++ b/codec/src/main/java/io/netty/handler/codec/serialization/ObjectEncoderOutputStream.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.serialization; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufOutputStream; import io.netty.buffer.Unpooled; @@ -63,9 +65,7 @@ public class ObjectEncoderOutputStream extends OutputStream implements * cost, please specify the properly estimated value. */ public ObjectEncoderOutputStream(OutputStream out, int estimatedLength) { - if (out == null) { - throw new NullPointerException("out"); - } + requireNonNull(out, "out"); if (estimatedLength < 0) { throw new IllegalArgumentException("estimatedLength: " + estimatedLength); } diff --git a/codec/src/main/java/io/netty/handler/codec/string/LineEncoder.java b/codec/src/main/java/io/netty/handler/codec/string/LineEncoder.java index 4b605567f5..bdb9383a3a 100644 --- a/codec/src/main/java/io/netty/handler/codec/string/LineEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/string/LineEncoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.string; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; import io.netty.channel.ChannelHandler.Sharable; @@ -23,7 +25,6 @@ import io.netty.channel.ChannelPipeline; import io.netty.handler.codec.LineBasedFrameDecoder; import io.netty.handler.codec.MessageToMessageEncoder; import io.netty.util.CharsetUtil; -import io.netty.util.internal.ObjectUtil; import java.nio.CharBuffer; import java.nio.charset.Charset; @@ -81,8 +82,8 @@ public class LineEncoder extends MessageToMessageEncoder { * Creates a new instance with the specified line separator and character set. */ public LineEncoder(LineSeparator lineSeparator, Charset charset) { - this.charset = ObjectUtil.checkNotNull(charset, "charset"); - this.lineSeparator = ObjectUtil.checkNotNull(lineSeparator, "lineSeparator").value().getBytes(charset); + this.charset = requireNonNull(charset, "charset"); + this.lineSeparator = requireNonNull(lineSeparator, "lineSeparator").value().getBytes(charset); } @Override diff --git a/codec/src/main/java/io/netty/handler/codec/string/LineSeparator.java b/codec/src/main/java/io/netty/handler/codec/string/LineSeparator.java index d853741d11..b38b2a2149 100644 --- a/codec/src/main/java/io/netty/handler/codec/string/LineSeparator.java +++ b/codec/src/main/java/io/netty/handler/codec/string/LineSeparator.java @@ -15,9 +15,10 @@ */ package io.netty.handler.codec.string; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufUtil; import io.netty.util.CharsetUtil; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; /** @@ -46,7 +47,7 @@ public final class LineSeparator { * Create {@link LineSeparator} with the specified {@code lineSeparator} string. */ public LineSeparator(String lineSeparator) { - this.value = ObjectUtil.checkNotNull(lineSeparator, "lineSeparator"); + this.value = requireNonNull(lineSeparator, "lineSeparator"); } /** diff --git a/codec/src/main/java/io/netty/handler/codec/string/StringDecoder.java b/codec/src/main/java/io/netty/handler/codec/string/StringDecoder.java index 0f219ae41b..0efa75c2cc 100644 --- a/codec/src/main/java/io/netty/handler/codec/string/StringDecoder.java +++ b/codec/src/main/java/io/netty/handler/codec/string/StringDecoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.string; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandler.Sharable; import io.netty.channel.ChannelHandlerContext; @@ -68,9 +70,7 @@ public class StringDecoder extends MessageToMessageDecoder { * Creates a new instance with the specified character set. */ public StringDecoder(Charset charset) { - if (charset == null) { - throw new NullPointerException("charset"); - } + requireNonNull(charset, "charset"); this.charset = charset; } diff --git a/codec/src/main/java/io/netty/handler/codec/string/StringEncoder.java b/codec/src/main/java/io/netty/handler/codec/string/StringEncoder.java index 9177faece1..5e5279e0ed 100644 --- a/codec/src/main/java/io/netty/handler/codec/string/StringEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/string/StringEncoder.java @@ -15,6 +15,8 @@ */ package io.netty.handler.codec.string; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; import io.netty.channel.ChannelHandler.Sharable; @@ -65,9 +67,7 @@ public class StringEncoder extends MessageToMessageEncoder { * Creates a new instance with the specified character set. */ public StringEncoder(Charset charset) { - if (charset == null) { - throw new NullPointerException("charset"); - } + requireNonNull(charset, "charset"); this.charset = charset; } diff --git a/common/src/main/java/io/netty/util/AsciiString.java b/common/src/main/java/io/netty/util/AsciiString.java index 302b36e89b..34cec92b00 100644 --- a/common/src/main/java/io/netty/util/AsciiString.java +++ b/common/src/main/java/io/netty/util/AsciiString.java @@ -30,7 +30,7 @@ import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; import static io.netty.util.internal.MathUtil.isOutOfBounds; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A string which has been encoded into a character encoding whose character always takes a single byte, similarly to @@ -413,7 +413,7 @@ public final class AsciiString implements CharSequence, Comparable + length + ") <= srcLen(" + length() + ')'); } - System.arraycopy(value, srcIdx + offset, checkNotNull(dst, "dst"), dstIdx, length); + System.arraycopy(value, srcIdx + offset, requireNonNull(dst, "dst"), dstIdx, length); } @Override @@ -585,9 +585,7 @@ public final class AsciiString implements CharSequence, Comparable * @param length the number of characters to copy. */ public void copy(int srcIdx, char[] dst, int dstIdx, int length) { - if (dst == null) { - throw new NullPointerException("dst"); - } + requireNonNull(dst, "dst"); if (isOutOfBounds(srcIdx, length, length())) { throw new IndexOutOfBoundsException("expected: " + "0 <= srcIdx(" + srcIdx + ") <= srcIdx + length(" @@ -799,9 +797,7 @@ public final class AsciiString implements CharSequence, Comparable * @throws NullPointerException if {@code string} is {@code null}. */ public boolean regionMatches(int thisStart, CharSequence string, int start, int length) { - if (string == null) { - throw new NullPointerException("string"); - } + requireNonNull(string, "string"); if (start < 0 || string.length() - start < length) { return false; @@ -842,9 +838,7 @@ public final class AsciiString implements CharSequence, Comparable return regionMatches(thisStart, string, start, length); } - if (string == null) { - throw new NullPointerException("string"); - } + requireNonNull(string, "string"); final int thisLen = length(); if (thisStart < 0 || length > thisLen - thisStart) { diff --git a/common/src/main/java/io/netty/util/CharsetUtil.java b/common/src/main/java/io/netty/util/CharsetUtil.java index dd19ecd3cb..330211474f 100644 --- a/common/src/main/java/io/netty/util/CharsetUtil.java +++ b/common/src/main/java/io/netty/util/CharsetUtil.java @@ -16,7 +16,7 @@ package io.netty.util; import io.netty.util.internal.InternalThreadLocalMap; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import java.nio.charset.Charset; import java.nio.charset.CharsetDecoder; @@ -81,7 +81,7 @@ public final class CharsetUtil { */ public static CharsetEncoder encoder(Charset charset, CodingErrorAction malformedInputAction, CodingErrorAction unmappableCharacterAction) { - checkNotNull(charset, "charset"); + requireNonNull(charset, "charset"); CharsetEncoder e = charset.newEncoder(); e.onMalformedInput(malformedInputAction).onUnmappableCharacter(unmappableCharacterAction); return e; @@ -105,7 +105,7 @@ public final class CharsetUtil { * @return The encoder for the specified {@code charset} */ public static CharsetEncoder encoder(Charset charset) { - checkNotNull(charset, "charset"); + requireNonNull(charset, "charset"); Map map = InternalThreadLocalMap.get().charsetEncoderCache(); CharsetEncoder e = map.get(charset); @@ -137,7 +137,7 @@ public final class CharsetUtil { */ public static CharsetDecoder decoder(Charset charset, CodingErrorAction malformedInputAction, CodingErrorAction unmappableCharacterAction) { - checkNotNull(charset, "charset"); + requireNonNull(charset, "charset"); CharsetDecoder d = charset.newDecoder(); d.onMalformedInput(malformedInputAction).onUnmappableCharacter(unmappableCharacterAction); return d; @@ -161,7 +161,7 @@ public final class CharsetUtil { * @return The decoder for the specified {@code charset} */ public static CharsetDecoder decoder(Charset charset) { - checkNotNull(charset, "charset"); + requireNonNull(charset, "charset"); Map map = InternalThreadLocalMap.get().charsetDecoderCache(); CharsetDecoder d = map.get(charset); diff --git a/common/src/main/java/io/netty/util/ConstantPool.java b/common/src/main/java/io/netty/util/ConstantPool.java index 8b67dca402..ca98fccd0b 100644 --- a/common/src/main/java/io/netty/util/ConstantPool.java +++ b/common/src/main/java/io/netty/util/ConstantPool.java @@ -16,7 +16,7 @@ package io.netty.util; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; @@ -37,12 +37,8 @@ public abstract class ConstantPool> { * Shortcut of {@link #valueOf(String) valueOf(firstNameComponent.getName() + "#" + secondNameComponent)}. */ public T valueOf(Class firstNameComponent, String secondNameComponent) { - if (firstNameComponent == null) { - throw new NullPointerException("firstNameComponent"); - } - if (secondNameComponent == null) { - throw new NullPointerException("secondNameComponent"); - } + requireNonNull(firstNameComponent, "firstNameComponent"); + requireNonNull(secondNameComponent, "secondNameComponent"); return valueOf(firstNameComponent.getName() + '#' + secondNameComponent); } @@ -114,7 +110,7 @@ public abstract class ConstantPool> { } private static String checkNotNullAndNotEmpty(String name) { - ObjectUtil.checkNotNull(name, "name"); + requireNonNull(name, "name"); if (name.isEmpty()) { throw new IllegalArgumentException("empty name"); diff --git a/common/src/main/java/io/netty/util/DefaultAttributeMap.java b/common/src/main/java/io/netty/util/DefaultAttributeMap.java index df20dfd27f..d19b9474cd 100644 --- a/common/src/main/java/io/netty/util/DefaultAttributeMap.java +++ b/common/src/main/java/io/netty/util/DefaultAttributeMap.java @@ -15,6 +15,8 @@ */ package io.netty.util; +import static java.util.Objects.requireNonNull; + import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReferenceArray; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; @@ -39,9 +41,7 @@ public class DefaultAttributeMap implements AttributeMap { @SuppressWarnings("unchecked") @Override public Attribute attr(AttributeKey key) { - if (key == null) { - throw new NullPointerException("key"); - } + requireNonNull(key, "key"); AtomicReferenceArray> attributes = this.attributes; if (attributes == null) { // Not using ConcurrentHashMap due to high memory consumption. @@ -90,9 +90,7 @@ public class DefaultAttributeMap implements AttributeMap { @Override public boolean hasAttr(AttributeKey key) { - if (key == null) { - throw new NullPointerException("key"); - } + requireNonNull(key, "key"); AtomicReferenceArray> attributes = this.attributes; if (attributes == null) { // no attribute exists diff --git a/common/src/main/java/io/netty/util/DomainNameMapping.java b/common/src/main/java/io/netty/util/DomainNameMapping.java index 562acea602..ebd596ab34 100644 --- a/common/src/main/java/io/netty/util/DomainNameMapping.java +++ b/common/src/main/java/io/netty/util/DomainNameMapping.java @@ -24,8 +24,8 @@ import java.util.LinkedHashMap; import java.util.Locale; import java.util.Map; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.StringUtil.commonSuffixOfLength; +import static java.util.Objects.requireNonNull; /** * Maps a domain name to its associated value object. @@ -66,7 +66,7 @@ public class DomainNameMapping implements Mapping { } DomainNameMapping(Map map, V defaultValue) { - this.defaultValue = checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = requireNonNull(defaultValue, "defaultValue"); this.map = map; unmodifiableMap = map != null ? Collections.unmodifiableMap(map) : null; @@ -86,7 +86,7 @@ public class DomainNameMapping implements Mapping { */ @Deprecated public DomainNameMapping add(String hostname, V output) { - map.put(normalizeHostname(checkNotNull(hostname, "hostname")), checkNotNull(output, "output")); + map.put(normalizeHostname(requireNonNull(hostname, "hostname")), requireNonNull(output, "output")); return this; } diff --git a/common/src/main/java/io/netty/util/DomainNameMappingBuilder.java b/common/src/main/java/io/netty/util/DomainNameMappingBuilder.java index bcd64b78fd..cb0a78e260 100644 --- a/common/src/main/java/io/netty/util/DomainNameMappingBuilder.java +++ b/common/src/main/java/io/netty/util/DomainNameMappingBuilder.java @@ -21,7 +21,7 @@ import java.util.LinkedHashMap; import java.util.Map; import java.util.Set; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Builder for immutable {@link DomainNameMapping} instances. @@ -51,7 +51,7 @@ public final class DomainNameMappingBuilder { * when nothing matches the input */ public DomainNameMappingBuilder(int initialCapacity, V defaultValue) { - this.defaultValue = checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = requireNonNull(defaultValue, "defaultValue"); map = new LinkedHashMap<>(initialCapacity); } @@ -68,7 +68,7 @@ public final class DomainNameMappingBuilder { * when the specified host name matches the specified input host name */ public DomainNameMappingBuilder add(String hostname, V output) { - map.put(checkNotNull(hostname, "hostname"), checkNotNull(output, "output")); + map.put(requireNonNull(hostname, "hostname"), requireNonNull(output, "output")); return this; } diff --git a/common/src/main/java/io/netty/util/HashedWheelTimer.java b/common/src/main/java/io/netty/util/HashedWheelTimer.java index 324c1d1670..07ca9790fa 100644 --- a/common/src/main/java/io/netty/util/HashedWheelTimer.java +++ b/common/src/main/java/io/netty/util/HashedWheelTimer.java @@ -34,6 +34,7 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.concurrent.atomic.AtomicLong; import static io.netty.util.internal.StringUtil.simpleClassName; +import static java.util.Objects.requireNonNull; /** * A {@link Timer} optimized for approximated I/O timeout scheduling. @@ -241,13 +242,8 @@ public class HashedWheelTimer implements Timer { ThreadFactory threadFactory, long tickDuration, TimeUnit unit, int ticksPerWheel, boolean leakDetection, long maxPendingTimeouts) { - - if (threadFactory == null) { - throw new NullPointerException("threadFactory"); - } - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(threadFactory, "threadFactory"); + requireNonNull(unit, "unit"); if (tickDuration <= 0) { throw new IllegalArgumentException("tickDuration must be greater than 0: " + tickDuration); } @@ -410,12 +406,8 @@ public class HashedWheelTimer implements Timer { @Override public Timeout newTimeout(TimerTask task, long delay, TimeUnit unit) { - if (task == null) { - throw new NullPointerException("task"); - } - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(task, "taks"); + requireNonNull(unit, "unit"); long pendingTimeoutsCount = pendingTimeouts.incrementAndGet(); diff --git a/common/src/main/java/io/netty/util/ResourceLeakDetector.java b/common/src/main/java/io/netty/util/ResourceLeakDetector.java index 942d519baa..91f056c85f 100644 --- a/common/src/main/java/io/netty/util/ResourceLeakDetector.java +++ b/common/src/main/java/io/netty/util/ResourceLeakDetector.java @@ -37,6 +37,7 @@ import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; import static io.netty.util.internal.StringUtil.EMPTY_STRING; import static io.netty.util.internal.StringUtil.NEWLINE; import static io.netty.util.internal.StringUtil.simpleClassName; +import static java.util.Objects.requireNonNull; public class ResourceLeakDetector { @@ -149,9 +150,7 @@ public class ResourceLeakDetector { * Sets the resource leak detection level. */ public static void setLevel(Level level) { - if (level == null) { - throw new NullPointerException("level"); - } + requireNonNull(level, "level"); ResourceLeakDetector.level = level; } @@ -218,9 +217,7 @@ public class ResourceLeakDetector { */ @Deprecated public ResourceLeakDetector(String resourceType, int samplingInterval, long maxActive) { - if (resourceType == null) { - throw new NullPointerException("resourceType"); - } + requireNonNull(resourceType, "resourceType"); this.resourceType = resourceType; this.samplingInterval = samplingInterval; diff --git a/common/src/main/java/io/netty/util/ResourceLeakDetectorFactory.java b/common/src/main/java/io/netty/util/ResourceLeakDetectorFactory.java index c69ac8f7dd..666324f57a 100644 --- a/common/src/main/java/io/netty/util/ResourceLeakDetectorFactory.java +++ b/common/src/main/java/io/netty/util/ResourceLeakDetectorFactory.java @@ -16,7 +16,8 @@ package io.netty.util; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.PlatformDependent; import io.netty.util.internal.SystemPropertyUtil; import io.netty.util.internal.logging.InternalLogger; @@ -51,7 +52,7 @@ public abstract class ResourceLeakDetectorFactory { * @param factory the instance that will become the current {@link ResourceLeakDetectorFactory}'s singleton */ public static void setResourceLeakDetectorFactory(ResourceLeakDetectorFactory factory) { - factoryInstance = ObjectUtil.checkNotNull(factory, "factory"); + factoryInstance = requireNonNull(factory, "factory"); } /** diff --git a/common/src/main/java/io/netty/util/ThreadDeathWatcher.java b/common/src/main/java/io/netty/util/ThreadDeathWatcher.java index 1d09d35a63..945986daa1 100644 --- a/common/src/main/java/io/netty/util/ThreadDeathWatcher.java +++ b/common/src/main/java/io/netty/util/ThreadDeathWatcher.java @@ -16,6 +16,8 @@ package io.netty.util; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.DefaultThreadFactory; import io.netty.util.internal.StringUtil; import io.netty.util.internal.SystemPropertyUtil; @@ -77,12 +79,8 @@ public final class ThreadDeathWatcher { * @throws IllegalArgumentException if the specified {@code thread} is not alive */ public static void watch(Thread thread, Runnable task) { - if (thread == null) { - throw new NullPointerException("thread"); - } - if (task == null) { - throw new NullPointerException("task"); - } + requireNonNull(thread, "thread"); + requireNonNull(task, "task"); if (!thread.isAlive()) { throw new IllegalArgumentException("thread must be alive."); } @@ -94,12 +92,8 @@ public final class ThreadDeathWatcher { * Cancels the task scheduled via {@link #watch(Thread, Runnable)}. */ public static void unwatch(Thread thread, Runnable task) { - if (thread == null) { - throw new NullPointerException("thread"); - } - if (task == null) { - throw new NullPointerException("task"); - } + requireNonNull(thread, "thread"); + requireNonNull(task, "taks"); schedule(thread, task, false); } @@ -134,9 +128,7 @@ public final class ThreadDeathWatcher { * @return {@code true} if and only if the watcher thread has been terminated */ public static boolean awaitInactivity(long timeout, TimeUnit unit) throws InterruptedException { - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(unit, "unit"); Thread watcherThread = ThreadDeathWatcher.watcherThread; if (watcherThread != null) { diff --git a/common/src/main/java/io/netty/util/concurrent/AbstractScheduledEventExecutor.java b/common/src/main/java/io/netty/util/concurrent/AbstractScheduledEventExecutor.java index dbb2b1e76f..49b2fcf7f5 100644 --- a/common/src/main/java/io/netty/util/concurrent/AbstractScheduledEventExecutor.java +++ b/common/src/main/java/io/netty/util/concurrent/AbstractScheduledEventExecutor.java @@ -15,8 +15,9 @@ */ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.DefaultPriorityQueue; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.PriorityQueue; import io.netty.util.internal.PriorityQueueNode; @@ -165,8 +166,8 @@ public abstract class AbstractScheduledEventExecutor extends AbstractEventExecut @Override public ScheduledFuture schedule(Runnable command, long delay, TimeUnit unit) { - ObjectUtil.checkNotNull(command, "command"); - ObjectUtil.checkNotNull(unit, "unit"); + requireNonNull(command, "command"); + requireNonNull(unit, "unit"); if (delay < 0) { delay = 0; } @@ -177,8 +178,8 @@ public abstract class AbstractScheduledEventExecutor extends AbstractEventExecut @Override public ScheduledFuture schedule(Callable callable, long delay, TimeUnit unit) { - ObjectUtil.checkNotNull(callable, "callable"); - ObjectUtil.checkNotNull(unit, "unit"); + requireNonNull(callable, "callable"); + requireNonNull(unit, "unit"); if (delay < 0) { delay = 0; } @@ -188,8 +189,8 @@ public abstract class AbstractScheduledEventExecutor extends AbstractEventExecut @Override public ScheduledFuture scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit) { - ObjectUtil.checkNotNull(command, "command"); - ObjectUtil.checkNotNull(unit, "unit"); + requireNonNull(command, "command"); + requireNonNull(unit, "unit"); if (initialDelay < 0) { throw new IllegalArgumentException( String.format("initialDelay: %d (expected: >= 0)", initialDelay)); @@ -206,8 +207,8 @@ public abstract class AbstractScheduledEventExecutor extends AbstractEventExecut @Override public ScheduledFuture scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit) { - ObjectUtil.checkNotNull(command, "command"); - ObjectUtil.checkNotNull(unit, "unit"); + requireNonNull(command, "command"); + requireNonNull(unit, "unit"); if (initialDelay < 0) { throw new IllegalArgumentException( String.format("initialDelay: %d (expected: >= 0)", initialDelay)); diff --git a/common/src/main/java/io/netty/util/concurrent/CompleteFuture.java b/common/src/main/java/io/netty/util/concurrent/CompleteFuture.java index ed5755f572..2bf4b7869d 100644 --- a/common/src/main/java/io/netty/util/concurrent/CompleteFuture.java +++ b/common/src/main/java/io/netty/util/concurrent/CompleteFuture.java @@ -16,6 +16,8 @@ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import java.util.concurrent.TimeUnit; /** @@ -43,18 +45,14 @@ public abstract class CompleteFuture extends AbstractFuture { @Override public Future addListener(GenericFutureListener> listener) { - if (listener == null) { - throw new NullPointerException("listener"); - } + requireNonNull(listener, "listener"); DefaultPromise.notifyListener(executor(), this, listener); return this; } @Override public Future addListeners(GenericFutureListener>... listeners) { - if (listeners == null) { - throw new NullPointerException("listeners"); - } + requireNonNull(listeners, "listeners"); for (GenericFutureListener> l: listeners) { if (l == null) { break; diff --git a/common/src/main/java/io/netty/util/concurrent/DefaultPromise.java b/common/src/main/java/io/netty/util/concurrent/DefaultPromise.java index a26f0e76d8..966625fdf6 100644 --- a/common/src/main/java/io/netty/util/concurrent/DefaultPromise.java +++ b/common/src/main/java/io/netty/util/concurrent/DefaultPromise.java @@ -27,7 +27,7 @@ import java.util.concurrent.CancellationException; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import static java.util.concurrent.TimeUnit.MILLISECONDS; public class DefaultPromise extends AbstractFuture implements Promise { @@ -77,7 +77,7 @@ public class DefaultPromise extends AbstractFuture implements Promise { * */ public DefaultPromise(EventExecutor executor) { - this.executor = checkNotNull(executor, "executor"); + this.executor = requireNonNull(executor, "executor"); } /** @@ -142,7 +142,7 @@ public class DefaultPromise extends AbstractFuture implements Promise { @Override public Promise addListener(GenericFutureListener> listener) { - checkNotNull(listener, "listener"); + requireNonNull(listener, "listener"); synchronized (this) { addListener0(listener); @@ -157,7 +157,7 @@ public class DefaultPromise extends AbstractFuture implements Promise { @Override public Promise addListeners(GenericFutureListener>... listeners) { - checkNotNull(listeners, "listeners"); + requireNonNull(listeners, "listeners"); synchronized (this) { for (GenericFutureListener> listener : listeners) { @@ -177,7 +177,7 @@ public class DefaultPromise extends AbstractFuture implements Promise { @Override public Promise removeListener(final GenericFutureListener> listener) { - checkNotNull(listener, "listener"); + requireNonNull(listener, "listener"); synchronized (this) { removeListener0(listener); @@ -188,7 +188,7 @@ public class DefaultPromise extends AbstractFuture implements Promise { @Override public Promise removeListeners(final GenericFutureListener>... listeners) { - checkNotNull(listeners, "listeners"); + requireNonNull(listeners, "listeners"); synchronized (this) { for (GenericFutureListener> listener : listeners) { @@ -398,9 +398,9 @@ public class DefaultPromise extends AbstractFuture implements Promise { */ protected static void notifyListener( EventExecutor eventExecutor, final Future future, final GenericFutureListener listener) { - checkNotNull(eventExecutor, "eventExecutor"); - checkNotNull(future, "future"); - checkNotNull(listener, "listener"); + requireNonNull(eventExecutor, "eventExecutor"); + requireNonNull(future, "future"); + requireNonNull(listener, "listener"); notifyListenerWithStackOverFlowProtection(eventExecutor, future, listener); } @@ -520,7 +520,7 @@ public class DefaultPromise extends AbstractFuture implements Promise { } private boolean setFailure0(Throwable cause) { - return setValue0(new CauseHolder(checkNotNull(cause, "cause"))); + return setValue0(new CauseHolder(requireNonNull(cause, "cause"))); } private boolean setValue0(Object objResult) { diff --git a/common/src/main/java/io/netty/util/concurrent/DefaultThreadFactory.java b/common/src/main/java/io/netty/util/concurrent/DefaultThreadFactory.java index 15c76582f7..ec996ce690 100644 --- a/common/src/main/java/io/netty/util/concurrent/DefaultThreadFactory.java +++ b/common/src/main/java/io/netty/util/concurrent/DefaultThreadFactory.java @@ -16,6 +16,8 @@ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import java.util.Locale; @@ -64,9 +66,7 @@ public class DefaultThreadFactory implements ThreadFactory { } public static String toPoolName(Class poolType) { - if (poolType == null) { - throw new NullPointerException("poolType"); - } + requireNonNull(poolType, "poolType"); String poolName = StringUtil.simpleClassName(poolType); switch (poolName.length()) { @@ -84,9 +84,7 @@ public class DefaultThreadFactory implements ThreadFactory { } public DefaultThreadFactory(String poolName, boolean daemon, int priority, ThreadGroup threadGroup) { - if (poolName == null) { - throw new NullPointerException("poolName"); - } + requireNonNull(poolName, "poolName"); if (priority < Thread.MIN_PRIORITY || priority > Thread.MAX_PRIORITY) { throw new IllegalArgumentException( "priority: " + priority + " (expected: Thread.MIN_PRIORITY <= priority <= Thread.MAX_PRIORITY)"); diff --git a/common/src/main/java/io/netty/util/concurrent/FailedFuture.java b/common/src/main/java/io/netty/util/concurrent/FailedFuture.java index 31ce888f0d..ac27e86010 100644 --- a/common/src/main/java/io/netty/util/concurrent/FailedFuture.java +++ b/common/src/main/java/io/netty/util/concurrent/FailedFuture.java @@ -15,6 +15,8 @@ */ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.PlatformDependent; /** @@ -34,9 +36,7 @@ public final class FailedFuture extends CompleteFuture { */ public FailedFuture(EventExecutor executor, Throwable cause) { super(executor); - if (cause == null) { - throw new NullPointerException("cause"); - } + requireNonNull(cause, "cause"); this.cause = cause; } diff --git a/common/src/main/java/io/netty/util/concurrent/FastThreadLocalRunnable.java b/common/src/main/java/io/netty/util/concurrent/FastThreadLocalRunnable.java index f2c13e8ac6..61058f709a 100644 --- a/common/src/main/java/io/netty/util/concurrent/FastThreadLocalRunnable.java +++ b/common/src/main/java/io/netty/util/concurrent/FastThreadLocalRunnable.java @@ -15,13 +15,13 @@ */ package io.netty.util.concurrent; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; final class FastThreadLocalRunnable implements Runnable { private final Runnable runnable; private FastThreadLocalRunnable(Runnable runnable) { - this.runnable = ObjectUtil.checkNotNull(runnable, "runnable"); + this.runnable = requireNonNull(runnable, "runnable"); } @Override diff --git a/common/src/main/java/io/netty/util/concurrent/GlobalEventExecutor.java b/common/src/main/java/io/netty/util/concurrent/GlobalEventExecutor.java index f8a2b13fa9..a0920ae5f9 100644 --- a/common/src/main/java/io/netty/util/concurrent/GlobalEventExecutor.java +++ b/common/src/main/java/io/netty/util/concurrent/GlobalEventExecutor.java @@ -15,6 +15,8 @@ */ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -137,9 +139,7 @@ public final class GlobalEventExecutor extends AbstractScheduledEventExecutor { * before. */ private void addTask(Runnable task) { - if (task == null) { - throw new NullPointerException("task"); - } + requireNonNull(task, "task"); taskQueue.add(task); } @@ -193,9 +193,7 @@ public final class GlobalEventExecutor extends AbstractScheduledEventExecutor { * @return {@code true} if and only if the worker thread has been terminated */ public boolean awaitInactivity(long timeout, TimeUnit unit) throws InterruptedException { - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(unit, "unit"); final Thread thread = this.thread; if (thread == null) { @@ -207,9 +205,7 @@ public final class GlobalEventExecutor extends AbstractScheduledEventExecutor { @Override public void execute(Runnable task) { - if (task == null) { - throw new NullPointerException("task"); - } + requireNonNull(task, "task"); addTask(task); if (!inEventLoop()) { diff --git a/common/src/main/java/io/netty/util/concurrent/ImmediateEventExecutor.java b/common/src/main/java/io/netty/util/concurrent/ImmediateEventExecutor.java index c9553b127a..2e05a8472f 100644 --- a/common/src/main/java/io/netty/util/concurrent/ImmediateEventExecutor.java +++ b/common/src/main/java/io/netty/util/concurrent/ImmediateEventExecutor.java @@ -15,6 +15,8 @@ */ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -98,9 +100,7 @@ public final class ImmediateEventExecutor extends AbstractEventExecutor { @Override public void execute(Runnable command) { - if (command == null) { - throw new NullPointerException("command"); - } + requireNonNull(command, "command"); if (!RUNNING.get()) { RUNNING.set(true); try { diff --git a/common/src/main/java/io/netty/util/concurrent/ImmediateExecutor.java b/common/src/main/java/io/netty/util/concurrent/ImmediateExecutor.java index fa68e0b198..6a1dec4910 100644 --- a/common/src/main/java/io/netty/util/concurrent/ImmediateExecutor.java +++ b/common/src/main/java/io/netty/util/concurrent/ImmediateExecutor.java @@ -15,6 +15,8 @@ */ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import java.util.concurrent.Executor; /** @@ -29,9 +31,7 @@ public final class ImmediateExecutor implements Executor { @Override public void execute(Runnable command) { - if (command == null) { - throw new NullPointerException("command"); - } + requireNonNull(command, "command"); command.run(); } } diff --git a/common/src/main/java/io/netty/util/concurrent/NonStickyEventExecutorGroup.java b/common/src/main/java/io/netty/util/concurrent/NonStickyEventExecutorGroup.java index 26c116082d..02738a8d9c 100644 --- a/common/src/main/java/io/netty/util/concurrent/NonStickyEventExecutorGroup.java +++ b/common/src/main/java/io/netty/util/concurrent/NonStickyEventExecutorGroup.java @@ -15,7 +15,9 @@ */ package io.netty.util.concurrent; -import io.netty.util.internal.ObjectUtil; +import static io.netty.util.internal.ObjectUtil.checkPositive; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.PlatformDependent; import io.netty.util.internal.UnstableApi; @@ -56,11 +58,11 @@ public final class NonStickyEventExecutorGroup implements EventExecutorGroup { */ public NonStickyEventExecutorGroup(EventExecutorGroup group, int maxTaskExecutePerRun) { this.group = verify(group); - this.maxTaskExecutePerRun = ObjectUtil.checkPositive(maxTaskExecutePerRun, "maxTaskExecutePerRun"); + this.maxTaskExecutePerRun = checkPositive(maxTaskExecutePerRun, "maxTaskExecutePerRun"); } private static EventExecutorGroup verify(EventExecutorGroup group) { - Iterator executors = ObjectUtil.checkNotNull(group, "group").iterator(); + Iterator executors = requireNonNull(group, "group").iterator(); while (executors.hasNext()) { EventExecutor executor = executors.next(); if (executor instanceof OrderedEventExecutor) { diff --git a/common/src/main/java/io/netty/util/concurrent/PromiseAggregator.java b/common/src/main/java/io/netty/util/concurrent/PromiseAggregator.java index 0788b73532..7a66fa9027 100644 --- a/common/src/main/java/io/netty/util/concurrent/PromiseAggregator.java +++ b/common/src/main/java/io/netty/util/concurrent/PromiseAggregator.java @@ -16,6 +16,8 @@ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import java.util.LinkedHashSet; import java.util.Set; @@ -43,9 +45,7 @@ public class PromiseAggregator> implements GenericFutureL * @param failPending {@code true} to fail pending promises, false to leave them unaffected */ public PromiseAggregator(Promise aggregatePromise, boolean failPending) { - if (aggregatePromise == null) { - throw new NullPointerException("aggregatePromise"); - } + requireNonNull(aggregatePromise, "aggregatePromise"); this.aggregatePromise = aggregatePromise; this.failPending = failPending; } @@ -63,9 +63,7 @@ public class PromiseAggregator> implements GenericFutureL */ @SafeVarargs public final PromiseAggregator add(Promise... promises) { - if (promises == null) { - throw new NullPointerException("promises"); - } + requireNonNull(promises, "promises"); if (promises.length == 0) { return this; } diff --git a/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java b/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java index 6624f05db1..730a9fe205 100644 --- a/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java +++ b/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java @@ -15,7 +15,8 @@ */ package io.netty.util.concurrent; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + /** *

A promise combiner monitors the outcome of a number of discrete futures, then notifies a final, aggregate promise @@ -116,7 +117,7 @@ public final class PromiseCombiner { throw new IllegalStateException("Already finished"); } doneAdding = true; - this.aggregatePromise = ObjectUtil.checkNotNull(aggregatePromise, "aggregatePromise"); + this.aggregatePromise = requireNonNull(aggregatePromise, "aggregatePromise"); if (doneCount == expectedCount) { tryPromise(); } diff --git a/common/src/main/java/io/netty/util/concurrent/PromiseNotifier.java b/common/src/main/java/io/netty/util/concurrent/PromiseNotifier.java index 41e3d035a3..2eeda9aa9e 100644 --- a/common/src/main/java/io/netty/util/concurrent/PromiseNotifier.java +++ b/common/src/main/java/io/netty/util/concurrent/PromiseNotifier.java @@ -19,7 +19,7 @@ import io.netty.util.internal.PromiseNotificationUtil; import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * {@link GenericFutureListener} implementation which takes other {@link Promise}s @@ -52,7 +52,7 @@ public class PromiseNotifier> implements GenericFutureLis */ @SafeVarargs public PromiseNotifier(boolean logNotifyFailure, Promise... promises) { - checkNotNull(promises, "promises"); + requireNonNull(promises, "promises"); for (Promise promise: promises) { if (promise == null) { throw new IllegalArgumentException("promises contains null Promise"); diff --git a/common/src/main/java/io/netty/util/concurrent/RunnableFutureAdapter.java b/common/src/main/java/io/netty/util/concurrent/RunnableFutureAdapter.java index 79370e62ad..8583f6ee3b 100644 --- a/common/src/main/java/io/netty/util/concurrent/RunnableFutureAdapter.java +++ b/common/src/main/java/io/netty/util/concurrent/RunnableFutureAdapter.java @@ -15,7 +15,8 @@ */ package io.netty.util.concurrent; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import java.util.concurrent.Callable; @@ -29,8 +30,8 @@ final class RunnableFutureAdapter implements RunnableFuture { private final Callable task; RunnableFutureAdapter(Promise promise, Callable task) { - this.promise = ObjectUtil.checkNotNull(promise, "promise"); - this.task = ObjectUtil.checkNotNull(task, "task"); + this.promise = requireNonNull(promise, "promise"); + this.task = requireNonNull(task, "task"); } @Override diff --git a/common/src/main/java/io/netty/util/concurrent/RunnableScheduledFutureAdapter.java b/common/src/main/java/io/netty/util/concurrent/RunnableScheduledFutureAdapter.java index 4f35eedbd9..1f81195910 100644 --- a/common/src/main/java/io/netty/util/concurrent/RunnableScheduledFutureAdapter.java +++ b/common/src/main/java/io/netty/util/concurrent/RunnableScheduledFutureAdapter.java @@ -16,8 +16,9 @@ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.DefaultPriorityQueue; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import java.util.concurrent.Callable; @@ -45,9 +46,9 @@ final class RunnableScheduledFutureAdapter implements RunnableScheduledFuture RunnableScheduledFutureAdapter(AbstractScheduledEventExecutor executor, Promise promise, Callable callable, long deadlineNanos, long periodNanos) { - this.executor = ObjectUtil.checkNotNull(executor, "executor"); - this.promise = ObjectUtil.checkNotNull(promise, "promise"); - this.callable = ObjectUtil.checkNotNull(callable, "callable"); + this.executor = requireNonNull(executor, "executor"); + this.promise = requireNonNull(promise, "promise"); + this.callable = requireNonNull(callable, "callable"); this.deadlineNanos = deadlineNanos; this.periodNanos = periodNanos; } diff --git a/common/src/main/java/io/netty/util/concurrent/SingleThreadEventExecutor.java b/common/src/main/java/io/netty/util/concurrent/SingleThreadEventExecutor.java index 870e771bac..3f584bc592 100644 --- a/common/src/main/java/io/netty/util/concurrent/SingleThreadEventExecutor.java +++ b/common/src/main/java/io/netty/util/concurrent/SingleThreadEventExecutor.java @@ -15,7 +15,8 @@ */ package io.netty.util.concurrent; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.PlatformDependent; import io.netty.util.internal.SystemPropertyUtil; import io.netty.util.internal.logging.InternalLogger; @@ -141,10 +142,10 @@ public class SingleThreadEventExecutor extends AbstractScheduledEventExecutor im * @param rejectedHandler the {@link RejectedExecutionHandler} to use. */ public SingleThreadEventExecutor(Executor executor, int maxPendingTasks, RejectedExecutionHandler rejectedHandler) { - this.executor = ObjectUtil.checkNotNull(executor, "executor"); + this.executor = requireNonNull(executor, "executor"); taskQueue = newTaskQueue(Math.max(16, maxPendingTasks)); this.addTaskWakesUp = taskQueue instanceof BlockingQueue; - rejectedExecutionHandler = ObjectUtil.checkNotNull(rejectedHandler, "rejectedHandler"); + rejectedExecutionHandler = requireNonNull(rejectedHandler, "rejectedHandler"); } /** @@ -292,9 +293,7 @@ public class SingleThreadEventExecutor extends AbstractScheduledEventExecutor im * @see Queue#offer(Object) */ protected final boolean offerTask(Runnable task) { - if (task == null) { - throw new NullPointerException("task"); - } + requireNonNull(task, "task"); if (isShutdown()) { reject(); } @@ -509,9 +508,7 @@ public class SingleThreadEventExecutor extends AbstractScheduledEventExecutor im throw new IllegalArgumentException( "timeout: " + timeout + " (expected >= quietPeriod (" + quietPeriod + "))"); } - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(unit, "unit"); if (isShuttingDown()) { return terminationFuture(); @@ -684,9 +681,7 @@ public class SingleThreadEventExecutor extends AbstractScheduledEventExecutor im @Override public final boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException { - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(unit, "unit"); if (inEventLoop()) { throw new IllegalStateException("cannot await termination of the current thread"); @@ -701,9 +696,7 @@ public class SingleThreadEventExecutor extends AbstractScheduledEventExecutor im @Override public void execute(Runnable task) { - if (task == null) { - throw new NullPointerException("task"); - } + requireNonNull(task, "task"); boolean inEventLoop = inEventLoop(); addTask(task); diff --git a/common/src/main/java/io/netty/util/concurrent/ThreadPerTaskExecutor.java b/common/src/main/java/io/netty/util/concurrent/ThreadPerTaskExecutor.java index 21210ae067..42b60ffc5e 100644 --- a/common/src/main/java/io/netty/util/concurrent/ThreadPerTaskExecutor.java +++ b/common/src/main/java/io/netty/util/concurrent/ThreadPerTaskExecutor.java @@ -15,6 +15,8 @@ */ package io.netty.util.concurrent; +import static java.util.Objects.requireNonNull; + import java.util.concurrent.Executor; import java.util.concurrent.ThreadFactory; @@ -22,9 +24,7 @@ public final class ThreadPerTaskExecutor implements Executor { private final ThreadFactory threadFactory; public ThreadPerTaskExecutor(ThreadFactory threadFactory) { - if (threadFactory == null) { - throw new NullPointerException("threadFactory"); - } + requireNonNull(threadFactory, "threadFactory"); this.threadFactory = threadFactory; } diff --git a/common/src/main/java/io/netty/util/concurrent/UnaryPromiseNotifier.java b/common/src/main/java/io/netty/util/concurrent/UnaryPromiseNotifier.java index 9dc3a3c2ba..db647da503 100644 --- a/common/src/main/java/io/netty/util/concurrent/UnaryPromiseNotifier.java +++ b/common/src/main/java/io/netty/util/concurrent/UnaryPromiseNotifier.java @@ -15,7 +15,8 @@ */ package io.netty.util.concurrent; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -24,7 +25,7 @@ public final class UnaryPromiseNotifier implements FutureListener { private final Promise promise; public UnaryPromiseNotifier(Promise promise) { - this.promise = ObjectUtil.checkNotNull(promise, "promise"); + this.promise = requireNonNull(promise, "promise"); } @Override diff --git a/common/src/main/java/io/netty/util/internal/DefaultPriorityQueue.java b/common/src/main/java/io/netty/util/internal/DefaultPriorityQueue.java index 461b944f1b..6fff9c781f 100644 --- a/common/src/main/java/io/netty/util/internal/DefaultPriorityQueue.java +++ b/common/src/main/java/io/netty/util/internal/DefaultPriorityQueue.java @@ -22,6 +22,7 @@ import java.util.Iterator; import java.util.NoSuchElementException; import static io.netty.util.internal.PriorityQueueNode.INDEX_NOT_IN_QUEUE; +import static java.util.Objects.requireNonNull; /** * A priority queue which uses natural ordering of elements. Elements are also required to be of type @@ -37,7 +38,7 @@ public final class DefaultPriorityQueue extends Abs @SuppressWarnings("unchecked") public DefaultPriorityQueue(Comparator comparator, int initialSize) { - this.comparator = ObjectUtil.checkNotNull(comparator, "comparator"); + this.comparator = requireNonNull(comparator, "comparator"); queue = (T[]) (initialSize != 0 ? new PriorityQueueNode[initialSize] : EMPTY_ARRAY); } diff --git a/common/src/main/java/io/netty/util/internal/ObjectCleaner.java b/common/src/main/java/io/netty/util/internal/ObjectCleaner.java index 96b606e8ec..9531f54afe 100644 --- a/common/src/main/java/io/netty/util/internal/ObjectCleaner.java +++ b/common/src/main/java/io/netty/util/internal/ObjectCleaner.java @@ -27,6 +27,7 @@ import java.util.concurrent.atomic.AtomicBoolean; import static io.netty.util.internal.SystemPropertyUtil.getInt; import static java.lang.Math.max; +import static java.util.Objects.requireNonNull; /** * Allows a way to register some {@link Runnable} that will executed once there are no references to an {@link Object} @@ -91,7 +92,7 @@ public final class ObjectCleaner { */ public static void register(Object object, Runnable cleanupTask) { AutomaticCleanerReference reference = new AutomaticCleanerReference(object, - ObjectUtil.checkNotNull(cleanupTask, "cleanupTask")); + requireNonNull(cleanupTask, "cleanupTask")); // Its important to add the reference to the LIVE_SET before we access CLEANER_RUNNING to ensure correct // behavior in multi-threaded environments. LIVE_SET.add(reference); diff --git a/common/src/main/java/io/netty/util/internal/ObjectUtil.java b/common/src/main/java/io/netty/util/internal/ObjectUtil.java index cbac561f32..73d7168d6c 100644 --- a/common/src/main/java/io/netty/util/internal/ObjectUtil.java +++ b/common/src/main/java/io/netty/util/internal/ObjectUtil.java @@ -14,6 +14,8 @@ */ package io.netty.util.internal; +import static java.util.Objects.requireNonNull; + import java.util.Collection; /** @@ -28,6 +30,7 @@ public final class ObjectUtil { * Checks that the given argument is not null. If it is, throws {@link NullPointerException}. * Otherwise, returns the argument. */ + @Deprecated public static T checkNotNull(T arg, String text) { if (arg == null) { throw new NullPointerException(text); @@ -85,7 +88,7 @@ public final class ObjectUtil { * Otherwise, returns the argument. */ public static T[] checkNonEmpty(T[] array, String name) { - checkNotNull(array, name); + requireNonNull(array, name); checkPositive(array.length, name + ".length"); return array; } @@ -96,7 +99,7 @@ public final class ObjectUtil { * Otherwise, returns the argument. */ public static > T checkNonEmpty(T collection, String name) { - checkNotNull(collection, name); + requireNonNull(collection, name); checkPositive(collection.size(), name + ".size"); return collection; } diff --git a/common/src/main/java/io/netty/util/internal/PlatformDependent0.java b/common/src/main/java/io/netty/util/internal/PlatformDependent0.java index b90f47612f..4fd4121b25 100644 --- a/common/src/main/java/io/netty/util/internal/PlatformDependent0.java +++ b/common/src/main/java/io/netty/util/internal/PlatformDependent0.java @@ -28,7 +28,7 @@ import java.nio.ByteBuffer; import java.security.AccessController; import java.security.PrivilegedAction; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The {@link PlatformDependent} operations which requires access to {@code sun.misc.*}. @@ -389,7 +389,7 @@ final class PlatformDependent0 { static void throwException(Throwable cause) { // JVM has been observed to crash when passing a null argument. See https://github.com/netty/netty/issues/4131. - UNSAFE.throwException(checkNotNull(cause, "cause")); + UNSAFE.throwException(requireNonNull(cause, "cause")); } static boolean hasDirectBufferNoCleanerConstructor() { diff --git a/common/src/main/java/io/netty/util/internal/ReadOnlyIterator.java b/common/src/main/java/io/netty/util/internal/ReadOnlyIterator.java index f4843e5ff8..7335d1cf34 100644 --- a/common/src/main/java/io/netty/util/internal/ReadOnlyIterator.java +++ b/common/src/main/java/io/netty/util/internal/ReadOnlyIterator.java @@ -16,15 +16,15 @@ package io.netty.util.internal; +import static java.util.Objects.requireNonNull; + import java.util.Iterator; public final class ReadOnlyIterator implements Iterator { private final Iterator iterator; public ReadOnlyIterator(Iterator iterator) { - if (iterator == null) { - throw new NullPointerException("iterator"); - } + requireNonNull(iterator, "iterator"); this.iterator = iterator; } diff --git a/common/src/main/java/io/netty/util/internal/RecyclableArrayList.java b/common/src/main/java/io/netty/util/internal/RecyclableArrayList.java index bf98f22a1a..3942aad7c7 100644 --- a/common/src/main/java/io/netty/util/internal/RecyclableArrayList.java +++ b/common/src/main/java/io/netty/util/internal/RecyclableArrayList.java @@ -16,6 +16,8 @@ package io.netty.util.internal; +import static java.util.Objects.requireNonNull; + import io.netty.util.Recycler; import io.netty.util.Recycler.Handle; @@ -110,9 +112,7 @@ public final class RecyclableArrayList extends ArrayList { @Override public boolean add(Object element) { - if (element == null) { - throw new NullPointerException("element"); - } + requireNonNull(element, "element"); if (super.add(element)) { insertSinceRecycled = true; return true; @@ -122,18 +122,14 @@ public final class RecyclableArrayList extends ArrayList { @Override public void add(int index, Object element) { - if (element == null) { - throw new NullPointerException("element"); - } + requireNonNull(element, "element"); super.add(index, element); insertSinceRecycled = true; } @Override public Object set(int index, Object element) { - if (element == null) { - throw new NullPointerException("element"); - } + requireNonNull(element, "element"); Object old = super.set(index, element); insertSinceRecycled = true; return old; diff --git a/common/src/main/java/io/netty/util/internal/StringUtil.java b/common/src/main/java/io/netty/util/internal/StringUtil.java index e033137b1b..a039a288f5 100644 --- a/common/src/main/java/io/netty/util/internal/StringUtil.java +++ b/common/src/main/java/io/netty/util/internal/StringUtil.java @@ -19,7 +19,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import static io.netty.util.internal.ObjectUtil.*; +import static java.util.Objects.requireNonNull; /** * String utility class. @@ -281,7 +281,7 @@ public final class StringUtil { * with anonymous classes. */ public static String simpleClassName(Class clazz) { - String className = checkNotNull(clazz, "clazz").getName(); + String className = requireNonNull(clazz, "clazz").getName(); final int lastDotIdx = className.lastIndexOf(PACKAGE_SEPARATOR_CHAR); if (lastDotIdx > -1) { return className.substring(lastDotIdx + 1); @@ -312,7 +312,7 @@ public final class StringUtil { * @return {@link CharSequence} the escaped value if necessary, or the value unchanged */ public static CharSequence escapeCsv(CharSequence value, boolean trimWhiteSpace) { - int length = checkNotNull(value, "value").length(); + int length = requireNonNull(value, "value").length(); int start; int last; if (trimWhiteSpace) { @@ -398,7 +398,7 @@ public final class StringUtil { * @return {@link CharSequence} the unescaped value if necessary, or the value unchanged */ public static CharSequence unescapeCsv(CharSequence value) { - int length = checkNotNull(value, "value").length(); + int length = requireNonNull(value, "value").length(); if (length == 0) { return value; } diff --git a/common/src/main/java/io/netty/util/internal/SystemPropertyUtil.java b/common/src/main/java/io/netty/util/internal/SystemPropertyUtil.java index 0ecc7bb3b7..3fb70e0f3a 100644 --- a/common/src/main/java/io/netty/util/internal/SystemPropertyUtil.java +++ b/common/src/main/java/io/netty/util/internal/SystemPropertyUtil.java @@ -15,6 +15,8 @@ */ package io.netty.util.internal; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -56,9 +58,7 @@ public final class SystemPropertyUtil { * specified property is not allowed. */ public static String get(final String key, String def) { - if (key == null) { - throw new NullPointerException("key"); - } + requireNonNull(key, "key"); if (key.isEmpty()) { throw new IllegalArgumentException("key must not be empty."); } diff --git a/common/src/main/java/io/netty/util/internal/logging/AbstractInternalLogger.java b/common/src/main/java/io/netty/util/internal/logging/AbstractInternalLogger.java index 6486efaf08..b14850f62b 100644 --- a/common/src/main/java/io/netty/util/internal/logging/AbstractInternalLogger.java +++ b/common/src/main/java/io/netty/util/internal/logging/AbstractInternalLogger.java @@ -15,6 +15,8 @@ */ package io.netty.util.internal.logging; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import java.io.ObjectStreamException; @@ -37,9 +39,7 @@ public abstract class AbstractInternalLogger implements InternalLogger, Serializ * Creates a new instance. */ protected AbstractInternalLogger(String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.name = name; } diff --git a/common/src/main/java/io/netty/util/internal/logging/CommonsLogger.java b/common/src/main/java/io/netty/util/internal/logging/CommonsLogger.java index 110f0f1cf9..2143607333 100644 --- a/common/src/main/java/io/netty/util/internal/logging/CommonsLogger.java +++ b/common/src/main/java/io/netty/util/internal/logging/CommonsLogger.java @@ -39,6 +39,8 @@ */ package io.netty.util.internal.logging; +import static java.util.Objects.requireNonNull; + import org.apache.commons.logging.Log; /** @@ -57,9 +59,7 @@ class CommonsLogger extends AbstractInternalLogger { CommonsLogger(Log logger, String name) { super(name); - if (logger == null) { - throw new NullPointerException("logger"); - } + requireNonNull(logger, "logger"); this.logger = logger; } diff --git a/common/src/main/java/io/netty/util/internal/logging/InternalLoggerFactory.java b/common/src/main/java/io/netty/util/internal/logging/InternalLoggerFactory.java index 12c1b5a447..ef9581c47b 100644 --- a/common/src/main/java/io/netty/util/internal/logging/InternalLoggerFactory.java +++ b/common/src/main/java/io/netty/util/internal/logging/InternalLoggerFactory.java @@ -16,6 +16,8 @@ package io.netty.util.internal.logging; +import static java.util.Objects.requireNonNull; + /** * Creates an {@link InternalLogger} or changes the default factory * implementation. This factory allows you to choose what logging framework @@ -73,9 +75,7 @@ public abstract class InternalLoggerFactory { * Changes the default factory. */ public static void setDefaultFactory(InternalLoggerFactory defaultFactory) { - if (defaultFactory == null) { - throw new NullPointerException("defaultFactory"); - } + requireNonNull(defaultFactory, "defaultFactory"); InternalLoggerFactory.defaultFactory = defaultFactory; } diff --git a/example/src/main/java/io/netty/example/http2/Http2ExampleUtil.java b/example/src/main/java/io/netty/example/http2/Http2ExampleUtil.java index 368882a1c6..37500493fa 100644 --- a/example/src/main/java/io/netty/example/http2/Http2ExampleUtil.java +++ b/example/src/main/java/io/netty/example/http2/Http2ExampleUtil.java @@ -14,7 +14,8 @@ */ package io.netty.example.http2; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.handler.codec.http.QueryStringDecoder; @@ -73,7 +74,7 @@ public final class Http2ExampleUtil { * @return the first occurrence of that key in the string parameters */ public static String firstValue(QueryStringDecoder query, String key) { - checkNotNull(query, "Query can't be null!"); + requireNonNull(query, "Query can't be null!"); List values = query.parameters().get(key); if (values == null || values.isEmpty()) { return null; diff --git a/example/src/main/java/io/netty/example/http2/helloworld/server/HelloWorldHttp1Handler.java b/example/src/main/java/io/netty/example/http2/helloworld/server/HelloWorldHttp1Handler.java index f5cfbf1fa7..8bbce8637c 100644 --- a/example/src/main/java/io/netty/example/http2/helloworld/server/HelloWorldHttp1Handler.java +++ b/example/src/main/java/io/netty/example/http2/helloworld/server/HelloWorldHttp1Handler.java @@ -21,7 +21,7 @@ import static io.netty.handler.codec.http.HttpHeaderNames.CONTENT_TYPE; import static io.netty.handler.codec.http.HttpResponseStatus.CONTINUE; import static io.netty.handler.codec.http.HttpResponseStatus.OK; import static io.netty.handler.codec.http.HttpVersion.HTTP_1_1; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; @@ -41,7 +41,7 @@ public class HelloWorldHttp1Handler extends SimpleChannelInboundHandler clazz, LogLevel level) { - if (clazz == null) { - throw new NullPointerException("clazz"); - } - if (level == null) { - throw new NullPointerException("level"); - } + requireNonNull(clazz, "clazz"); + requireNonNull(level, "level"); logger = InternalLoggerFactory.getInstance(clazz); this.level = level; @@ -116,12 +111,8 @@ public class LoggingHandler extends ChannelDuplexHandler { * @param level the log level */ public LoggingHandler(String name, LogLevel level) { - if (name == null) { - throw new NullPointerException("name"); - } - if (level == null) { - throw new NullPointerException("level"); - } + requireNonNull(name, "name"); + requireNonNull(level, "level"); logger = InternalLoggerFactory.getInstance(name); this.level = level; diff --git a/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolConfig.java b/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolConfig.java index 82160e37cf..2ae3811f6e 100644 --- a/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolConfig.java +++ b/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolConfig.java @@ -21,7 +21,7 @@ import java.util.List; import javax.net.ssl.SSLEngine; import static io.netty.handler.ssl.ApplicationProtocolUtil.toList; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Provides an {@link SSLEngine} agnostic way to configure a {@link ApplicationProtocolNegotiator}. @@ -72,10 +72,11 @@ public final class ApplicationProtocolConfig { private ApplicationProtocolConfig( Protocol protocol, SelectorFailureBehavior selectorBehavior, SelectedListenerFailureBehavior selectedBehavior, List supportedProtocols) { - this.supportedProtocols = Collections.unmodifiableList(checkNotNull(supportedProtocols, "supportedProtocols")); - this.protocol = checkNotNull(protocol, "protocol"); - this.selectorBehavior = checkNotNull(selectorBehavior, "selectorBehavior"); - this.selectedBehavior = checkNotNull(selectedBehavior, "selectedBehavior"); + this.supportedProtocols = Collections.unmodifiableList( + requireNonNull(supportedProtocols, "supportedProtocols")); + this.protocol = requireNonNull(protocol, "protocol"); + this.selectorBehavior = requireNonNull(selectorBehavior, "selectorBehavior"); + this.selectedBehavior = requireNonNull(selectedBehavior, "selectedBehavior"); if (protocol == Protocol.NONE) { throw new IllegalArgumentException("protocol (" + Protocol.NONE + ") must not be " + Protocol.NONE + '.'); diff --git a/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolNegotiationHandler.java b/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolNegotiationHandler.java index 0e3ea0f39a..306f4013fc 100644 --- a/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolNegotiationHandler.java +++ b/handler/src/main/java/io/netty/handler/ssl/ApplicationProtocolNegotiationHandler.java @@ -15,12 +15,13 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelInboundHandlerAdapter; import io.netty.channel.ChannelInitializer; import io.netty.channel.ChannelPipeline; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -73,7 +74,7 @@ public abstract class ApplicationProtocolNegotiationHandler extends ChannelInbou * ALPN/NPN negotiation fails or the client does not support ALPN/NPN */ protected ApplicationProtocolNegotiationHandler(String fallbackProtocol) { - this.fallbackProtocol = ObjectUtil.checkNotNull(fallbackProtocol, "fallbackProtocol"); + this.fallbackProtocol = requireNonNull(fallbackProtocol, "fallbackProtocol"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/ConscryptAlpnSslEngine.java b/handler/src/main/java/io/netty/handler/ssl/ConscryptAlpnSslEngine.java index 16eb9c05e5..7004d1faf3 100644 --- a/handler/src/main/java/io/netty/handler/ssl/ConscryptAlpnSslEngine.java +++ b/handler/src/main/java/io/netty/handler/ssl/ConscryptAlpnSslEngine.java @@ -16,8 +16,8 @@ package io.netty.handler.ssl; import static io.netty.handler.ssl.SslUtils.toSSLHandshakeException; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; @@ -107,7 +107,7 @@ abstract class ConscryptAlpnSslEngine extends JdkSslEngine { } }); - protocolListener = checkNotNull(applicationNegotiator + protocolListener = requireNonNull(applicationNegotiator .protocolListenerFactory().newListener(this, applicationNegotiator.protocols()), "protocolListener"); } @@ -137,7 +137,7 @@ abstract class ConscryptAlpnSslEngine extends JdkSslEngine { } }); - protocolSelector = checkNotNull(applicationNegotiator.protocolSelectorFactory() + protocolSelector = requireNonNull(applicationNegotiator.protocolSelectorFactory() .newSelector(this, new LinkedHashSet<>(applicationNegotiator.protocols())), "protocolSelector"); diff --git a/handler/src/main/java/io/netty/handler/ssl/DelegatingSslContext.java b/handler/src/main/java/io/netty/handler/ssl/DelegatingSslContext.java index af027982f2..76358a8e89 100644 --- a/handler/src/main/java/io/netty/handler/ssl/DelegatingSslContext.java +++ b/handler/src/main/java/io/netty/handler/ssl/DelegatingSslContext.java @@ -15,8 +15,9 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; -import io.netty.util.internal.ObjectUtil; import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLSessionContext; @@ -30,7 +31,7 @@ public abstract class DelegatingSslContext extends SslContext { private final SslContext ctx; protected DelegatingSslContext(SslContext ctx) { - this.ctx = ObjectUtil.checkNotNull(ctx, "ctx"); + this.ctx = requireNonNull(ctx, "ctx"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/JdkBaseApplicationProtocolNegotiator.java b/handler/src/main/java/io/netty/handler/ssl/JdkBaseApplicationProtocolNegotiator.java index 4f302ad54f..af81e2a7dc 100644 --- a/handler/src/main/java/io/netty/handler/ssl/JdkBaseApplicationProtocolNegotiator.java +++ b/handler/src/main/java/io/netty/handler/ssl/JdkBaseApplicationProtocolNegotiator.java @@ -16,13 +16,12 @@ package io.netty.handler.ssl; import static io.netty.handler.ssl.ApplicationProtocolUtil.toList; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import java.util.Collections; import java.util.List; import java.util.Set; -import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLHandshakeException; /** @@ -70,10 +69,10 @@ class JdkBaseApplicationProtocolNegotiator implements JdkApplicationProtocolNego private JdkBaseApplicationProtocolNegotiator(SslEngineWrapperFactory wrapperFactory, ProtocolSelectorFactory selectorFactory, ProtocolSelectionListenerFactory listenerFactory, List protocols) { - this.wrapperFactory = checkNotNull(wrapperFactory, "wrapperFactory"); - this.selectorFactory = checkNotNull(selectorFactory, "selectorFactory"); - this.listenerFactory = checkNotNull(listenerFactory, "listenerFactory"); - this.protocols = Collections.unmodifiableList(checkNotNull(protocols, "protocols")); + this.wrapperFactory = requireNonNull(wrapperFactory, "wrapperFactory"); + this.selectorFactory = requireNonNull(selectorFactory, "selectorFactory"); + this.listenerFactory = requireNonNull(listenerFactory, "listenerFactory"); + this.protocols = Collections.unmodifiableList(requireNonNull(protocols, "protocols")); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java b/handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java index 5c36cb93eb..0fb02b8f0f 100644 --- a/handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java +++ b/handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java @@ -49,7 +49,7 @@ import javax.net.ssl.SSLSessionContext; import static io.netty.handler.ssl.SslUtils.DEFAULT_CIPHER_SUITES; import static io.netty.handler.ssl.SslUtils.addIfSupported; import static io.netty.handler.ssl.SslUtils.useFallbackCiphersIfDefaultIsEmpty; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * An {@link SslContext} which uses JDK's SSL/TLS implementation. @@ -237,9 +237,9 @@ public class JdkSslContext extends SslContext { JdkSslContext(SSLContext sslContext, boolean isClient, Iterable ciphers, CipherSuiteFilter cipherFilter, JdkApplicationProtocolNegotiator apn, ClientAuth clientAuth, String[] protocols, boolean startTls) { super(startTls); - this.apn = checkNotNull(apn, "apn"); - this.clientAuth = checkNotNull(clientAuth, "clientAuth"); - this.sslContext = checkNotNull(sslContext, "sslContext"); + this.apn = requireNonNull(apn, "apn"); + this.clientAuth = requireNonNull(clientAuth, "clientAuth"); + this.sslContext = requireNonNull(sslContext, "sslContext"); final List defaultCiphers; final Set supportedCiphers; @@ -278,7 +278,7 @@ public class JdkSslContext extends SslContext { } } - cipherSuites = checkNotNull(cipherFilter, "cipherFilter").filterCipherSuites( + cipherSuites = requireNonNull(cipherFilter, "cipherFilter").filterCipherSuites( ciphers, defaultCiphers, supportedCiphers); unmodifiableCipherSuites = Collections.unmodifiableList(Arrays.asList(cipherSuites)); diff --git a/handler/src/main/java/io/netty/handler/ssl/JettyAlpnSslEngine.java b/handler/src/main/java/io/netty/handler/ssl/JettyAlpnSslEngine.java index 342b49b6e4..c599383c43 100644 --- a/handler/src/main/java/io/netty/handler/ssl/JettyAlpnSslEngine.java +++ b/handler/src/main/java/io/netty/handler/ssl/JettyAlpnSslEngine.java @@ -16,7 +16,7 @@ package io.netty.handler.ssl; import static io.netty.handler.ssl.SslUtils.toSSLHandshakeException; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import io.netty.handler.ssl.JdkApplicationProtocolNegotiator.ProtocolSelectionListener; import io.netty.handler.ssl.JdkApplicationProtocolNegotiator.ProtocolSelector; @@ -67,8 +67,8 @@ abstract class JettyAlpnSslEngine extends JdkSslEngine { private static final class ClientEngine extends JettyAlpnSslEngine { ClientEngine(SSLEngine engine, final JdkApplicationProtocolNegotiator applicationNegotiator) { super(engine); - checkNotNull(applicationNegotiator, "applicationNegotiator"); - final ProtocolSelectionListener protocolListener = checkNotNull(applicationNegotiator + requireNonNull(applicationNegotiator, "applicationNegotiator"); + final ProtocolSelectionListener protocolListener = requireNonNull(applicationNegotiator .protocolListenerFactory().newListener(this, applicationNegotiator.protocols()), "protocolListener"); ALPN.put(engine, new ALPN.ClientProvider() { @@ -115,8 +115,8 @@ abstract class JettyAlpnSslEngine extends JdkSslEngine { private static final class ServerEngine extends JettyAlpnSslEngine { ServerEngine(SSLEngine engine, final JdkApplicationProtocolNegotiator applicationNegotiator) { super(engine); - checkNotNull(applicationNegotiator, "applicationNegotiator"); - final ProtocolSelector protocolSelector = checkNotNull(applicationNegotiator.protocolSelectorFactory() + requireNonNull(applicationNegotiator, "applicationNegotiator"); + final ProtocolSelector protocolSelector = requireNonNull(applicationNegotiator.protocolSelectorFactory() .newSelector(this, new LinkedHashSet<>(applicationNegotiator.protocols())), "protocolSelector"); ALPN.put(engine, new ALPN.ServerProvider() { diff --git a/handler/src/main/java/io/netty/handler/ssl/JettyNpnSslEngine.java b/handler/src/main/java/io/netty/handler/ssl/JettyNpnSslEngine.java index 9e10465817..ca8ecce3d9 100644 --- a/handler/src/main/java/io/netty/handler/ssl/JettyNpnSslEngine.java +++ b/handler/src/main/java/io/netty/handler/ssl/JettyNpnSslEngine.java @@ -16,7 +16,8 @@ package io.netty.handler.ssl; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; + import io.netty.handler.ssl.JdkApplicationProtocolNegotiator.ProtocolSelectionListener; import io.netty.handler.ssl.JdkApplicationProtocolNegotiator.ProtocolSelector; import io.netty.util.internal.PlatformDependent; @@ -54,10 +55,10 @@ final class JettyNpnSslEngine extends JdkSslEngine { JettyNpnSslEngine(SSLEngine engine, final JdkApplicationProtocolNegotiator applicationNegotiator, boolean server) { super(engine); - checkNotNull(applicationNegotiator, "applicationNegotiator"); + requireNonNull(applicationNegotiator, "applicationNegotiator"); if (server) { - final ProtocolSelectionListener protocolListener = checkNotNull(applicationNegotiator + final ProtocolSelectionListener protocolListener = requireNonNull(applicationNegotiator .protocolListenerFactory().newListener(this, applicationNegotiator.protocols()), "protocolListener"); NextProtoNego.put(engine, new ServerProvider() { @@ -81,7 +82,7 @@ final class JettyNpnSslEngine extends JdkSslEngine { } }); } else { - final ProtocolSelector protocolSelector = checkNotNull(applicationNegotiator.protocolSelectorFactory() + final ProtocolSelector protocolSelector = requireNonNull(applicationNegotiator.protocolSelectorFactory() .newSelector(this, new LinkedHashSet<>(applicationNegotiator.protocols())), "protocolSelector"); NextProtoNego.put(engine, new ClientProvider() { diff --git a/handler/src/main/java/io/netty/handler/ssl/OpenSslDefaultApplicationProtocolNegotiator.java b/handler/src/main/java/io/netty/handler/ssl/OpenSslDefaultApplicationProtocolNegotiator.java index 9c9575b91d..85a7320f6e 100644 --- a/handler/src/main/java/io/netty/handler/ssl/OpenSslDefaultApplicationProtocolNegotiator.java +++ b/handler/src/main/java/io/netty/handler/ssl/OpenSslDefaultApplicationProtocolNegotiator.java @@ -17,7 +17,7 @@ package io.netty.handler.ssl; import java.util.List; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * OpenSSL {@link ApplicationProtocolNegotiator} for ALPN and NPN. @@ -28,7 +28,7 @@ import static io.netty.util.internal.ObjectUtil.checkNotNull; public final class OpenSslDefaultApplicationProtocolNegotiator implements OpenSslApplicationProtocolNegotiator { private final ApplicationProtocolConfig config; public OpenSslDefaultApplicationProtocolNegotiator(ApplicationProtocolConfig config) { - this.config = checkNotNull(config, "config"); + this.config = requireNonNull(config, "config"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/OpenSslNpnApplicationProtocolNegotiator.java b/handler/src/main/java/io/netty/handler/ssl/OpenSslNpnApplicationProtocolNegotiator.java index 309c07bf53..6d9197158a 100644 --- a/handler/src/main/java/io/netty/handler/ssl/OpenSslNpnApplicationProtocolNegotiator.java +++ b/handler/src/main/java/io/netty/handler/ssl/OpenSslNpnApplicationProtocolNegotiator.java @@ -16,7 +16,7 @@ package io.netty.handler.ssl; import static io.netty.handler.ssl.ApplicationProtocolUtil.toList; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import java.util.List; @@ -30,11 +30,11 @@ public final class OpenSslNpnApplicationProtocolNegotiator implements OpenSslApp private final List protocols; public OpenSslNpnApplicationProtocolNegotiator(Iterable protocols) { - this.protocols = checkNotNull(toList(protocols), "protocols"); + this.protocols = requireNonNull(toList(protocols), "protocols"); } public OpenSslNpnApplicationProtocolNegotiator(String... protocols) { - this.protocols = checkNotNull(toList(protocols), "protocols"); + this.protocols = requireNonNull(toList(protocols), "protocols"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/OpenSslSessionContext.java b/handler/src/main/java/io/netty/handler/ssl/OpenSslSessionContext.java index 9faefb1380..230c025c62 100644 --- a/handler/src/main/java/io/netty/handler/ssl/OpenSslSessionContext.java +++ b/handler/src/main/java/io/netty/handler/ssl/OpenSslSessionContext.java @@ -15,7 +15,8 @@ */ package io.netty.handler.ssl; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.internal.tcnative.SSL; import io.netty.internal.tcnative.SSLContext; import io.netty.internal.tcnative.SessionTicketKey; @@ -54,9 +55,7 @@ public abstract class OpenSslSessionContext implements SSLSessionContext { @Override public SSLSession getSession(byte[] bytes) { - if (bytes == null) { - throw new NullPointerException("bytes"); - } + requireNonNull(bytes, "bytes"); return null; } @@ -98,7 +97,7 @@ public abstract class OpenSslSessionContext implements SSLSessionContext { * Sets the SSL session ticket keys of this context. */ public void setTicketKeys(OpenSslSessionTicketKey... keys) { - ObjectUtil.checkNotNull(keys, "keys"); + requireNonNull(keys, "keys"); SessionTicketKey[] ticketKeys = new SessionTicketKey[keys.length]; for (int i = 0; i < ticketKeys.length; i++) { ticketKeys[i] = keys[i].key; diff --git a/handler/src/main/java/io/netty/handler/ssl/OpenSslX509KeyManagerFactory.java b/handler/src/main/java/io/netty/handler/ssl/OpenSslX509KeyManagerFactory.java index 4ae7557b86..ccd7ef6679 100644 --- a/handler/src/main/java/io/netty/handler/ssl/OpenSslX509KeyManagerFactory.java +++ b/handler/src/main/java/io/netty/handler/ssl/OpenSslX509KeyManagerFactory.java @@ -15,11 +15,12 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; import io.netty.buffer.UnpooledByteBufAllocator; import io.netty.internal.tcnative.SSL; import io.netty.util.ReferenceCountUtil; -import io.netty.util.internal.ObjectUtil; import javax.net.ssl.KeyManager; import javax.net.ssl.KeyManagerFactory; @@ -107,7 +108,7 @@ public final class OpenSslX509KeyManagerFactory extends KeyManagerFactory { private volatile ProviderFactory providerFactory; OpenSslKeyManagerFactorySpi(KeyManagerFactory kmf) { - this.kmf = ObjectUtil.checkNotNull(kmf, "kmf"); + this.kmf = requireNonNull(kmf, "kmf"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/OptionalSslHandler.java b/handler/src/main/java/io/netty/handler/ssl/OptionalSslHandler.java index bc1b4b3623..32d1f1bddd 100644 --- a/handler/src/main/java/io/netty/handler/ssl/OptionalSslHandler.java +++ b/handler/src/main/java/io/netty/handler/ssl/OptionalSslHandler.java @@ -15,13 +15,14 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelHandler; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.ByteToMessageDecoder; import io.netty.util.ReferenceCountUtil; -import io.netty.util.internal.ObjectUtil; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLParameters; @@ -36,7 +37,7 @@ public class OptionalSslHandler extends ByteToMessageDecoder { private final SslContext sslContext; public OptionalSslHandler(SslContext sslContext) { - this.sslContext = ObjectUtil.checkNotNull(sslContext, "sslContext"); + this.sslContext = requireNonNull(sslContext, "sslContext"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/PemPrivateKey.java b/handler/src/main/java/io/netty/handler/ssl/PemPrivateKey.java index 46145a04b1..1ed03cbfcc 100644 --- a/handler/src/main/java/io/netty/handler/ssl/PemPrivateKey.java +++ b/handler/src/main/java/io/netty/handler/ssl/PemPrivateKey.java @@ -15,6 +15,8 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import java.security.PrivateKey; import javax.security.auth.Destroyable; @@ -25,7 +27,6 @@ import io.netty.buffer.Unpooled; import io.netty.util.AbstractReferenceCounted; import io.netty.util.CharsetUtil; import io.netty.util.IllegalReferenceCountException; -import io.netty.util.internal.ObjectUtil; /** * This is a special purpose implementation of a {@link PrivateKey} which allows the @@ -118,7 +119,7 @@ public final class PemPrivateKey extends AbstractReferenceCounted implements Pri private final ByteBuf content; private PemPrivateKey(ByteBuf content) { - this.content = ObjectUtil.checkNotNull(content, "content"); + this.content = requireNonNull(content, "content"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/PemValue.java b/handler/src/main/java/io/netty/handler/ssl/PemValue.java index ada5e4ddf6..2ed27fefd7 100644 --- a/handler/src/main/java/io/netty/handler/ssl/PemValue.java +++ b/handler/src/main/java/io/netty/handler/ssl/PemValue.java @@ -15,11 +15,12 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.util.AbstractReferenceCounted; import io.netty.util.IllegalReferenceCountException; -import io.netty.util.internal.ObjectUtil; /** * A PEM encoded value. @@ -35,7 +36,7 @@ class PemValue extends AbstractReferenceCounted implements PemEncoded { private final boolean sensitive; PemValue(ByteBuf content, boolean sensitive) { - this.content = ObjectUtil.checkNotNull(content, "content"); + this.content = requireNonNull(content, "content"); this.sensitive = sensitive; } diff --git a/handler/src/main/java/io/netty/handler/ssl/PemX509Certificate.java b/handler/src/main/java/io/netty/handler/ssl/PemX509Certificate.java index f5f3ee07da..e37500700b 100644 --- a/handler/src/main/java/io/netty/handler/ssl/PemX509Certificate.java +++ b/handler/src/main/java/io/netty/handler/ssl/PemX509Certificate.java @@ -15,6 +15,8 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import java.math.BigInteger; import java.security.Principal; import java.security.PublicKey; @@ -29,7 +31,6 @@ import io.netty.buffer.ByteBufAllocator; import io.netty.buffer.Unpooled; import io.netty.util.CharsetUtil; import io.netty.util.IllegalReferenceCountException; -import io.netty.util.internal.ObjectUtil; /** * This is a special purpose implementation of a {@link X509Certificate} which allows @@ -175,7 +176,7 @@ public final class PemX509Certificate extends X509Certificate implements PemEnco private final ByteBuf content; private PemX509Certificate(ByteBuf content) { - this.content = ObjectUtil.checkNotNull(content, "content"); + this.content = requireNonNull(content, "content"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslContext.java b/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslContext.java index 2bc714c81a..1836428b17 100644 --- a/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslContext.java +++ b/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslContext.java @@ -60,8 +60,8 @@ import javax.net.ssl.X509TrustManager; import static io.netty.handler.ssl.OpenSsl.DEFAULT_CIPHERS; import static io.netty.handler.ssl.OpenSsl.availableJavaCipherSuites; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * An implementation of {@link SslContext} which works with libraries that support the @@ -201,16 +201,16 @@ public abstract class ReferenceCountedOpenSslContext extends SslContext implemen } leak = leakDetection ? leakDetector.track(this) : null; this.mode = mode; - this.clientAuth = isServer() ? checkNotNull(clientAuth, "clientAuth") : ClientAuth.NONE; + this.clientAuth = isServer() ? requireNonNull(clientAuth, "clientAuth") : ClientAuth.NONE; this.protocols = protocols; this.enableOcsp = enableOcsp; this.keyCertChain = keyCertChain == null ? null : keyCertChain.clone(); - unmodifiableCiphers = Arrays.asList(checkNotNull(cipherFilter, "cipherFilter").filterCipherSuites( + unmodifiableCiphers = Arrays.asList(requireNonNull(cipherFilter, "cipherFilter").filterCipherSuites( ciphers, DEFAULT_CIPHERS, availableJavaCipherSuites())); - this.apn = checkNotNull(apn, "apn"); + this.apn = requireNonNull(apn, "apn"); // Create a new SSL_CTX and configure it. boolean success = false; diff --git a/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslEngine.java b/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslEngine.java index e54c3d93ac..bda73cbec5 100644 --- a/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslEngine.java +++ b/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslEngine.java @@ -72,9 +72,9 @@ import static io.netty.handler.ssl.SslUtils.PROTOCOL_TLS_V1_3; import static io.netty.handler.ssl.SslUtils.SSL_RECORD_HEADER_LENGTH; import static io.netty.util.internal.EmptyArrays.EMPTY_CERTIFICATES; import static io.netty.util.internal.EmptyArrays.EMPTY_JAVAX_X509_CERTIFICATES; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static java.lang.Integer.MAX_VALUE; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; import static javax.net.ssl.SSLEngineResult.HandshakeStatus.FINISHED; import static javax.net.ssl.SSLEngineResult.HandshakeStatus.NEED_UNWRAP; import static javax.net.ssl.SSLEngineResult.HandshakeStatus.NEED_WRAP; @@ -243,7 +243,7 @@ public class ReferenceCountedOpenSslEngine extends SSLEngine implements Referenc int peerPort, boolean jdkCompatibilityMode, boolean leakDetection) { super(peerHost, peerPort); OpenSsl.ensureAvailability(); - this.alloc = checkNotNull(alloc, "alloc"); + this.alloc = requireNonNull(alloc, "alloc"); apn = (OpenSslApplicationProtocolNegotiator) context.applicationProtocolNegotiator(); clientMode = context.isClient(); session = new ExtendedOpenSslSession(new DefaultOpenSslSession(context.sessionContext())) { @@ -962,9 +962,7 @@ public class ReferenceCountedOpenSslEngine extends SSLEngine implements Referenc final ByteBuffer[] dsts, int dstsOffset, final int dstsLength) throws SSLException { // Throw required runtime exceptions - if (srcs == null) { - throw new NullPointerException("srcs"); - } + requireNonNull(srcs, "srcs"); if (srcsOffset >= srcs.length || srcsOffset + srcsLength > srcs.length) { throw new IndexOutOfBoundsException( @@ -1410,7 +1408,7 @@ public class ReferenceCountedOpenSslEngine extends SSLEngine implements Referenc @Override public final void setEnabledCipherSuites(String[] cipherSuites) { - checkNotNull(cipherSuites, "cipherSuites"); + requireNonNull(cipherSuites, "cipherSuites"); final StringBuilder buf = new StringBuilder(); final StringBuilder bufTLSv13 = new StringBuilder(); @@ -2013,12 +2011,8 @@ public class ReferenceCountedOpenSslEngine extends SSLEngine implements Referenc @Override public void putValue(String name, Object value) { - if (name == null) { - throw new NullPointerException("name"); - } - if (value == null) { - throw new NullPointerException("value"); - } + requireNonNull(name, "name"); + requireNonNull(value, "value"); final Object old; synchronized (this) { Map values = this.values; @@ -2038,9 +2032,7 @@ public class ReferenceCountedOpenSslEngine extends SSLEngine implements Referenc @Override public Object getValue(String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); synchronized (this) { if (values == null) { return null; @@ -2051,9 +2043,7 @@ public class ReferenceCountedOpenSslEngine extends SSLEngine implements Referenc @Override public void removeValue(String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); final Object old; synchronized (this) { diff --git a/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslServerContext.java b/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslServerContext.java index 6366efadfc..f3ee8e2a0f 100644 --- a/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslServerContext.java +++ b/handler/src/main/java/io/netty/handler/ssl/ReferenceCountedOpenSslServerContext.java @@ -34,7 +34,7 @@ import javax.net.ssl.TrustManagerFactory; import javax.net.ssl.X509ExtendedTrustManager; import javax.net.ssl.X509TrustManager; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A server-side {@link SslContext} which uses OpenSSL's SSL/TLS implementation. @@ -103,7 +103,7 @@ public final class ReferenceCountedOpenSslServerContext extends ReferenceCounted throw new IllegalArgumentException( "KeyManagerFactory not supported"); } - checkNotNull(keyCertChain, "keyCertChain"); + requireNonNull(keyCertChain, "keyCertChain"); setKeyMaterial(ctx, keyCertChain, key, keyPassword); } else { diff --git a/handler/src/main/java/io/netty/handler/ssl/SniHandler.java b/handler/src/main/java/io/netty/handler/ssl/SniHandler.java index 51e880e94d..45c588db16 100644 --- a/handler/src/main/java/io/netty/handler/ssl/SniHandler.java +++ b/handler/src/main/java/io/netty/handler/ssl/SniHandler.java @@ -15,6 +15,8 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.DecoderException; import io.netty.util.AsyncMapping; @@ -23,7 +25,6 @@ import io.netty.util.Mapping; import io.netty.util.ReferenceCountUtil; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.Promise; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.PlatformDependent; /** @@ -68,7 +69,7 @@ public class SniHandler extends AbstractSniHandler { */ @SuppressWarnings("unchecked") public SniHandler(AsyncMapping mapping) { - this.mapping = (AsyncMapping) ObjectUtil.checkNotNull(mapping, "mapping"); + this.mapping = (AsyncMapping) requireNonNull(mapping, "mapping"); } /** @@ -146,7 +147,7 @@ public class SniHandler extends AbstractSniHandler { private final Mapping mapping; private AsyncMappingAdapter(Mapping mapping) { - this.mapping = ObjectUtil.checkNotNull(mapping, "mapping"); + this.mapping = requireNonNull(mapping, "mapping"); } @Override diff --git a/handler/src/main/java/io/netty/handler/ssl/SslCompletionEvent.java b/handler/src/main/java/io/netty/handler/ssl/SslCompletionEvent.java index 23fda2d846..6a389523fa 100644 --- a/handler/src/main/java/io/netty/handler/ssl/SslCompletionEvent.java +++ b/handler/src/main/java/io/netty/handler/ssl/SslCompletionEvent.java @@ -15,7 +15,7 @@ */ package io.netty.handler.ssl; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; public abstract class SslCompletionEvent { @@ -26,7 +26,7 @@ public abstract class SslCompletionEvent { } SslCompletionEvent(Throwable cause) { - this.cause = ObjectUtil.checkNotNull(cause, "cause"); + this.cause = requireNonNull(cause, "cause"); } /** diff --git a/handler/src/main/java/io/netty/handler/ssl/SslContextBuilder.java b/handler/src/main/java/io/netty/handler/ssl/SslContextBuilder.java index ae21440ce0..7f2aa15e63 100644 --- a/handler/src/main/java/io/netty/handler/ssl/SslContextBuilder.java +++ b/handler/src/main/java/io/netty/handler/ssl/SslContextBuilder.java @@ -16,7 +16,7 @@ package io.netty.handler.ssl; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; import io.netty.util.internal.UnstableApi; @@ -309,11 +309,11 @@ public final class SslContextBuilder { */ public SslContextBuilder keyManager(PrivateKey key, String keyPassword, X509Certificate... keyCertChain) { if (forServer) { - checkNotNull(keyCertChain, "keyCertChain required for servers"); + requireNonNull(keyCertChain, "keyCertChain required for servers"); if (keyCertChain.length == 0) { throw new IllegalArgumentException("keyCertChain must be non-empty"); } - checkNotNull(key, "key required for servers"); + requireNonNull(key, "key required for servers"); } if (keyCertChain == null || keyCertChain.length == 0) { this.keyCertChain = null; @@ -344,7 +344,7 @@ public final class SslContextBuilder { */ public SslContextBuilder keyManager(KeyManagerFactory keyManagerFactory) { if (forServer) { - checkNotNull(keyManagerFactory, "keyManagerFactory required for servers"); + requireNonNull(keyManagerFactory, "keyManagerFactory required for servers"); } keyCertChain = null; key = null; @@ -367,7 +367,7 @@ public final class SslContextBuilder { * cipher suites will be used. */ public SslContextBuilder ciphers(Iterable ciphers, CipherSuiteFilter cipherFilter) { - checkNotNull(cipherFilter, "cipherFilter"); + requireNonNull(cipherFilter, "cipherFilter"); this.ciphers = ciphers; this.cipherFilter = cipherFilter; return this; @@ -403,7 +403,7 @@ public final class SslContextBuilder { * Sets the client authentication mode. */ public SslContextBuilder clientAuth(ClientAuth clientAuth) { - this.clientAuth = checkNotNull(clientAuth, "clientAuth"); + this.clientAuth = requireNonNull(clientAuth, "clientAuth"); return this; } diff --git a/handler/src/main/java/io/netty/handler/ssl/SslHandler.java b/handler/src/main/java/io/netty/handler/ssl/SslHandler.java index 4f1de233c7..c6e8872afb 100644 --- a/handler/src/main/java/io/netty/handler/ssl/SslHandler.java +++ b/handler/src/main/java/io/netty/handler/ssl/SslHandler.java @@ -72,6 +72,7 @@ import javax.net.ssl.SSLSession; import static io.netty.buffer.ByteBufUtil.ensureWritableSuccess; import static io.netty.handler.ssl.SslUtils.getEncryptedPacketLength; +import static java.util.Objects.requireNonNull; /** * Adds SSL @@ -450,12 +451,8 @@ public class SslHandler extends ByteToMessageDecoder implements ChannelOutboundH */ @Deprecated public SslHandler(SSLEngine engine, boolean startTls, Executor delegatedTaskExecutor) { - if (engine == null) { - throw new NullPointerException("engine"); - } - if (delegatedTaskExecutor == null) { - throw new NullPointerException("delegatedTaskExecutor"); - } + requireNonNull(engine, "engine"); + requireNonNull(delegatedTaskExecutor, "delegatedTaskExecutor"); this.engine = engine; engineType = SslEngineType.forEngine(engine); this.delegatedTaskExecutor = delegatedTaskExecutor; @@ -469,9 +466,7 @@ public class SslHandler extends ByteToMessageDecoder implements ChannelOutboundH } public void setHandshakeTimeout(long handshakeTimeout, TimeUnit unit) { - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(unit, "unit"); setHandshakeTimeoutMillis(unit.toMillis(handshakeTimeout)); } @@ -1685,9 +1680,7 @@ public class SslHandler extends ByteToMessageDecoder implements ChannelOutboundH * Performs TLS renegotiation. */ public Future renegotiate(final Promise promise) { - if (promise == null) { - throw new NullPointerException("promise"); - } + requireNonNull(promise, "promise"); ChannelHandlerContext ctx = this.ctx; if (ctx == null) { diff --git a/handler/src/main/java/io/netty/handler/ssl/SupportedCipherSuiteFilter.java b/handler/src/main/java/io/netty/handler/ssl/SupportedCipherSuiteFilter.java index d4baea85a8..8d72f93e14 100644 --- a/handler/src/main/java/io/netty/handler/ssl/SupportedCipherSuiteFilter.java +++ b/handler/src/main/java/io/netty/handler/ssl/SupportedCipherSuiteFilter.java @@ -15,6 +15,8 @@ */ package io.netty.handler.ssl; +import static java.util.Objects.requireNonNull; + import javax.net.ssl.SSLEngine; import java.util.ArrayList; import java.util.List; @@ -31,12 +33,8 @@ public final class SupportedCipherSuiteFilter implements CipherSuiteFilter { @Override public String[] filterCipherSuites(Iterable ciphers, List defaultCiphers, Set supportedCiphers) { - if (defaultCiphers == null) { - throw new NullPointerException("defaultCiphers"); - } - if (supportedCiphers == null) { - throw new NullPointerException("supportedCiphers"); - } + requireNonNull(defaultCiphers, "defaultCiphers"); + requireNonNull(supportedCiphers, "supportedCiphers"); final List newCiphers; if (ciphers == null) { diff --git a/handler/src/main/java/io/netty/handler/ssl/ocsp/OcspClientHandler.java b/handler/src/main/java/io/netty/handler/ssl/ocsp/OcspClientHandler.java index aff09495ca..5088c1ead2 100644 --- a/handler/src/main/java/io/netty/handler/ssl/ocsp/OcspClientHandler.java +++ b/handler/src/main/java/io/netty/handler/ssl/ocsp/OcspClientHandler.java @@ -15,12 +15,13 @@ */ package io.netty.handler.ssl.ocsp; +import static java.util.Objects.requireNonNull; + import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelInboundHandlerAdapter; import io.netty.handler.ssl.ReferenceCountedOpenSslContext; import io.netty.handler.ssl.ReferenceCountedOpenSslEngine; import io.netty.handler.ssl.SslHandshakeCompletionEvent; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.ThrowableUtil; import io.netty.util.internal.UnstableApi; @@ -41,7 +42,7 @@ public abstract class OcspClientHandler extends ChannelInboundHandlerAdapter { private final ReferenceCountedOpenSslEngine engine; protected OcspClientHandler(ReferenceCountedOpenSslEngine engine) { - this.engine = ObjectUtil.checkNotNull(engine, "engine"); + this.engine = requireNonNull(engine, "engine"); } /** diff --git a/handler/src/main/java/io/netty/handler/ssl/util/FingerprintTrustManagerFactory.java b/handler/src/main/java/io/netty/handler/ssl/util/FingerprintTrustManagerFactory.java index 94590ad3b7..ae0a090cc3 100644 --- a/handler/src/main/java/io/netty/handler/ssl/util/FingerprintTrustManagerFactory.java +++ b/handler/src/main/java/io/netty/handler/ssl/util/FingerprintTrustManagerFactory.java @@ -16,6 +16,8 @@ package io.netty.handler.ssl.util; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufUtil; import io.netty.buffer.Unpooled; import io.netty.util.internal.EmptyArrays; @@ -156,9 +158,7 @@ public final class FingerprintTrustManagerFactory extends SimpleTrustManagerFact * @param fingerprints a list of SHA1 fingerprints */ public FingerprintTrustManagerFactory(byte[]... fingerprints) { - if (fingerprints == null) { - throw new NullPointerException("fingerprints"); - } + requireNonNull(fingerprints, "fingerprints"); List list = new ArrayList<>(fingerprints.length); for (byte[] f: fingerprints) { @@ -176,9 +176,7 @@ public final class FingerprintTrustManagerFactory extends SimpleTrustManagerFact } private static byte[][] toFingerprintArray(Iterable fingerprints) { - if (fingerprints == null) { - throw new NullPointerException("fingerprints"); - } + requireNonNull(fingerprints, "fingerprints"); List list = new ArrayList<>(); for (String f: fingerprints) { diff --git a/handler/src/main/java/io/netty/handler/ssl/util/SimpleTrustManagerFactory.java b/handler/src/main/java/io/netty/handler/ssl/util/SimpleTrustManagerFactory.java index 66f5702ad4..0688de0959 100644 --- a/handler/src/main/java/io/netty/handler/ssl/util/SimpleTrustManagerFactory.java +++ b/handler/src/main/java/io/netty/handler/ssl/util/SimpleTrustManagerFactory.java @@ -16,6 +16,8 @@ package io.netty.handler.ssl.util; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.FastThreadLocal; import javax.net.ssl.ManagerFactoryParameters; @@ -71,9 +73,7 @@ public abstract class SimpleTrustManagerFactory extends TrustManagerFactory { CURRENT_SPI.get().init(this); CURRENT_SPI.remove(); - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); } /** diff --git a/handler/src/main/java/io/netty/handler/ssl/util/X509TrustManagerWrapper.java b/handler/src/main/java/io/netty/handler/ssl/util/X509TrustManagerWrapper.java index 1b70b97122..8dd6ffb683 100644 --- a/handler/src/main/java/io/netty/handler/ssl/util/X509TrustManagerWrapper.java +++ b/handler/src/main/java/io/netty/handler/ssl/util/X509TrustManagerWrapper.java @@ -22,14 +22,14 @@ import java.net.Socket; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; -import static io.netty.util.internal.ObjectUtil.*; +import static java.util.Objects.requireNonNull; final class X509TrustManagerWrapper extends X509ExtendedTrustManager { private final X509TrustManager delegate; X509TrustManagerWrapper(X509TrustManager delegate) { - this.delegate = checkNotNull(delegate, "delegate"); + this.delegate = requireNonNull(delegate, "delegate"); } @Override diff --git a/handler/src/main/java/io/netty/handler/stream/ChunkedFile.java b/handler/src/main/java/io/netty/handler/stream/ChunkedFile.java index 3e12e4ae54..9459c222f7 100644 --- a/handler/src/main/java/io/netty/handler/stream/ChunkedFile.java +++ b/handler/src/main/java/io/netty/handler/stream/ChunkedFile.java @@ -15,6 +15,8 @@ */ package io.netty.handler.stream; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelHandlerContext; @@ -82,9 +84,7 @@ public class ChunkedFile implements ChunkedInput { * {@link #readChunk(ChannelHandlerContext)} call */ public ChunkedFile(RandomAccessFile file, long offset, long length, int chunkSize) throws IOException { - if (file == null) { - throw new NullPointerException("file"); - } + requireNonNull(file, "file"); if (offset < 0) { throw new IllegalArgumentException( "offset: " + offset + " (expected: 0 or greater)"); diff --git a/handler/src/main/java/io/netty/handler/stream/ChunkedNioFile.java b/handler/src/main/java/io/netty/handler/stream/ChunkedNioFile.java index 339a3e5776..3b10f6d843 100644 --- a/handler/src/main/java/io/netty/handler/stream/ChunkedNioFile.java +++ b/handler/src/main/java/io/netty/handler/stream/ChunkedNioFile.java @@ -15,6 +15,8 @@ */ package io.netty.handler.stream; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelHandlerContext; @@ -83,11 +85,8 @@ public class ChunkedNioFile implements ChunkedInput { * @param chunkSize the number of bytes to fetch on each * {@link #readChunk(ChannelHandlerContext)} call */ - public ChunkedNioFile(FileChannel in, long offset, long length, int chunkSize) - throws IOException { - if (in == null) { - throw new NullPointerException("in"); - } + public ChunkedNioFile(FileChannel in, long offset, long length, int chunkSize) throws IOException { + requireNonNull(in, "in"); if (offset < 0) { throw new IllegalArgumentException( "offset: " + offset + " (expected: 0 or greater)"); diff --git a/handler/src/main/java/io/netty/handler/stream/ChunkedNioStream.java b/handler/src/main/java/io/netty/handler/stream/ChunkedNioStream.java index 22feb6369d..3429d982c4 100644 --- a/handler/src/main/java/io/netty/handler/stream/ChunkedNioStream.java +++ b/handler/src/main/java/io/netty/handler/stream/ChunkedNioStream.java @@ -15,6 +15,8 @@ */ package io.netty.handler.stream; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelHandlerContext; @@ -53,9 +55,7 @@ public class ChunkedNioStream implements ChunkedInput { * {@link #readChunk(ChannelHandlerContext)} call */ public ChunkedNioStream(ReadableByteChannel in, int chunkSize) { - if (in == null) { - throw new NullPointerException("in"); - } + requireNonNull(in, "in"); if (chunkSize <= 0) { throw new IllegalArgumentException("chunkSize: " + chunkSize + " (expected: a positive integer)"); diff --git a/handler/src/main/java/io/netty/handler/stream/ChunkedStream.java b/handler/src/main/java/io/netty/handler/stream/ChunkedStream.java index f476c03e64..b6a7074d4b 100644 --- a/handler/src/main/java/io/netty/handler/stream/ChunkedStream.java +++ b/handler/src/main/java/io/netty/handler/stream/ChunkedStream.java @@ -15,6 +15,8 @@ */ package io.netty.handler.stream; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelHandlerContext; @@ -55,9 +57,7 @@ public class ChunkedStream implements ChunkedInput { * {@link #readChunk(ChannelHandlerContext)} call */ public ChunkedStream(InputStream in, int chunkSize) { - if (in == null) { - throw new NullPointerException("in"); - } + requireNonNull(in, "in"); if (chunkSize <= 0) { throw new IllegalArgumentException( "chunkSize: " + chunkSize + diff --git a/handler/src/main/java/io/netty/handler/timeout/IdleStateEvent.java b/handler/src/main/java/io/netty/handler/timeout/IdleStateEvent.java index 7ec9e63d7e..bb476e7a9a 100644 --- a/handler/src/main/java/io/netty/handler/timeout/IdleStateEvent.java +++ b/handler/src/main/java/io/netty/handler/timeout/IdleStateEvent.java @@ -15,8 +15,9 @@ */ package io.netty.handler.timeout; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; -import io.netty.util.internal.ObjectUtil; /** * A user event triggered by {@link IdleStateHandler} when a {@link Channel} is idle. @@ -39,7 +40,7 @@ public class IdleStateEvent { * @param first {@code true} if its the first idle event for the {@link IdleStateEvent}. */ protected IdleStateEvent(IdleState state, boolean first) { - this.state = ObjectUtil.checkNotNull(state, "state"); + this.state = requireNonNull(state, "state"); this.first = first; } diff --git a/handler/src/main/java/io/netty/handler/timeout/IdleStateHandler.java b/handler/src/main/java/io/netty/handler/timeout/IdleStateHandler.java index 299e4c7ec7..2989c750b7 100644 --- a/handler/src/main/java/io/netty/handler/timeout/IdleStateHandler.java +++ b/handler/src/main/java/io/netty/handler/timeout/IdleStateHandler.java @@ -15,6 +15,8 @@ */ package io.netty.handler.timeout; +import static java.util.Objects.requireNonNull; + import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.Channel; import io.netty.channel.Channel.Unsafe; @@ -189,9 +191,7 @@ public class IdleStateHandler extends ChannelDuplexHandler { public IdleStateHandler(boolean observeOutput, long readerIdleTime, long writerIdleTime, long allIdleTime, TimeUnit unit) { - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(unit, "unit"); this.observeOutput = observeOutput; diff --git a/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java b/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java index 70c5881882..188d091e70 100644 --- a/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java +++ b/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java @@ -15,6 +15,8 @@ */ package io.netty.handler.timeout; +import static java.util.Objects.requireNonNull; + import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.Channel; import io.netty.channel.ChannelDuplexHandler; @@ -93,9 +95,7 @@ public class WriteTimeoutHandler extends ChannelOutboundHandlerAdapter { * the {@link TimeUnit} of {@code timeout} */ public WriteTimeoutHandler(long timeout, TimeUnit unit) { - if (unit == null) { - throw new NullPointerException("unit"); - } + requireNonNull(unit, "unit"); if (timeout <= 0) { timeoutNanos = 0; diff --git a/handler/src/main/java/io/netty/handler/traffic/GlobalTrafficShapingHandler.java b/handler/src/main/java/io/netty/handler/traffic/GlobalTrafficShapingHandler.java index 29b72bc22d..a107b673f2 100644 --- a/handler/src/main/java/io/netty/handler/traffic/GlobalTrafficShapingHandler.java +++ b/handler/src/main/java/io/netty/handler/traffic/GlobalTrafficShapingHandler.java @@ -15,6 +15,8 @@ */ package io.netty.handler.traffic; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandler.Sharable; import io.netty.channel.Channel; @@ -103,9 +105,7 @@ public class GlobalTrafficShapingHandler extends AbstractTrafficShapingHandler { * Create the global TrafficCounter. */ void createGlobalTrafficCounter(ScheduledExecutorService executor) { - if (executor == null) { - throw new NullPointerException("executor"); - } + requireNonNull(executor, "executor"); TrafficCounter tc = new TrafficCounter(this, executor, "GlobalTC", checkInterval); setTrafficCounter(tc); tc.start(); diff --git a/handler/src/main/java/io/netty/handler/traffic/TrafficCounter.java b/handler/src/main/java/io/netty/handler/traffic/TrafficCounter.java index 65fc77e00c..caaadc93f6 100644 --- a/handler/src/main/java/io/netty/handler/traffic/TrafficCounter.java +++ b/handler/src/main/java/io/netty/handler/traffic/TrafficCounter.java @@ -15,6 +15,8 @@ */ package io.netty.handler.traffic; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -251,9 +253,7 @@ public class TrafficCounter { * the checkInterval in millisecond between two computations. */ public TrafficCounter(ScheduledExecutorService executor, String name, long checkInterval) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); trafficShapingHandler = null; this.executor = executor; @@ -283,9 +283,7 @@ public class TrafficCounter { if (trafficShapingHandler == null) { throw new IllegalArgumentException("trafficShapingHandler"); } - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.trafficShapingHandler = trafficShapingHandler; this.executor = executor; diff --git a/handler/src/test/java/io/netty/handler/ssl/SniHandlerTest.java b/handler/src/test/java/io/netty/handler/ssl/SniHandlerTest.java index 16364aa078..58b84f97ce 100644 --- a/handler/src/test/java/io/netty/handler/ssl/SniHandlerTest.java +++ b/handler/src/test/java/io/netty/handler/ssl/SniHandlerTest.java @@ -47,7 +47,6 @@ import io.netty.util.ReferenceCountUtil; import io.netty.util.ReferenceCounted; import io.netty.util.internal.ResourcesUtil; import io.netty.util.concurrent.Promise; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import org.junit.Test; import org.junit.runner.RunWith; @@ -63,6 +62,7 @@ import java.util.concurrent.atomic.AtomicReference; import javax.net.ssl.SSLEngine; +import static java.util.Objects.requireNonNull; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.nullValue; import static org.junit.Assert.*; @@ -540,7 +540,7 @@ public class SniHandlerTest { CustomSslHandler(SslContext sslContext, SSLEngine sslEngine) { super(sslEngine); - this.sslContext = ObjectUtil.checkNotNull(sslContext, "sslContext"); + this.sslContext = requireNonNull(sslContext, "sslContext"); } @Override diff --git a/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelHandlerContext.java b/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelHandlerContext.java index f03b5655c9..e57b083226 100644 --- a/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelHandlerContext.java +++ b/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelHandlerContext.java @@ -32,7 +32,7 @@ import io.netty.util.concurrent.EventExecutor; import java.net.SocketAddress; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; public abstract class EmbeddedChannelHandlerContext implements ChannelHandlerContext { private static final String HANDLER_NAME = "microbench-delegator-ctx"; @@ -43,10 +43,10 @@ public abstract class EmbeddedChannelHandlerContext implements ChannelHandlerCon private SocketAddress localAddress; protected EmbeddedChannelHandlerContext(ByteBufAllocator alloc, ChannelHandler handler, EmbeddedChannel channel) { - this.alloc = checkNotNull(alloc, "alloc"); - this.channel = checkNotNull(channel, "channel"); - this.handler = checkNotNull(handler, "handler"); - eventLoop = checkNotNull(channel.eventLoop(), "eventLoop"); + this.alloc = requireNonNull(alloc, "alloc"); + this.channel = requireNonNull(channel, "channel"); + this.handler = requireNonNull(handler, "handler"); + eventLoop = requireNonNull(channel.eventLoop(), "eventLoop"); } protected abstract void handleException(Throwable t); diff --git a/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelWriteAccumulatingHandlerContext.java b/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelWriteAccumulatingHandlerContext.java index 244c569222..fba8dd27f3 100644 --- a/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelWriteAccumulatingHandlerContext.java +++ b/microbench/src/main/java/io/netty/microbench/channel/EmbeddedChannelWriteAccumulatingHandlerContext.java @@ -14,6 +14,8 @@ */ package io.netty.microbench.channel; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelFuture; @@ -21,7 +23,6 @@ import io.netty.channel.ChannelHandler; import io.netty.channel.ChannelPromise; import io.netty.channel.embedded.EmbeddedChannel; import io.netty.handler.codec.ByteToMessageDecoder; -import io.netty.util.internal.ObjectUtil; public abstract class EmbeddedChannelWriteAccumulatingHandlerContext extends EmbeddedChannelHandlerContext { private ByteBuf cumulation; @@ -36,7 +37,7 @@ public abstract class EmbeddedChannelWriteAccumulatingHandlerContext extends Emb ByteToMessageDecoder.Cumulator writeCumulator, EmbeddedChannel channel) { super(alloc, handler, channel); - this.cumulator = ObjectUtil.checkNotNull(writeCumulator, "writeCumulator"); + this.cumulator = requireNonNull(writeCumulator, "writeCumulator"); } public final ByteBuf cumulation() { diff --git a/microbench/src/main/java/io/netty/microbench/internal/EscapeCsvBenchmark.java b/microbench/src/main/java/io/netty/microbench/internal/EscapeCsvBenchmark.java index e6750e8d18..d4483c5a49 100644 --- a/microbench/src/main/java/io/netty/microbench/internal/EscapeCsvBenchmark.java +++ b/microbench/src/main/java/io/netty/microbench/internal/EscapeCsvBenchmark.java @@ -26,8 +26,8 @@ import org.openjdk.jmh.runner.options.ChainedOptionsBuilder; import java.util.concurrent.TimeUnit; -import static io.netty.util.internal.ObjectUtil.*; import static io.netty.util.internal.StringUtil.*; +import static java.util.Objects.requireNonNull; @Threads(1) @Warmup(iterations = 3) @@ -59,7 +59,7 @@ public class EscapeCsvBenchmark extends AbstractMicrobenchmark { } private static CharSequence escapeCsvOld(CharSequence value, boolean trimWhiteSpace) { - int length = checkNotNull(value, "value").length(); + int length = requireNonNull(value, "value").length(); if (length == 0) { return value; } diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/AuthoritativeDnsServerCacheAdapter.java b/resolver-dns/src/main/java/io/netty/resolver/dns/AuthoritativeDnsServerCacheAdapter.java index 38f2c0a45e..555e713a04 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/AuthoritativeDnsServerCacheAdapter.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/AuthoritativeDnsServerCacheAdapter.java @@ -24,7 +24,7 @@ import java.net.InetSocketAddress; import java.util.ArrayList; import java.util.List; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * {@link AuthoritativeDnsServerCache} implementation which delegates all operations to a wrapped {@link DnsCache}. @@ -37,7 +37,7 @@ final class AuthoritativeDnsServerCacheAdapter implements AuthoritativeDnsServer private final DnsCache cache; AuthoritativeDnsServerCacheAdapter(DnsCache cache) { - this.cache = checkNotNull(cache, "cache"); + this.cache = requireNonNull(cache, "cache"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserver.java b/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserver.java index e4b4c35448..fc02999438 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserver.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserver.java @@ -23,7 +23,7 @@ import io.netty.util.internal.UnstableApi; import java.net.InetSocketAddress; import java.util.List; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Combines two {@link DnsQueryLifecycleObserver} into a single {@link DnsQueryLifecycleObserver}. @@ -39,8 +39,8 @@ public final class BiDnsQueryLifecycleObserver implements DnsQueryLifecycleObser * @param b The {@link DnsQueryLifecycleObserver} that will receive events second. */ public BiDnsQueryLifecycleObserver(DnsQueryLifecycleObserver a, DnsQueryLifecycleObserver b) { - this.a = checkNotNull(a, "a"); - this.b = checkNotNull(b, "b"); + this.a = requireNonNull(a, "a"); + this.b = requireNonNull(b, "b"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserverFactory.java b/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserverFactory.java index 6745a36728..c1547f9338 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserverFactory.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/BiDnsQueryLifecycleObserverFactory.java @@ -18,7 +18,7 @@ package io.netty.resolver.dns; import io.netty.handler.codec.dns.DnsQuestion; import io.netty.util.internal.UnstableApi; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Combines two {@link DnsQueryLifecycleObserverFactory} into a single {@link DnsQueryLifecycleObserverFactory}. @@ -34,8 +34,8 @@ public final class BiDnsQueryLifecycleObserverFactory implements DnsQueryLifecyc * @param b The {@link DnsQueryLifecycleObserverFactory} that will receive events second. */ public BiDnsQueryLifecycleObserverFactory(DnsQueryLifecycleObserverFactory a, DnsQueryLifecycleObserverFactory b) { - this.a = checkNotNull(a, "a"); - this.b = checkNotNull(b, "b"); + this.a = requireNonNull(a, "a"); + this.b = requireNonNull(b, "b"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultAuthoritativeDnsServerCache.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultAuthoritativeDnsServerCache.java index 1466a7ee4c..b3f1763ef3 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultAuthoritativeDnsServerCache.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultAuthoritativeDnsServerCache.java @@ -23,9 +23,9 @@ import java.util.Comparator; import java.util.List; import java.util.concurrent.ConcurrentMap; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositive; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * Default implementation of {@link AuthoritativeDnsServerCache}, backed by a {@link ConcurrentMap}. @@ -82,7 +82,7 @@ public class DefaultAuthoritativeDnsServerCache implements AuthoritativeDnsServe @Override public DnsServerAddressStream get(String hostname) { - checkNotNull(hostname, "hostname"); + requireNonNull(hostname, "hostname"); List addresses = resolveCache.get(hostname); if (addresses == null || addresses.isEmpty()) { @@ -93,9 +93,9 @@ public class DefaultAuthoritativeDnsServerCache implements AuthoritativeDnsServe @Override public void cache(String hostname, InetSocketAddress address, long originalTtl, EventLoop loop) { - checkNotNull(hostname, "hostname"); - checkNotNull(address, "address"); - checkNotNull(loop, "loop"); + requireNonNull(hostname, "hostname"); + requireNonNull(address, "address"); + requireNonNull(loop, "loop"); if (address.getHostString() == null) { // We only cache addresses that have also a host string as we will need it later when trying to replace @@ -113,7 +113,7 @@ public class DefaultAuthoritativeDnsServerCache implements AuthoritativeDnsServe @Override public boolean clear(String hostname) { - checkNotNull(hostname, "hostname"); + requireNonNull(hostname, "hostname"); return resolveCache.clear(hostname); } diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCache.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCache.java index 86a4586f03..a4281c1ce9 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCache.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCache.java @@ -25,8 +25,8 @@ import java.util.Collections; import java.util.List; import java.util.concurrent.ConcurrentMap; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * Default implementation of {@link DnsCache}, backed by a {@link ConcurrentMap}. @@ -115,7 +115,7 @@ public class DefaultDnsCache implements DnsCache { @Override public boolean clear(String hostname) { - checkNotNull(hostname, "hostname"); + requireNonNull(hostname, "hostname"); return resolveCache.clear(appendDot(hostname)); } @@ -125,7 +125,7 @@ public class DefaultDnsCache implements DnsCache { @Override public List get(String hostname, DnsRecord[] additionals) { - checkNotNull(hostname, "hostname"); + requireNonNull(hostname, "hostname"); if (!emptyAdditionals(additionals)) { return Collections.emptyList(); } @@ -136,9 +136,9 @@ public class DefaultDnsCache implements DnsCache { @Override public DnsCacheEntry cache(String hostname, DnsRecord[] additionals, InetAddress address, long originalTtl, EventLoop loop) { - checkNotNull(hostname, "hostname"); - checkNotNull(address, "address"); - checkNotNull(loop, "loop"); + requireNonNull(hostname, "hostname"); + requireNonNull(address, "address"); + requireNonNull(loop, "loop"); DefaultDnsCacheEntry e = new DefaultDnsCacheEntry(hostname, address); if (maxTtl == 0 || !emptyAdditionals(additionals)) { return e; @@ -149,9 +149,9 @@ public class DefaultDnsCache implements DnsCache { @Override public DnsCacheEntry cache(String hostname, DnsRecord[] additionals, Throwable cause, EventLoop loop) { - checkNotNull(hostname, "hostname"); - checkNotNull(cause, "cause"); - checkNotNull(loop, "loop"); + requireNonNull(hostname, "hostname"); + requireNonNull(cause, "cause"); + requireNonNull(loop, "loop"); DefaultDnsCacheEntry e = new DefaultDnsCacheEntry(hostname, cause); if (negativeTtl == 0 || !emptyAdditionals(additionals)) { diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCnameCache.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCnameCache.java index 8638808757..c8b853ff9d 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCnameCache.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DefaultDnsCnameCache.java @@ -21,7 +21,9 @@ import io.netty.util.internal.UnstableApi; import java.util.List; -import static io.netty.util.internal.ObjectUtil.*; +import static io.netty.util.internal.ObjectUtil.checkPositive; +import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * Default implementation of a {@link DnsCnameCache}. @@ -69,7 +71,7 @@ public final class DefaultDnsCnameCache implements DnsCnameCache { @SuppressWarnings("unchecked") @Override public String get(String hostname) { - checkNotNull(hostname, "hostname"); + requireNonNull(hostname, "hostname"); List cached = cache.get(hostname); if (cached == null || cached.isEmpty()) { return null; @@ -80,9 +82,9 @@ public final class DefaultDnsCnameCache implements DnsCnameCache { @Override public void cache(String hostname, String cname, long originalTtl, EventLoop loop) { - checkNotNull(hostname, "hostname"); - checkNotNull(cname, "cname"); - checkNotNull(loop, "loop"); + requireNonNull(hostname, "hostname"); + requireNonNull(cname, "cname"); + requireNonNull(loop, "loop"); cache.cache(hostname, cname, Math.max(minTtl, (int) Math.min(maxTtl, originalTtl)), loop); } @@ -93,7 +95,7 @@ public final class DefaultDnsCnameCache implements DnsCnameCache { @Override public boolean clear(String hostname) { - checkNotNull(hostname, "hostname"); + requireNonNull(hostname, "hostname"); return cache.clear(hostname); } } diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java index 15e9fe5a24..6be02ce4e8 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java @@ -74,8 +74,8 @@ import java.util.List; import static io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider.DNS_PORT; import static io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider.parseEtcResolverFirstNdots; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositive; +import static java.util.Objects.requireNonNull; /** * A DNS-based {@link InetNameResolver}. @@ -332,17 +332,17 @@ public class DnsNameResolver extends InetNameResolver { this.maxQueriesPerResolve = checkPositive(maxQueriesPerResolve, "maxQueriesPerResolve"); this.maxPayloadSize = checkPositive(maxPayloadSize, "maxPayloadSize"); this.optResourceEnabled = optResourceEnabled; - this.hostsFileEntriesResolver = checkNotNull(hostsFileEntriesResolver, "hostsFileEntriesResolver"); + this.hostsFileEntriesResolver = requireNonNull(hostsFileEntriesResolver, "hostsFileEntriesResolver"); this.dnsServerAddressStreamProvider = - checkNotNull(dnsServerAddressStreamProvider, "dnsServerAddressStreamProvider"); - this.resolveCache = checkNotNull(resolveCache, "resolveCache"); - this.cnameCache = checkNotNull(cnameCache, "cnameCache"); + requireNonNull(dnsServerAddressStreamProvider, "dnsServerAddressStreamProvider"); + this.resolveCache = requireNonNull(resolveCache, "resolveCache"); + this.cnameCache = requireNonNull(cnameCache, "cnameCache"); this.dnsQueryLifecycleObserverFactory = traceEnabled ? dnsQueryLifecycleObserverFactory instanceof NoopDnsQueryLifecycleObserverFactory ? new TraceDnsQueryLifeCycleObserverFactory() : new BiDnsQueryLifecycleObserverFactory(new TraceDnsQueryLifeCycleObserverFactory(), dnsQueryLifecycleObserverFactory) : - checkNotNull(dnsQueryLifecycleObserverFactory, "dnsQueryLifecycleObserverFactory"); + requireNonNull(dnsQueryLifecycleObserverFactory, "dnsQueryLifecycleObserverFactory"); this.searchDomains = searchDomains != null ? searchDomains.clone() : DEFAULT_SEARCH_DOMAINS; this.ndots = ndots >= 0 ? ndots : DEFAULT_NDOTS; this.decodeIdn = decodeIdn; @@ -376,7 +376,7 @@ public class DnsNameResolver extends InetNameResolver { throw new IllegalArgumentException("Unknown ResolvedAddressTypes " + resolvedAddressTypes); } preferredAddressType = preferredAddressType(this.resolvedAddressTypes); - this.authoritativeDnsServerCache = checkNotNull(authoritativeDnsServerCache, "authoritativeDnsServerCache"); + this.authoritativeDnsServerCache = requireNonNull(authoritativeDnsServerCache, "authoritativeDnsServerCache"); nameServerComparator = new NameServerComparator(preferredAddressType.addressType()); Bootstrap b = new Bootstrap(); @@ -621,7 +621,7 @@ public class DnsNameResolver extends InetNameResolver { */ public final Future resolve(String inetHost, Iterable additionals, Promise promise) { - checkNotNull(promise, "promise"); + requireNonNull(promise, "promise"); DnsRecord[] additionalsArray = toArray(additionals, true); try { doResolve(inetHost, additionalsArray, promise, resolveCache); @@ -654,7 +654,7 @@ public class DnsNameResolver extends InetNameResolver { */ public final Future> resolveAll(String inetHost, Iterable additionals, Promise> promise) { - checkNotNull(promise, "promise"); + requireNonNull(promise, "promise"); DnsRecord[] additionalsArray = toArray(additionals, true); try { doResolveAll(inetHost, additionalsArray, promise, resolveCache); @@ -721,8 +721,8 @@ public class DnsNameResolver extends InetNameResolver { private Future> resolveAll(DnsQuestion question, DnsRecord[] additionals, Promise> promise) { - checkNotNull(question, "question"); - checkNotNull(promise, "promise"); + requireNonNull(question, "question"); + requireNonNull(promise, "promise"); // Respect /etc/hosts as well if the record type is A or AAAA. final DnsRecordType type = question.type(); @@ -760,7 +760,7 @@ public class DnsNameResolver extends InetNameResolver { } private static DnsRecord[] toArray(Iterable additionals, boolean validateType) { - checkNotNull(additionals, "additionals"); + requireNonNull(additionals, "additionals"); if (additionals instanceof Collection) { Collection records = (Collection) additionals; for (DnsRecord r: additionals) { @@ -784,7 +784,7 @@ public class DnsNameResolver extends InetNameResolver { } private static void validateAdditional(DnsRecord record, boolean validateType) { - checkNotNull(record, "record"); + requireNonNull(record, "record"); if (validateType && record instanceof DnsRawRecord) { throw new IllegalArgumentException("DnsRawRecord implementations not allowed: " + record); } @@ -1092,7 +1092,7 @@ public class DnsNameResolver extends InetNameResolver { assert !writePromise.isVoid(); final Promise> castPromise = cast( - checkNotNull(promise, "promise")); + requireNonNull(promise, "promise")); try { new DnsQueryContext(this, nameServerAddr, question, additionals, castPromise) .query(flush, writePromise); diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverBuilder.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverBuilder.java index f9f561576f..6b42464bf5 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverBuilder.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverBuilder.java @@ -29,8 +29,8 @@ import java.util.Arrays; import java.util.List; import static io.netty.resolver.dns.DnsServerAddressStreamProviders.platformDefault; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.intValue; +import static java.util.Objects.requireNonNull; /** * A {@link DnsNameResolver} builder. @@ -142,7 +142,7 @@ public final class DnsNameResolverBuilder { */ public DnsNameResolverBuilder dnsQueryLifecycleObserverFactory(DnsQueryLifecycleObserverFactory lifecycleObserverFactory) { - this.dnsQueryLifecycleObserverFactory = checkNotNull(lifecycleObserverFactory, "lifecycleObserverFactory"); + this.dnsQueryLifecycleObserverFactory = requireNonNull(lifecycleObserverFactory, "lifecycleObserverFactory"); return this; } @@ -332,7 +332,7 @@ public final class DnsNameResolverBuilder { */ public DnsNameResolverBuilder nameServerProvider(DnsServerAddressStreamProvider dnsServerAddressStreamProvider) { this.dnsServerAddressStreamProvider = - checkNotNull(dnsServerAddressStreamProvider, "dnsServerAddressStreamProvider"); + requireNonNull(dnsServerAddressStreamProvider, "dnsServerAddressStreamProvider"); return this; } @@ -343,7 +343,7 @@ public final class DnsNameResolverBuilder { * @return {@code this} */ public DnsNameResolverBuilder searchDomains(Iterable searchDomains) { - checkNotNull(searchDomains, "searchDomains"); + requireNonNull(searchDomains, "searchDomains"); final List list = new ArrayList<>(4); diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverException.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverException.java index 77e347449b..f294b88a22 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverException.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolverException.java @@ -15,9 +15,10 @@ */ package io.netty.resolver.dns; +import static java.util.Objects.requireNonNull; + import io.netty.handler.codec.dns.DnsQuestion; import io.netty.util.internal.EmptyArrays; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.UnstableApi; import java.net.InetSocketAddress; @@ -47,11 +48,11 @@ public class DnsNameResolverException extends RuntimeException { } private static InetSocketAddress validateRemoteAddress(InetSocketAddress remoteAddress) { - return ObjectUtil.checkNotNull(remoteAddress, "remoteAddress"); + return requireNonNull(remoteAddress, "remoteAddress"); } private static DnsQuestion validateQuestion(DnsQuestion question) { - return ObjectUtil.checkNotNull(question, "question"); + return requireNonNull(question, "question"); } /** diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java index 67934534c3..0b32f6fd14 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java @@ -16,7 +16,6 @@ package io.netty.resolver.dns; import io.netty.channel.AddressedEnvelope; -import io.netty.channel.Channel; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; import io.netty.channel.ChannelPromise; @@ -29,7 +28,6 @@ import io.netty.handler.codec.dns.DnsResponse; import io.netty.handler.codec.dns.DnsSection; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.FutureListener; -import io.netty.util.concurrent.GenericFutureListener; import io.netty.util.concurrent.Promise; import io.netty.util.concurrent.ScheduledFuture; import io.netty.util.internal.logging.InternalLogger; @@ -38,7 +36,7 @@ import io.netty.util.internal.logging.InternalLoggerFactory; import java.net.InetSocketAddress; import java.util.concurrent.TimeUnit; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; final class DnsQueryContext implements FutureListener> { @@ -61,11 +59,11 @@ final class DnsQueryContext implements FutureListener> promise) { - this.parent = checkNotNull(parent, "parent"); - this.nameServerAddr = checkNotNull(nameServerAddr, "nameServerAddr"); - this.question = checkNotNull(question, "question"); - this.additionals = checkNotNull(additionals, "additionals"); - this.promise = checkNotNull(promise, "promise"); + this.parent = requireNonNull(parent, "parent"); + this.nameServerAddr = requireNonNull(nameServerAddr, "nameServerAddr"); + this.question = requireNonNull(question, "question"); + this.additionals = requireNonNull(additionals, "additionals"); + this.promise = requireNonNull(promise, "promise"); recursionDesired = parent.isRecursionDesired(); id = parent.queryContextManager.add(this); diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsResolveContext.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsResolveContext.java index bc77fd2487..e26a0f4429 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsResolveContext.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsResolveContext.java @@ -59,6 +59,7 @@ import java.util.Set; import static io.netty.resolver.dns.DnsAddressDecoder.decodeAddress; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; abstract class DnsResolveContext { @@ -117,7 +118,7 @@ abstract class DnsResolveContext { this.expectedTypes = expectedTypes; this.additionals = additionals; - this.nameServerAddrs = ObjectUtil.checkNotNull(nameServerAddrs, "nameServerAddrs"); + this.nameServerAddrs = requireNonNull(nameServerAddrs, "nameServerAddrs"); maxAllowedQueries = parent.maxQueriesPerResolve(); allowedQueries = maxAllowedQueries; } diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsServerAddresses.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsServerAddresses.java index b7cbc1141a..7b209be111 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsServerAddresses.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsServerAddresses.java @@ -16,6 +16,8 @@ package io.netty.resolver.dns; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.UnstableApi; import java.net.InetSocketAddress; @@ -149,9 +151,7 @@ public abstract class DnsServerAddresses { * Returns the {@link DnsServerAddresses} that yields only a single {@code address}. */ public static DnsServerAddresses singleton(final InetSocketAddress address) { - if (address == null) { - throw new NullPointerException("address"); - } + requireNonNull(address, "address"); if (address.isUnresolved()) { throw new IllegalArgumentException("cannot use an unresolved DNS server address: " + address); } @@ -160,9 +160,7 @@ public abstract class DnsServerAddresses { } private static List sanitize(Iterable addresses) { - if (addresses == null) { - throw new NullPointerException("addresses"); - } + requireNonNull(addresses, "addresses"); final List list; if (addresses instanceof Collection) { @@ -189,9 +187,7 @@ public abstract class DnsServerAddresses { } private static List sanitize(InetSocketAddress[] addresses) { - if (addresses == null) { - throw new NullPointerException("addresses"); - } + requireNonNull(addresses, "addresses"); List list = new ArrayList<>(addresses.length); for (InetSocketAddress a: addresses) { diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/InflightNameResolver.java b/resolver-dns/src/main/java/io/netty/resolver/dns/InflightNameResolver.java index a3b0decf6b..4255a66132 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/InflightNameResolver.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/InflightNameResolver.java @@ -26,7 +26,7 @@ import io.netty.util.internal.StringUtil; import java.util.List; import java.util.concurrent.ConcurrentMap; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; // FIXME(trustin): Find a better name and move it to the 'resolver' module. final class InflightNameResolver implements NameResolver { @@ -40,10 +40,10 @@ final class InflightNameResolver implements NameResolver { ConcurrentMap> resolvesInProgress, ConcurrentMap>> resolveAllsInProgress) { - this.executor = checkNotNull(executor, "executor"); - this.delegate = checkNotNull(delegate, "delegate"); - this.resolvesInProgress = checkNotNull(resolvesInProgress, "resolvesInProgress"); - this.resolveAllsInProgress = checkNotNull(resolveAllsInProgress, "resolveAllsInProgress"); + this.executor = requireNonNull(executor, "executor"); + this.delegate = requireNonNull(delegate, "delegate"); + this.resolvesInProgress = requireNonNull(resolvesInProgress, "resolvesInProgress"); + this.resolveAllsInProgress = requireNonNull(resolveAllsInProgress, "resolveAllsInProgress"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/NameServerComparator.java b/resolver-dns/src/main/java/io/netty/resolver/dns/NameServerComparator.java index 3f6703cb58..aeb20cc53c 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/NameServerComparator.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/NameServerComparator.java @@ -15,7 +15,7 @@ */ package io.netty.resolver.dns; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; import java.io.Serializable; import java.net.InetAddress; @@ -39,7 +39,7 @@ public final class NameServerComparator implements Comparator private final Class preferredAddressType; public NameServerComparator(Class preferredAddressType) { - this.preferredAddressType = ObjectUtil.checkNotNull(preferredAddressType, "preferredAddressType"); + this.preferredAddressType = requireNonNull(preferredAddressType, "preferredAddressType"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifeCycleObserverFactory.java b/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifeCycleObserverFactory.java index dc7572bca1..b0ad8cc785 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifeCycleObserverFactory.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifeCycleObserverFactory.java @@ -20,7 +20,7 @@ import io.netty.util.internal.logging.InternalLogLevel; import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; final class TraceDnsQueryLifeCycleObserverFactory implements DnsQueryLifecycleObserverFactory { private static final InternalLogger DEFAULT_LOGGER = @@ -34,8 +34,8 @@ final class TraceDnsQueryLifeCycleObserverFactory implements DnsQueryLifecycleOb } TraceDnsQueryLifeCycleObserverFactory(InternalLogger logger, InternalLogLevel level) { - this.logger = checkNotNull(logger, "logger"); - this.level = checkNotNull(level, "level"); + this.logger = requireNonNull(logger, "logger"); + this.level = requireNonNull(level, "level"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifecycleObserver.java b/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifecycleObserver.java index 8166ff2c30..2a71aed562 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifecycleObserver.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/TraceDnsQueryLifecycleObserver.java @@ -24,7 +24,7 @@ import io.netty.util.internal.logging.InternalLogger; import java.net.InetSocketAddress; import java.util.List; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; final class TraceDnsQueryLifecycleObserver implements DnsQueryLifecycleObserver { private final InternalLogger logger; @@ -33,9 +33,9 @@ final class TraceDnsQueryLifecycleObserver implements DnsQueryLifecycleObserver private InetSocketAddress dnsServerAddress; TraceDnsQueryLifecycleObserver(DnsQuestion question, InternalLogger logger, InternalLogLevel level) { - this.question = checkNotNull(question, "question"); - this.logger = checkNotNull(logger, "logger"); - this.level = checkNotNull(level, "level"); + this.question = requireNonNull(question, "question"); + this.logger = requireNonNull(logger, "logger"); + this.level = requireNonNull(level, "level"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/UniSequentialDnsServerAddressStreamProvider.java b/resolver-dns/src/main/java/io/netty/resolver/dns/UniSequentialDnsServerAddressStreamProvider.java index 5914f6363e..d6dc54fb5a 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/UniSequentialDnsServerAddressStreamProvider.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/UniSequentialDnsServerAddressStreamProvider.java @@ -15,7 +15,8 @@ */ package io.netty.resolver.dns; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + /** * A {@link DnsServerAddressStreamProvider} which is backed by a single {@link DnsServerAddresses}. @@ -24,7 +25,7 @@ abstract class UniSequentialDnsServerAddressStreamProvider implements DnsServerA private final DnsServerAddresses addresses; UniSequentialDnsServerAddressStreamProvider(DnsServerAddresses addresses) { - this.addresses = ObjectUtil.checkNotNull(addresses, "addresses"); + this.addresses = requireNonNull(addresses, "addresses"); } @Override diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/UnixResolverDnsServerAddressStreamProvider.java b/resolver-dns/src/main/java/io/netty/resolver/dns/UnixResolverDnsServerAddressStreamProvider.java index 2e76abf13d..4f233ffa93 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/UnixResolverDnsServerAddressStreamProvider.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/UnixResolverDnsServerAddressStreamProvider.java @@ -35,8 +35,8 @@ import java.util.Map; import java.util.regex.Pattern; import static io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider.DNS_PORT; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.StringUtil.indexOfNonWhiteSpace; +import static java.util.Objects.requireNonNull; /** * Able to parse files such as /etc/resolv.conf and @@ -91,7 +91,7 @@ public final class UnixResolverDnsServerAddressStreamProvider implements DnsServ * @throws IOException If an error occurs while parsing the input files. */ public UnixResolverDnsServerAddressStreamProvider(File etcResolvConf, File... etcResolverFiles) throws IOException { - Map etcResolvConfMap = parse(checkNotNull(etcResolvConf, "etcResolvConf")); + Map etcResolvConfMap = parse(requireNonNull(etcResolvConf, "etcResolvConf")); final boolean useEtcResolverFiles = etcResolverFiles != null && etcResolverFiles.length != 0; domainToNameServerStreamMap = useEtcResolverFiles ? parse(etcResolverFiles) : etcResolvConfMap; diff --git a/resolver/src/main/java/io/netty/resolver/AbstractAddressResolver.java b/resolver/src/main/java/io/netty/resolver/AbstractAddressResolver.java index fa034d01eb..67566c6832 100644 --- a/resolver/src/main/java/io/netty/resolver/AbstractAddressResolver.java +++ b/resolver/src/main/java/io/netty/resolver/AbstractAddressResolver.java @@ -27,7 +27,7 @@ import java.nio.channels.UnsupportedAddressTypeException; import java.util.Collections; import java.util.List; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * A skeletal {@link AddressResolver} implementation. @@ -43,7 +43,7 @@ public abstract class AbstractAddressResolver implement * by {@link #resolve(SocketAddress)} */ protected AbstractAddressResolver(EventExecutor executor) { - this.executor = checkNotNull(executor, "executor"); + this.executor = requireNonNull(executor, "executor"); matcher = TypeParameterMatcher.find(this, AbstractAddressResolver.class, "T"); } @@ -53,7 +53,7 @@ public abstract class AbstractAddressResolver implement * @param addressType the type of the {@link SocketAddress} supported by this resolver */ protected AbstractAddressResolver(EventExecutor executor, Class addressType) { - this.executor = checkNotNull(executor, "executor"); + this.executor = requireNonNull(executor, "executor"); matcher = TypeParameterMatcher.get(addressType); } @@ -89,7 +89,7 @@ public abstract class AbstractAddressResolver implement @Override public final Future resolve(SocketAddress address) { - if (!isSupported(checkNotNull(address, "address"))) { + if (!isSupported(requireNonNull(address, "address"))) { // Address type not supported by the resolver return executor().newFailedFuture(new UnsupportedAddressTypeException()); } @@ -114,8 +114,8 @@ public abstract class AbstractAddressResolver implement @Override public final Future resolve(SocketAddress address, Promise promise) { - checkNotNull(address, "address"); - checkNotNull(promise, "promise"); + requireNonNull(address, "address"); + requireNonNull(promise, "promise"); if (!isSupported(address)) { // Address type not supported by the resolver @@ -141,7 +141,7 @@ public abstract class AbstractAddressResolver implement @Override public final Future> resolveAll(SocketAddress address) { - if (!isSupported(checkNotNull(address, "address"))) { + if (!isSupported(requireNonNull(address, "address"))) { // Address type not supported by the resolver return executor().newFailedFuture(new UnsupportedAddressTypeException()); } @@ -166,8 +166,8 @@ public abstract class AbstractAddressResolver implement @Override public final Future> resolveAll(SocketAddress address, Promise> promise) { - checkNotNull(address, "address"); - checkNotNull(promise, "promise"); + requireNonNull(address, "address"); + requireNonNull(promise, "promise"); if (!isSupported(address)) { // Address type not supported by the resolver diff --git a/resolver/src/main/java/io/netty/resolver/AddressResolverGroup.java b/resolver/src/main/java/io/netty/resolver/AddressResolverGroup.java index 9f9f5ff59f..7827771e4f 100644 --- a/resolver/src/main/java/io/netty/resolver/AddressResolverGroup.java +++ b/resolver/src/main/java/io/netty/resolver/AddressResolverGroup.java @@ -16,8 +16,9 @@ package io.netty.resolver; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.EventExecutor; -import io.netty.util.concurrent.Future; import io.netty.util.concurrent.FutureListener; import io.netty.util.internal.UnstableApi; import io.netty.util.internal.logging.InternalLogger; @@ -51,9 +52,7 @@ public abstract class AddressResolverGroup implements C * {@link #getResolver(EventExecutor)} call with the same {@link EventExecutor}. */ public AddressResolver getResolver(final EventExecutor executor) { - if (executor == null) { - throw new NullPointerException("executor"); - } + requireNonNull(executor, "executor"); if (executor.isShuttingDown()) { throw new IllegalStateException("executor not accepting a task"); diff --git a/resolver/src/main/java/io/netty/resolver/CompositeNameResolver.java b/resolver/src/main/java/io/netty/resolver/CompositeNameResolver.java index 0afc407d3d..d17e6a54de 100644 --- a/resolver/src/main/java/io/netty/resolver/CompositeNameResolver.java +++ b/resolver/src/main/java/io/netty/resolver/CompositeNameResolver.java @@ -24,7 +24,7 @@ import io.netty.util.internal.UnstableApi; import java.util.Arrays; import java.util.List; -import static io.netty.util.internal.ObjectUtil.*; +import static java.util.Objects.requireNonNull; /** * A composite {@link SimpleNameResolver} that resolves a host name against a sequence of {@link NameResolver}s. @@ -43,11 +43,9 @@ public final class CompositeNameResolver extends SimpleNameResolver { */ public CompositeNameResolver(EventExecutor executor, NameResolver... resolvers) { super(executor); - checkNotNull(resolvers, "resolvers"); + requireNonNull(resolvers, "resolvers"); for (int i = 0; i < resolvers.length; i++) { - if (resolvers[i] == null) { - throw new NullPointerException("resolvers[" + i + ']'); - } + requireNonNull(resolvers[i], "resolvers[" + i + "]"); } if (resolvers.length < 2) { throw new IllegalArgumentException("resolvers: " + Arrays.asList(resolvers) + diff --git a/resolver/src/main/java/io/netty/resolver/HostsFileParser.java b/resolver/src/main/java/io/netty/resolver/HostsFileParser.java index b4650589af..86d284b3fe 100644 --- a/resolver/src/main/java/io/netty/resolver/HostsFileParser.java +++ b/resolver/src/main/java/io/netty/resolver/HostsFileParser.java @@ -38,7 +38,7 @@ import java.util.HashMap; import java.util.Map; import java.util.regex.Pattern; -import static io.netty.util.internal.ObjectUtil.*; +import static java.util.Objects.requireNonNull; /** * A parser for hosts files. @@ -125,8 +125,8 @@ public final class HostsFileParser { * @throws IOException file could not be read */ public static HostsFileEntries parse(File file, Charset... charsets) throws IOException { - checkNotNull(file, "file"); - checkNotNull(charsets, "charsets"); + requireNonNull(file, "file"); + requireNonNull(charsets, "charsets"); if (file.exists() && file.isFile()) { for (Charset charset: charsets) { HostsFileEntries entries = parse(new BufferedReader(new InputStreamReader( @@ -147,7 +147,7 @@ public final class HostsFileParser { * @throws IOException file could not be read */ public static HostsFileEntries parse(Reader reader) throws IOException { - checkNotNull(reader, "reader"); + requireNonNull(reader, "reader"); BufferedReader buff = new BufferedReader(reader); try { Map ipv4Entries = new HashMap<>(); diff --git a/resolver/src/main/java/io/netty/resolver/SimpleNameResolver.java b/resolver/src/main/java/io/netty/resolver/SimpleNameResolver.java index 923530f1a3..fb2b289709 100644 --- a/resolver/src/main/java/io/netty/resolver/SimpleNameResolver.java +++ b/resolver/src/main/java/io/netty/resolver/SimpleNameResolver.java @@ -16,6 +16,8 @@ package io.netty.resolver; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.EventExecutor; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.Promise; @@ -23,8 +25,6 @@ import io.netty.util.internal.UnstableApi; import java.util.List; -import static io.netty.util.internal.ObjectUtil.*; - /** * A skeletal {@link NameResolver} implementation. */ @@ -38,7 +38,7 @@ public abstract class SimpleNameResolver implements NameResolver { * by {@link #resolve(String)} */ protected SimpleNameResolver(EventExecutor executor) { - this.executor = checkNotNull(executor, "executor"); + this.executor = requireNonNull(executor, "executor"); } /** @@ -57,7 +57,7 @@ public abstract class SimpleNameResolver implements NameResolver { @Override public Future resolve(String inetHost, Promise promise) { - checkNotNull(promise, "promise"); + requireNonNull(promise, "promise"); try { doResolve(inetHost, promise); @@ -75,7 +75,7 @@ public abstract class SimpleNameResolver implements NameResolver { @Override public Future> resolveAll(String inetHost, Promise> promise) { - checkNotNull(promise, "promise"); + requireNonNull(promise, "promise"); try { doResolveAll(inetHost, promise); diff --git a/testsuite-http2/src/main/java/io/netty/testsuite/http2/HelloWorldHttp1Handler.java b/testsuite-http2/src/main/java/io/netty/testsuite/http2/HelloWorldHttp1Handler.java index 493e31b9ac..1d7165d49a 100644 --- a/testsuite-http2/src/main/java/io/netty/testsuite/http2/HelloWorldHttp1Handler.java +++ b/testsuite-http2/src/main/java/io/netty/testsuite/http2/HelloWorldHttp1Handler.java @@ -32,7 +32,7 @@ import static io.netty.handler.codec.http.HttpHeaderNames.CONTENT_TYPE; import static io.netty.handler.codec.http.HttpResponseStatus.CONTINUE; import static io.netty.handler.codec.http.HttpResponseStatus.OK; import static io.netty.handler.codec.http.HttpVersion.HTTP_1_1; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * HTTP handler that responds with a "Hello World" @@ -41,7 +41,7 @@ public class HelloWorldHttp1Handler extends SimpleChannelInboundHandlerBe aware this config setting can only be adjusted before the channel was registered. */ public EpollChannelConfig setEpollMode(EpollMode mode) { - if (mode == null) { - throw new NullPointerException("mode"); - } + requireNonNull(mode, "mode"); try { switch (mode) { case EDGE_TRIGGERED: diff --git a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDatagramChannel.java b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDatagramChannel.java index 826ec47e77..8a7835edb3 100644 --- a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDatagramChannel.java +++ b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDatagramChannel.java @@ -44,6 +44,7 @@ import java.net.SocketException; import java.nio.ByteBuffer; import static io.netty.channel.epoll.LinuxSocket.newSocketDgram; +import static java.util.Objects.requireNonNull; /** * {@link DatagramChannel} implementation that uses linux EPOLL Edge-Triggered Mode for @@ -141,14 +142,8 @@ public final class EpollDatagramChannel extends AbstractEpollChannel implements public ChannelFuture joinGroup( final InetAddress multicastAddress, final NetworkInterface networkInterface, final InetAddress source, final ChannelPromise promise) { - - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(networkInterface, "networkInterface"); promise.setFailure(new UnsupportedOperationException("Multicast not supported")); return promise; @@ -193,12 +188,8 @@ public final class EpollDatagramChannel extends AbstractEpollChannel implements public ChannelFuture leaveGroup( final InetAddress multicastAddress, final NetworkInterface networkInterface, final InetAddress source, final ChannelPromise promise) { - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(networkInterface, "networkInterface"); promise.setFailure(new UnsupportedOperationException("Multicast not supported")); @@ -216,16 +207,9 @@ public final class EpollDatagramChannel extends AbstractEpollChannel implements public ChannelFuture block( final InetAddress multicastAddress, final NetworkInterface networkInterface, final InetAddress sourceToBlock, final ChannelPromise promise) { - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - if (sourceToBlock == null) { - throw new NullPointerException("sourceToBlock"); - } - - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(sourceToBlock, "sourceToBlock"); + requireNonNull(networkInterface, "networkInterface"); promise.setFailure(new UnsupportedOperationException("Multicast not supported")); return promise; } diff --git a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDomainSocketChannelConfig.java b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDomainSocketChannelConfig.java index ea6c5326b5..aa1e15a8e2 100644 --- a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDomainSocketChannelConfig.java +++ b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollDomainSocketChannelConfig.java @@ -15,6 +15,8 @@ */ package io.netty.channel.epoll; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelOption; import io.netty.channel.MessageSizeEstimator; @@ -137,9 +139,7 @@ public final class EpollDomainSocketChannelConfig extends EpollChannelConfig @Override public EpollDomainSocketChannelConfig setReadMode(DomainSocketReadMode mode) { - if (mode == null) { - throw new NullPointerException("mode"); - } + requireNonNull(mode, "mode"); this.mode = mode; return this; } diff --git a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollHandler.java b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollHandler.java index 766207a958..c59f0ce267 100644 --- a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollHandler.java +++ b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollHandler.java @@ -31,7 +31,6 @@ import io.netty.channel.unix.IovArray; import io.netty.util.IntSupplier; import io.netty.util.collection.IntObjectHashMap; import io.netty.util.collection.IntObjectMap; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import io.netty.util.internal.logging.InternalLogger; import io.netty.util.internal.logging.InternalLoggerFactory; @@ -39,7 +38,9 @@ import io.netty.util.internal.logging.InternalLoggerFactory; import java.io.IOException; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * {@link IoHandler} which uses epoll under the covers. Only works on Linux! @@ -155,8 +156,8 @@ public class EpollHandler implements IoHandler { */ public static IoHandlerFactory newFactory(final int maxEvents, final SelectStrategyFactory selectStrategyFactory) { - ObjectUtil.checkPositiveOrZero(maxEvents, "maxEvents"); - ObjectUtil.checkNotNull(selectStrategyFactory, "selectStrategyFactory"); + checkPositiveOrZero(maxEvents, "maxEvents"); + requireNonNull(selectStrategyFactory, "selectStrategyFactory"); return () -> new EpollHandler(maxEvents, selectStrategyFactory.newSelectStrategy()); } diff --git a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollRecvByteAllocatorHandle.java b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollRecvByteAllocatorHandle.java index 4a84cdc37d..7eba32009a 100644 --- a/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollRecvByteAllocatorHandle.java +++ b/transport-native-epoll/src/main/java/io/netty/channel/epoll/EpollRecvByteAllocatorHandle.java @@ -15,13 +15,14 @@ */ package io.netty.channel.epoll; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.channel.ChannelConfig; import io.netty.channel.RecvByteBufAllocator; import io.netty.channel.unix.PreferredDirectByteBufAllocator; import io.netty.util.UncheckedBooleanSupplier; -import io.netty.util.internal.ObjectUtil; class EpollRecvByteAllocatorHandle implements RecvByteBufAllocator.ExtendedHandle { private final PreferredDirectByteBufAllocator preferredDirectByteBufAllocator = @@ -32,7 +33,7 @@ class EpollRecvByteAllocatorHandle implements RecvByteBufAllocator.ExtendedHandl private boolean receivedRdHup; EpollRecvByteAllocatorHandle(RecvByteBufAllocator.ExtendedHandle handle) { - delegate = ObjectUtil.checkNotNull(handle, "handle"); + delegate = requireNonNull(handle, "handle"); } final void receivedRdHup() { diff --git a/transport-native-epoll/src/main/java/io/netty/channel/epoll/TcpMd5Util.java b/transport-native-epoll/src/main/java/io/netty/channel/epoll/TcpMd5Util.java index e41a2397fc..6569490564 100644 --- a/transport-native-epoll/src/main/java/io/netty/channel/epoll/TcpMd5Util.java +++ b/transport-native-epoll/src/main/java/io/netty/channel/epoll/TcpMd5Util.java @@ -15,7 +15,7 @@ */ package io.netty.channel.epoll; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; import java.io.IOException; import java.net.InetAddress; @@ -29,9 +29,9 @@ final class TcpMd5Util { static Collection newTcpMd5Sigs(AbstractEpollChannel channel, Collection current, Map newKeys) throws IOException { - ObjectUtil.checkNotNull(channel, "channel"); - ObjectUtil.checkNotNull(current, "current"); - ObjectUtil.checkNotNull(newKeys, "newKeys"); + requireNonNull(channel, "channel"); + requireNonNull(current, "current"); + requireNonNull(newKeys, "newKeys"); // Validate incoming values for (Entry e : newKeys.entrySet()) { @@ -39,9 +39,7 @@ final class TcpMd5Util { if (e.getKey() == null) { throw new IllegalArgumentException("newKeys contains an entry with null address: " + newKeys); } - if (key == null) { - throw new NullPointerException("newKeys[" + e.getKey() + ']'); - } + requireNonNull(key, "newKeys[" + e.getKey() + "]"); if (key.length == 0) { throw new IllegalArgumentException("newKeys[" + e.getKey() + "] has an empty key."); } diff --git a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueChannel.java b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueChannel.java index 2cdadf3595..a15ba74554 100644 --- a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueChannel.java +++ b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueChannel.java @@ -23,7 +23,6 @@ import io.netty.channel.AbstractChannel; import io.netty.channel.Channel; import io.netty.channel.ChannelConfig; import io.netty.channel.ChannelException; -import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; import io.netty.channel.ChannelMetadata; import io.netty.channel.ChannelOutboundBuffer; @@ -52,7 +51,7 @@ import java.util.concurrent.TimeUnit; import static io.netty.channel.internal.ChannelUtils.WRITE_STATUS_SNDBUF_FULL; import static io.netty.channel.unix.UnixChannelUtil.computeRemoteAddr; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; abstract class AbstractKQueueChannel extends AbstractChannel implements UnixChannel { private static final ChannelMetadata METADATA = new ChannelMetadata(false); @@ -77,7 +76,7 @@ abstract class AbstractKQueueChannel extends AbstractChannel implements UnixChan AbstractKQueueChannel(Channel parent, EventLoop eventLoop, BsdSocket fd, boolean active) { super(parent, eventLoop); - socket = checkNotNull(fd, "fd"); + socket = requireNonNull(fd, "fd"); this.active = active; if (active) { // Directly cache the remote and local addresses @@ -89,7 +88,7 @@ abstract class AbstractKQueueChannel extends AbstractChannel implements UnixChan AbstractKQueueChannel(Channel parent, EventLoop eventLoop, BsdSocket fd, SocketAddress remote) { super(parent, eventLoop); - socket = checkNotNull(fd, "fd"); + socket = requireNonNull(fd, "fd"); active = true; // Directly cache the remote and local addresses // See https://github.com/netty/netty/issues/2359 diff --git a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueServerChannel.java b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueServerChannel.java index acfb055146..081ce0d868 100644 --- a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueServerChannel.java +++ b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AbstractKQueueServerChannel.java @@ -15,6 +15,8 @@ */ package io.netty.channel.kqueue; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelConfig; import io.netty.channel.ChannelMetadata; @@ -23,7 +25,6 @@ import io.netty.channel.ChannelPipeline; import io.netty.channel.EventLoop; import io.netty.channel.EventLoopGroup; import io.netty.channel.ServerChannel; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.UnstableApi; import java.net.InetSocketAddress; @@ -40,7 +41,7 @@ public abstract class AbstractKQueueServerChannel extends AbstractKQueueChannel AbstractKQueueServerChannel(EventLoop eventLoop, EventLoopGroup childEventLoopGroup, BsdSocket fd, boolean active) { super(null, eventLoop, fd, active); - this.childEventLoopGroup = ObjectUtil.checkNotNull(childEventLoopGroup, "childEventLoopGroup"); + this.childEventLoopGroup = requireNonNull(childEventLoopGroup, "childEventLoopGroup"); } @Override diff --git a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AcceptFilter.java b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AcceptFilter.java index 5c7b13f2ac..b4c628ec8f 100644 --- a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AcceptFilter.java +++ b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/AcceptFilter.java @@ -15,7 +15,8 @@ */ package io.netty.channel.kqueue; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.UnstableApi; @UnstableApi @@ -25,8 +26,8 @@ public final class AcceptFilter { private final String filterArgs; public AcceptFilter(String filterName, String filterArgs) { - this.filterName = ObjectUtil.checkNotNull(filterName, "filterName"); - this.filterArgs = ObjectUtil.checkNotNull(filterArgs, "filterArgs"); + this.filterName = requireNonNull(filterName, "filterName"); + this.filterArgs = requireNonNull(filterArgs, "filterArgs"); } public String filterName() { diff --git a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDatagramChannel.java b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDatagramChannel.java index 8ec500041b..cabe5d6905 100644 --- a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDatagramChannel.java +++ b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDatagramChannel.java @@ -45,6 +45,7 @@ import java.net.SocketException; import java.nio.ByteBuffer; import static io.netty.channel.kqueue.BsdSocket.newSocketDgram; +import static java.util.Objects.requireNonNull; @UnstableApi public final class KQueueDatagramChannel extends AbstractKQueueChannel implements DatagramChannel { @@ -140,14 +141,8 @@ public final class KQueueDatagramChannel extends AbstractKQueueChannel implement public ChannelFuture joinGroup( final InetAddress multicastAddress, final NetworkInterface networkInterface, final InetAddress source, final ChannelPromise promise) { - - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(networkInterface, "networkInterface"); promise.setFailure(new UnsupportedOperationException("Multicast not supported")); return promise; @@ -192,12 +187,8 @@ public final class KQueueDatagramChannel extends AbstractKQueueChannel implement public ChannelFuture leaveGroup( final InetAddress multicastAddress, final NetworkInterface networkInterface, final InetAddress source, final ChannelPromise promise) { - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(networkInterface, "networkInterface"); promise.setFailure(new UnsupportedOperationException("Multicast not supported")); @@ -215,16 +206,9 @@ public final class KQueueDatagramChannel extends AbstractKQueueChannel implement public ChannelFuture block( final InetAddress multicastAddress, final NetworkInterface networkInterface, final InetAddress sourceToBlock, final ChannelPromise promise) { - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - if (sourceToBlock == null) { - throw new NullPointerException("sourceToBlock"); - } - - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(sourceToBlock, "sourceToBlock"); + requireNonNull(networkInterface, "networkInterface"); promise.setFailure(new UnsupportedOperationException("Multicast not supported")); return promise; } diff --git a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannelConfig.java b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannelConfig.java index eefd4c0ae1..5c184486f6 100644 --- a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannelConfig.java +++ b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannelConfig.java @@ -27,6 +27,7 @@ import io.netty.util.internal.UnstableApi; import java.util.Map; import static io.netty.channel.unix.UnixChannelOption.DOMAIN_SOCKET_READ_MODE; +import static java.util.Objects.requireNonNull; @UnstableApi public final class KQueueDomainSocketChannelConfig extends KQueueChannelConfig implements DomainSocketChannelConfig { @@ -140,9 +141,7 @@ public final class KQueueDomainSocketChannelConfig extends KQueueChannelConfig i @Override public KQueueDomainSocketChannelConfig setReadMode(DomainSocketReadMode mode) { - if (mode == null) { - throw new NullPointerException("mode"); - } + requireNonNull(mode, "mode"); this.mode = mode; return this; } diff --git a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueHandler.java b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueHandler.java index 0559bee741..acd8b3b083 100644 --- a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueHandler.java +++ b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueHandler.java @@ -29,7 +29,6 @@ import io.netty.channel.unix.IovArray; import io.netty.util.IntSupplier; import io.netty.util.collection.IntObjectHashMap; import io.netty.util.collection.IntObjectMap; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; import io.netty.util.internal.logging.InternalLogger; @@ -38,7 +37,9 @@ import io.netty.util.internal.logging.InternalLoggerFactory; import java.io.IOException; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * {@link IoHandler} which uses kqueue under the covers. Only works on BSD! @@ -79,7 +80,7 @@ public final class KQueueHandler implements IoHandler { } private KQueueHandler(int maxEvents, SelectStrategy strategy) { - selectStrategy = ObjectUtil.checkNotNull(strategy, "strategy"); + selectStrategy = requireNonNull(strategy, "strategy"); this.kqueueFd = Native.newKQueue(); if (maxEvents == 0) { allowGrowing = true; @@ -108,8 +109,8 @@ public final class KQueueHandler implements IoHandler { */ public static IoHandlerFactory newFactory(final int maxEvents, final SelectStrategyFactory selectStrategyFactory) { - ObjectUtil.checkPositiveOrZero(maxEvents, "maxEvents"); - ObjectUtil.checkNotNull(selectStrategyFactory, "selectStrategyFactory"); + checkPositiveOrZero(maxEvents, "maxEvents"); + requireNonNull(selectStrategyFactory, "selectStrategyFactory"); return () -> new KQueueHandler(maxEvents, selectStrategyFactory.newSelectStrategy()); } diff --git a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueRecvByteAllocatorHandle.java b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueRecvByteAllocatorHandle.java index 229e7857a0..f4d77a66a5 100644 --- a/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueRecvByteAllocatorHandle.java +++ b/transport-native-kqueue/src/main/java/io/netty/channel/kqueue/KQueueRecvByteAllocatorHandle.java @@ -21,10 +21,10 @@ import io.netty.channel.ChannelConfig; import io.netty.channel.RecvByteBufAllocator; import io.netty.channel.unix.PreferredDirectByteBufAllocator; import io.netty.util.UncheckedBooleanSupplier; -import io.netty.util.internal.ObjectUtil; import static java.lang.Math.max; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; final class KQueueRecvByteAllocatorHandle implements RecvByteBufAllocator.ExtendedHandle { private final PreferredDirectByteBufAllocator preferredDirectByteBufAllocator = @@ -37,7 +37,7 @@ final class KQueueRecvByteAllocatorHandle implements RecvByteBufAllocator.Extend private long numberBytesPending; KQueueRecvByteAllocatorHandle(RecvByteBufAllocator.ExtendedHandle handle) { - delegate = ObjectUtil.checkNotNull(handle, "handle"); + delegate = requireNonNull(handle, "handle"); } @Override diff --git a/transport-native-unix-common/src/main/java/io/netty/channel/unix/DomainSocketAddress.java b/transport-native-unix-common/src/main/java/io/netty/channel/unix/DomainSocketAddress.java index 496c6a358f..d0f9571c4d 100644 --- a/transport-native-unix-common/src/main/java/io/netty/channel/unix/DomainSocketAddress.java +++ b/transport-native-unix-common/src/main/java/io/netty/channel/unix/DomainSocketAddress.java @@ -15,6 +15,8 @@ */ package io.netty.channel.unix; +import static java.util.Objects.requireNonNull; + import java.io.File; import java.net.SocketAddress; @@ -27,9 +29,7 @@ public final class DomainSocketAddress extends SocketAddress { private final String socketPath; public DomainSocketAddress(String socketPath) { - if (socketPath == null) { - throw new NullPointerException("socketPath"); - } + requireNonNull(socketPath, "socketPath"); this.socketPath = socketPath; } diff --git a/transport-native-unix-common/src/main/java/io/netty/channel/unix/FileDescriptor.java b/transport-native-unix-common/src/main/java/io/netty/channel/unix/FileDescriptor.java index 415d9b79ee..a5fff68631 100644 --- a/transport-native-unix-common/src/main/java/io/netty/channel/unix/FileDescriptor.java +++ b/transport-native-unix-common/src/main/java/io/netty/channel/unix/FileDescriptor.java @@ -26,9 +26,9 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import static io.netty.channel.unix.Errors.ioResult; import static io.netty.channel.unix.Errors.newIOException; import static io.netty.channel.unix.Limits.IOV_MAX; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * Native {@link FileDescriptor} implementation which allows to wrap an {@code int} and provide a @@ -206,7 +206,7 @@ public class FileDescriptor { * Open a new {@link FileDescriptor} for the given path. */ public static FileDescriptor from(String path) throws IOException { - checkNotNull(path, "path"); + requireNonNull(path, "path"); int res = open(path); if (res < 0) { throw newIOException("open", res); @@ -218,7 +218,7 @@ public class FileDescriptor { * Open a new {@link FileDescriptor} for the given {@link File}. */ public static FileDescriptor from(File file) throws IOException { - return from(checkNotNull(file, "file").getPath()); + return from(requireNonNull(file, "file").getPath()); } /** diff --git a/transport-native-unix-common/src/main/java/io/netty/channel/unix/SocketWritableByteChannel.java b/transport-native-unix-common/src/main/java/io/netty/channel/unix/SocketWritableByteChannel.java index b539a6b6dd..4822647096 100644 --- a/transport-native-unix-common/src/main/java/io/netty/channel/unix/SocketWritableByteChannel.java +++ b/transport-native-unix-common/src/main/java/io/netty/channel/unix/SocketWritableByteChannel.java @@ -15,15 +15,16 @@ */ package io.netty.channel.unix; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; -import io.netty.util.internal.ObjectUtil; import java.nio.channels.WritableByteChannel; public abstract class SocketWritableByteChannel implements WritableByteChannel { private final FileDescriptor fd; protected SocketWritableByteChannel(FileDescriptor fd) { - this.fd = ObjectUtil.checkNotNull(fd, "fd"); + this.fd = requireNonNull(fd, "fd"); } @Override diff --git a/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpChannelConfig.java b/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpChannelConfig.java index c5513667ac..417b938abf 100644 --- a/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpChannelConfig.java +++ b/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpChannelConfig.java @@ -33,6 +33,7 @@ import static io.netty.channel.ChannelOption.SO_RCVBUF; import static io.netty.channel.ChannelOption.SO_SNDBUF; import static io.netty.channel.sctp.SctpChannelOption.SCTP_INIT_MAXSTREAMS; import static io.netty.channel.sctp.SctpChannelOption.SCTP_NODELAY; +import static java.util.Objects.requireNonNull; /** * The default {@link SctpChannelConfig} implementation for SCTP. @@ -43,9 +44,7 @@ public class DefaultSctpChannelConfig extends DefaultChannelConfig implements Sc public DefaultSctpChannelConfig(io.netty.channel.sctp.SctpChannel channel, SctpChannel javaChannel) { super(channel); - if (javaChannel == null) { - throw new NullPointerException("javaChannel"); - } + requireNonNull(javaChannel, "javaChannel"); this.javaChannel = javaChannel; // Enable TCP_NODELAY by default if possible. diff --git a/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpServerChannelConfig.java b/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpServerChannelConfig.java index aded943184..a54b3dc1f0 100644 --- a/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpServerChannelConfig.java +++ b/transport-sctp/src/main/java/io/netty/channel/sctp/DefaultSctpServerChannelConfig.java @@ -16,6 +16,7 @@ package io.netty.channel.sctp; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import com.sun.nio.sctp.SctpServerChannel; import com.sun.nio.sctp.SctpStandardSocketOptions; @@ -45,9 +46,7 @@ public class DefaultSctpServerChannelConfig extends DefaultChannelConfig impleme public DefaultSctpServerChannelConfig( io.netty.channel.sctp.SctpServerChannel channel, SctpServerChannel javaChannel) { super(channel); - if (javaChannel == null) { - throw new NullPointerException("javaChannel"); - } + requireNonNull(javaChannel, "javaChannel"); this.javaChannel = javaChannel; } diff --git a/transport-sctp/src/main/java/io/netty/channel/sctp/SctpMessage.java b/transport-sctp/src/main/java/io/netty/channel/sctp/SctpMessage.java index 8d48e67131..40719e3a92 100644 --- a/transport-sctp/src/main/java/io/netty/channel/sctp/SctpMessage.java +++ b/transport-sctp/src/main/java/io/netty/channel/sctp/SctpMessage.java @@ -15,6 +15,8 @@ */ package io.netty.channel.sctp; +import static java.util.Objects.requireNonNull; + import com.sun.nio.sctp.MessageInfo; import io.netty.buffer.ByteBuf; import io.netty.buffer.DefaultByteBufHolder; @@ -61,9 +63,7 @@ public final class SctpMessage extends DefaultByteBufHolder { */ public SctpMessage(MessageInfo msgInfo, ByteBuf payloadBuffer) { super(payloadBuffer); - if (msgInfo == null) { - throw new NullPointerException("msgInfo"); - } + requireNonNull(msgInfo, "msgInfo"); this.msgInfo = msgInfo; streamIdentifier = msgInfo.streamNumber(); protocolIdentifier = msgInfo.payloadProtocolID(); diff --git a/transport-sctp/src/main/java/io/netty/channel/sctp/SctpNotificationHandler.java b/transport-sctp/src/main/java/io/netty/channel/sctp/SctpNotificationHandler.java index 11a52720ad..f4720fb7f2 100644 --- a/transport-sctp/src/main/java/io/netty/channel/sctp/SctpNotificationHandler.java +++ b/transport-sctp/src/main/java/io/netty/channel/sctp/SctpNotificationHandler.java @@ -15,6 +15,8 @@ */ package io.netty.channel.sctp; +import static java.util.Objects.requireNonNull; + import com.sun.nio.sctp.AbstractNotificationHandler; import com.sun.nio.sctp.AssociationChangeNotification; import com.sun.nio.sctp.HandlerResult; @@ -35,9 +37,7 @@ public final class SctpNotificationHandler extends AbstractNotificationHandler, C * {@link Channel} */ public B group(EventLoopGroup group) { - if (group == null) { - throw new NullPointerException("group"); - } + requireNonNull(group, "group"); if (this.group != null) { throw new IllegalStateException("group set already"); } @@ -122,9 +122,7 @@ public abstract class AbstractBootstrap, C * created. Use a value of {@code null} to remove a previous set {@link ChannelOption}. */ public B option(ChannelOption option, T value) { - if (option == null) { - throw new NullPointerException("option"); - } + requireNonNull(option, "option"); if (value == null) { synchronized (options) { options.remove(option); @@ -142,9 +140,7 @@ public abstract class AbstractBootstrap, C * {@code null}, the attribute of the specified {@code key} is removed. */ public B attr(AttributeKey key, T value) { - if (key == null) { - throw new NullPointerException("key"); - } + requireNonNull(key, "key"); if (value == null) { synchronized (attrs) { attrs.remove(key); @@ -223,9 +219,7 @@ public abstract class AbstractBootstrap, C */ public ChannelFuture bind(SocketAddress localAddress) { validate(); - if (localAddress == null) { - throw new NullPointerException("localAddress"); - } + requireNonNull(localAddress, "localAddress"); return doBind(localAddress); } @@ -303,9 +297,7 @@ public abstract class AbstractBootstrap, C * the {@link ChannelHandler} to use for serving the requests. */ public B handler(ChannelHandler handler) { - if (handler == null) { - throw new NullPointerException("handler"); - } + requireNonNull(handler, "handler"); this.handler = handler; return self(); } diff --git a/transport/src/main/java/io/netty/bootstrap/AbstractBootstrapConfig.java b/transport/src/main/java/io/netty/bootstrap/AbstractBootstrapConfig.java index 51ce8557ec..efa79a761b 100644 --- a/transport/src/main/java/io/netty/bootstrap/AbstractBootstrapConfig.java +++ b/transport/src/main/java/io/netty/bootstrap/AbstractBootstrapConfig.java @@ -15,6 +15,8 @@ */ package io.netty.bootstrap; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelFactory; import io.netty.channel.ChannelHandler; @@ -22,7 +24,6 @@ import io.netty.channel.ChannelOption; import io.netty.channel.EventLoopGroup; import io.netty.channel.ServerChannelFactory; import io.netty.util.AttributeKey; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import java.net.SocketAddress; @@ -36,7 +37,7 @@ public abstract class AbstractBootstrapConfig channelClass) { - if (channelClass == null) { - throw new NullPointerException("channelClass"); - } + requireNonNull(channelClass, "channelClass"); return channelFactory(new ReflectiveChannelFactory(channelClass)); } @@ -130,9 +130,7 @@ public class Bootstrap extends AbstractBootstrap channelFactory) { - if (channelFactory == null) { - throw new NullPointerException("channelFactory"); - } + requireNonNull(channelFactory, "channelFactory"); if (this.channelFactory != null) { throw new IllegalStateException("channelFactory set already"); } @@ -172,9 +170,7 @@ public class Bootstrap extends AbstractBootstrap ServerBootstrap childOption(ChannelOption childOption, T value) { - if (childOption == null) { - throw new NullPointerException("childOption"); - } + requireNonNull(childOption, "childOption"); if (value == null) { synchronized (childOptions) { childOptions.remove(childOption); @@ -122,9 +120,7 @@ public class ServerBootstrap extends AbstractBootstrap ServerBootstrap childAttr(AttributeKey childKey, T value) { - if (childKey == null) { - throw new NullPointerException("childKey"); - } + requireNonNull(childKey, "childKey"); if (value == null) { childAttrs.remove(childKey); } else { @@ -137,9 +133,7 @@ public class ServerBootstrap extends AbstractBootstrap channelClass) { - if (channelClass == null) { - throw new NullPointerException("channelClass"); - } + requireNonNull(channelClass, "channelClass"); return channelFactory(new ReflectiveServerChannelFactory(channelClass)); } @@ -164,9 +156,7 @@ public class ServerBootstrap extends AbstractBootstrap channelFactory) { - if (channelFactory == null) { - throw new NullPointerException("channelFactory"); - } + requireNonNull(channelFactory, "channelFactory"); if (this.channelFactory != null) { throw new IllegalStateException("channelFactory set already"); } diff --git a/transport/src/main/java/io/netty/channel/AbstractChannel.java b/transport/src/main/java/io/netty/channel/AbstractChannel.java index f0facca702..dc933ee179 100644 --- a/transport/src/main/java/io/netty/channel/AbstractChannel.java +++ b/transport/src/main/java/io/netty/channel/AbstractChannel.java @@ -15,12 +15,13 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; import io.netty.channel.socket.ChannelOutputShutdownEvent; import io.netty.channel.socket.ChannelOutputShutdownException; import io.netty.util.DefaultAttributeMap; import io.netty.util.ReferenceCountUtil; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.PlatformDependent; import io.netty.util.internal.ThrowableUtil; import io.netty.util.internal.UnstableApi; @@ -105,7 +106,7 @@ public abstract class AbstractChannel extends DefaultAttributeMap implements Cha } private EventLoop validateEventLoop(EventLoop eventLoop) { - return ObjectUtil.checkNotNull(eventLoop, "eventLoop"); + return requireNonNull(eventLoop, "eventLoop"); } @Override diff --git a/transport/src/main/java/io/netty/channel/AbstractCoalescingBufferQueue.java b/transport/src/main/java/io/netty/channel/AbstractCoalescingBufferQueue.java index a05d37a9a4..f9062fe39c 100644 --- a/transport/src/main/java/io/netty/channel/AbstractCoalescingBufferQueue.java +++ b/transport/src/main/java/io/netty/channel/AbstractCoalescingBufferQueue.java @@ -24,9 +24,9 @@ import io.netty.util.internal.logging.InternalLoggerFactory; import java.util.ArrayDeque; import static io.netty.util.ReferenceCountUtil.safeRelease; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; import static io.netty.util.internal.PlatformDependent.throwException; +import static java.util.Objects.requireNonNull; @UnstableApi public abstract class AbstractCoalescingBufferQueue { @@ -136,7 +136,7 @@ public abstract class AbstractCoalescingBufferQueue { */ public final ByteBuf remove(ByteBufAllocator alloc, int bytes, ChannelPromise aggregatePromise) { checkPositiveOrZero(bytes, "bytes"); - checkNotNull(aggregatePromise, "aggregatePromise"); + requireNonNull(aggregatePromise, "aggregatePromise"); // Use isEmpty rather than readableBytes==0 as we may have a promise associated with an empty buffer. if (bufAndListenerPairs.isEmpty()) { diff --git a/transport/src/main/java/io/netty/channel/AbstractServerChannel.java b/transport/src/main/java/io/netty/channel/AbstractServerChannel.java index 80709cfbff..1a5bb1b585 100644 --- a/transport/src/main/java/io/netty/channel/AbstractServerChannel.java +++ b/transport/src/main/java/io/netty/channel/AbstractServerChannel.java @@ -15,7 +15,7 @@ */ package io.netty.channel; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; import java.net.SocketAddress; @@ -40,7 +40,7 @@ public abstract class AbstractServerChannel extends AbstractChannel implements S */ protected AbstractServerChannel(EventLoop eventLoop, EventLoopGroup childEventLoopGroup) { super(null, eventLoop); - this.childEventLoopGroup = ObjectUtil.checkNotNull(childEventLoopGroup, "childEventLoopGroup"); + this.childEventLoopGroup = requireNonNull(childEventLoopGroup, "childEventLoopGroup"); } @Override diff --git a/transport/src/main/java/io/netty/channel/ChannelFlushPromiseNotifier.java b/transport/src/main/java/io/netty/channel/ChannelFlushPromiseNotifier.java index 0d45d630e6..98fee444d3 100644 --- a/transport/src/main/java/io/netty/channel/ChannelFlushPromiseNotifier.java +++ b/transport/src/main/java/io/netty/channel/ChannelFlushPromiseNotifier.java @@ -16,6 +16,7 @@ package io.netty.channel; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import java.util.ArrayDeque; import java.util.Queue; @@ -63,9 +64,7 @@ public final class ChannelFlushPromiseNotifier { * {@code pendingDataSize} was reached. */ public ChannelFlushPromiseNotifier add(ChannelPromise promise, long pendingDataSize) { - if (promise == null) { - throw new NullPointerException("promise"); - } + requireNonNull(promise, "promise"); checkPositiveOrZero(pendingDataSize, "pendingDataSize"); long checkpoint = writeCounter + pendingDataSize; if (promise instanceof FlushCheckpoint) { diff --git a/transport/src/main/java/io/netty/channel/ChannelOption.java b/transport/src/main/java/io/netty/channel/ChannelOption.java index 481cc69b0f..a02aa8abc3 100644 --- a/transport/src/main/java/io/netty/channel/ChannelOption.java +++ b/transport/src/main/java/io/netty/channel/ChannelOption.java @@ -15,6 +15,8 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; import io.netty.util.AbstractConstant; import io.netty.util.ConstantPool; @@ -143,8 +145,6 @@ public class ChannelOption extends AbstractConstant> { * may override this for special checks. */ public void validate(T value) { - if (value == null) { - throw new NullPointerException("value"); - } + requireNonNull(value, "value"); } } diff --git a/transport/src/main/java/io/netty/channel/ChannelOutboundBuffer.java b/transport/src/main/java/io/netty/channel/ChannelOutboundBuffer.java index d64be73e75..000544bc74 100644 --- a/transport/src/main/java/io/netty/channel/ChannelOutboundBuffer.java +++ b/transport/src/main/java/io/netty/channel/ChannelOutboundBuffer.java @@ -36,6 +36,7 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.concurrent.atomic.AtomicLongFieldUpdater; import static java.lang.Math.min; +import static java.util.Objects.requireNonNull; /** * (Transport implementors only) an internal data structure used by {@link AbstractChannel} to store its pending @@ -744,9 +745,7 @@ public final class ChannelOutboundBuffer { * returns {@code false} or there are no more flushed messages to process. */ public void forEachFlushedMessage(MessageProcessor processor) throws Exception { - if (processor == null) { - throw new NullPointerException("processor"); - } + requireNonNull(processor, "processor"); Entry entry = flushedEntry; if (entry == null) { diff --git a/transport/src/main/java/io/netty/channel/CoalescingBufferQueue.java b/transport/src/main/java/io/netty/channel/CoalescingBufferQueue.java index 346e53f716..f0efb92bf1 100644 --- a/transport/src/main/java/io/netty/channel/CoalescingBufferQueue.java +++ b/transport/src/main/java/io/netty/channel/CoalescingBufferQueue.java @@ -14,11 +14,12 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.buffer.CompositeByteBuf; import io.netty.buffer.Unpooled; -import io.netty.util.internal.ObjectUtil; /** * A FIFO queue of bytes where producers add bytes by repeatedly adding {@link ByteBuf} and consumers take bytes in @@ -45,7 +46,7 @@ public final class CoalescingBufferQueue extends AbstractCoalescingBufferQueue { public CoalescingBufferQueue(Channel channel, int initSize, boolean updateWritability) { super(updateWritability ? channel : null, initSize); - this.channel = ObjectUtil.checkNotNull(channel, "channel"); + this.channel = requireNonNull(channel, "channel"); } /** diff --git a/transport/src/main/java/io/netty/channel/CombinedChannelDuplexHandler.java b/transport/src/main/java/io/netty/channel/CombinedChannelDuplexHandler.java index b7ac068675..33266a40c0 100644 --- a/transport/src/main/java/io/netty/channel/CombinedChannelDuplexHandler.java +++ b/transport/src/main/java/io/netty/channel/CombinedChannelDuplexHandler.java @@ -15,6 +15,8 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; import io.netty.util.Attribute; import io.netty.util.AttributeKey; @@ -73,12 +75,8 @@ public class CombinedChannelDuplexHandler implements Cha */ protected CompleteChannelFuture(Channel channel, EventExecutor executor) { super(executor); - if (channel == null) { - throw new NullPointerException("channel"); - } + requireNonNull(channel, "channel"); this.channel = channel; } diff --git a/transport/src/main/java/io/netty/channel/DefaultAddressedEnvelope.java b/transport/src/main/java/io/netty/channel/DefaultAddressedEnvelope.java index 12cdabb862..2968051624 100644 --- a/transport/src/main/java/io/netty/channel/DefaultAddressedEnvelope.java +++ b/transport/src/main/java/io/netty/channel/DefaultAddressedEnvelope.java @@ -16,6 +16,8 @@ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.util.ReferenceCountUtil; import io.netty.util.ReferenceCounted; import io.netty.util.internal.StringUtil; @@ -39,9 +41,7 @@ public class DefaultAddressedEnvelope implements Add * {@code sender} address. */ public DefaultAddressedEnvelope(M message, A recipient, A sender) { - if (message == null) { - throw new NullPointerException("message"); - } + requireNonNull(message, "message"); if (recipient == null && sender == null) { throw new NullPointerException("recipient and sender"); diff --git a/transport/src/main/java/io/netty/channel/DefaultChannelConfig.java b/transport/src/main/java/io/netty/channel/DefaultChannelConfig.java index 58aa598d61..455d3e6483 100644 --- a/transport/src/main/java/io/netty/channel/DefaultChannelConfig.java +++ b/transport/src/main/java/io/netty/channel/DefaultChannelConfig.java @@ -34,9 +34,9 @@ import static io.netty.channel.ChannelOption.WRITE_BUFFER_HIGH_WATER_MARK; import static io.netty.channel.ChannelOption.WRITE_BUFFER_LOW_WATER_MARK; import static io.netty.channel.ChannelOption.WRITE_BUFFER_WATER_MARK; import static io.netty.channel.ChannelOption.WRITE_SPIN_COUNT; -import static io.netty.util.internal.ObjectUtil.checkNotNull; import static io.netty.util.internal.ObjectUtil.checkPositive; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * The default {@link ChannelConfig} implementation. @@ -99,9 +99,7 @@ public class DefaultChannelConfig implements ChannelConfig { @SuppressWarnings("unchecked") @Override public boolean setOptions(Map, ?> options) { - if (options == null) { - throw new NullPointerException("options"); - } + requireNonNull(options, "options"); boolean setAllOptions = true; for (Entry, ?> e: options.entrySet()) { @@ -116,9 +114,7 @@ public class DefaultChannelConfig implements ChannelConfig { @Override @SuppressWarnings({ "unchecked", "deprecation" }) public T getOption(ChannelOption option) { - if (option == null) { - throw new NullPointerException("option"); - } + requireNonNull(option, "option"); if (option == CONNECT_TIMEOUT_MILLIS) { return (T) Integer.valueOf(getConnectTimeoutMillis()); @@ -191,9 +187,7 @@ public class DefaultChannelConfig implements ChannelConfig { } protected void validate(ChannelOption option, T value) { - if (option == null) { - throw new NullPointerException("option"); - } + requireNonNull(option, "option"); option.validate(value); } @@ -272,9 +266,7 @@ public class DefaultChannelConfig implements ChannelConfig { @Override public ChannelConfig setAllocator(ByteBufAllocator allocator) { - if (allocator == null) { - throw new NullPointerException("allocator"); - } + requireNonNull(allocator, "allocator"); this.allocator = allocator; return this; } @@ -287,7 +279,7 @@ public class DefaultChannelConfig implements ChannelConfig { @Override public ChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator) { - rcvBufAllocator = checkNotNull(allocator, "allocator"); + rcvBufAllocator = requireNonNull(allocator, "allocator"); return this; } @@ -300,9 +292,8 @@ public class DefaultChannelConfig implements ChannelConfig { private void setRecvByteBufAllocator(RecvByteBufAllocator allocator, ChannelMetadata metadata) { if (allocator instanceof MaxMessagesRecvByteBufAllocator) { ((MaxMessagesRecvByteBufAllocator) allocator).maxMessagesPerRead(metadata.defaultMaxMessagesPerRead()); - } else if (allocator == null) { - throw new NullPointerException("allocator"); } + requireNonNull(allocator, "allocator"); setRecvByteBufAllocator(allocator); } @@ -387,7 +378,7 @@ public class DefaultChannelConfig implements ChannelConfig { @Override public ChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark) { - this.writeBufferWaterMark = checkNotNull(writeBufferWaterMark, "writeBufferWaterMark"); + this.writeBufferWaterMark = requireNonNull(writeBufferWaterMark, "writeBufferWaterMark"); return this; } @@ -403,9 +394,7 @@ public class DefaultChannelConfig implements ChannelConfig { @Override public ChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator) { - if (estimator == null) { - throw new NullPointerException("estimator"); - } + requireNonNull(estimator, "estimator"); msgSizeEstimator = estimator; return this; } diff --git a/transport/src/main/java/io/netty/channel/DefaultChannelHandlerContext.java b/transport/src/main/java/io/netty/channel/DefaultChannelHandlerContext.java index 3d810bc2b8..0d2a48a3bd 100644 --- a/transport/src/main/java/io/netty/channel/DefaultChannelHandlerContext.java +++ b/transport/src/main/java/io/netty/channel/DefaultChannelHandlerContext.java @@ -15,6 +15,8 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBufAllocator; import io.netty.util.Attribute; import io.netty.util.AttributeKey; @@ -27,7 +29,6 @@ import io.netty.util.concurrent.FastThreadLocal; import io.netty.util.internal.PlatformDependent; import io.netty.util.internal.PromiseNotificationUtil; import io.netty.util.internal.ThrowableUtil; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import io.netty.util.internal.SystemPropertyUtil; import io.netty.util.internal.logging.InternalLogger; @@ -111,7 +112,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap DefaultChannelHandlerContext(DefaultChannelPipeline pipeline, String name, ChannelHandler handler) { - this.name = ObjectUtil.checkNotNull(name, "name"); + this.name = requireNonNull(name, "name"); this.pipeline = pipeline; this.executionMask = mask(handler.getClass()); this.handler = handler; @@ -352,7 +353,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap @Override public ChannelHandlerContext fireExceptionCaught(Throwable cause) { - ObjectUtil.checkNotNull(cause, "cause"); + requireNonNull(cause, "cause"); EventExecutor executor = executor(); if (executor.inEventLoop()) { findAndInvokeExceptionCaught(cause); @@ -394,7 +395,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap @Override public ChannelHandlerContext fireUserEventTriggered(Object event) { - ObjectUtil.checkNotNull(event, "event"); + requireNonNull(event, "event"); EventExecutor executor = executor(); if (executor.inEventLoop()) { findAndInvokeUserEventTriggered(event); @@ -418,7 +419,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap @Override public ChannelHandlerContext fireChannelRead(final Object msg) { - ObjectUtil.checkNotNull(msg, "msg"); + requireNonNull(msg, "msg"); EventExecutor executor = executor(); if (executor.inEventLoop()) { findAndInvokeChannelRead(msg); @@ -438,7 +439,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap } void invokeChannelRead(Object msg) { - final Object m = pipeline.touch(ObjectUtil.checkNotNull(msg, "msg"), this); + final Object m = pipeline.touch(requireNonNull(msg, "msg"), this); try { ((ChannelInboundHandler) handler()).channelRead(this, m); } catch (Throwable t) { @@ -531,9 +532,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap @Override public ChannelFuture bind(final SocketAddress localAddress, final ChannelPromise promise) { - if (localAddress == null) { - throw new NullPointerException("localAddress"); - } + requireNonNull(localAddress, "localAddress"); if (isNotValidPromise(promise, false)) { // cancelled return promise; @@ -568,10 +567,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap @Override public ChannelFuture connect( final SocketAddress remoteAddress, final SocketAddress localAddress, final ChannelPromise promise) { - - if (remoteAddress == null) { - throw new NullPointerException("remoteAddress"); - } + requireNonNull(remoteAddress, "remoteAddress"); if (isNotValidPromise(promise, false)) { // cancelled return promise; @@ -814,7 +810,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap } private void write(Object msg, boolean flush, ChannelPromise promise) { - ObjectUtil.checkNotNull(msg, "msg"); + requireNonNull(msg, "msg"); try { if (isNotValidPromise(promise, true)) { ReferenceCountUtil.release(msg); @@ -917,9 +913,7 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap } private boolean isNotValidPromise(ChannelPromise promise, boolean allowVoidPromise) { - if (promise == null) { - throw new NullPointerException("promise"); - } + requireNonNull(promise, "promise"); if (promise.isDone()) { // Check if the promise was cancelled and if so signal that the processing of the operation diff --git a/transport/src/main/java/io/netty/channel/DefaultChannelPipeline.java b/transport/src/main/java/io/netty/channel/DefaultChannelPipeline.java index 56d29aac29..07dd0d6bbd 100644 --- a/transport/src/main/java/io/netty/channel/DefaultChannelPipeline.java +++ b/transport/src/main/java/io/netty/channel/DefaultChannelPipeline.java @@ -15,11 +15,12 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.util.ReferenceCountUtil; import io.netty.util.ResourceLeakDetector; import io.netty.util.concurrent.EventExecutor; import io.netty.util.concurrent.FastThreadLocal; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.StringUtil; import io.netty.util.internal.UnstableApi; import io.netty.util.internal.logging.InternalLogger; @@ -72,7 +73,7 @@ public class DefaultChannelPipeline implements ChannelPipeline { private volatile MessageSizeEstimator.Handle estimatorHandle; public DefaultChannelPipeline(Channel channel) { - this.channel = ObjectUtil.checkNotNull(channel, "channel"); + this.channel = requireNonNull(channel, "channel"); succeededFuture = new SucceededChannelFuture(channel, channel.eventLoop()); voidPromise = new VoidChannelPromise(channel, true); @@ -292,9 +293,7 @@ public class DefaultChannelPipeline implements ChannelPipeline { @Override public final ChannelPipeline addFirst(ChannelHandler... handlers) { - if (handlers == null) { - throw new NullPointerException("handlers"); - } + requireNonNull(handlers, "handlers"); if (handlers.length == 0 || handlers[0] == null) { return this; } @@ -320,9 +319,7 @@ public class DefaultChannelPipeline implements ChannelPipeline { @Override public final ChannelPipeline addLast(ChannelHandler... handlers) { - if (handlers == null) { - throw new NullPointerException("handlers"); - } + requireNonNull(handlers, "handlers"); for (ChannelHandler h: handlers) { if (h == null) { @@ -675,9 +672,8 @@ public class DefaultChannelPipeline implements ChannelPipeline { @Override public final ChannelHandlerContext context(String name) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); + synchronized (handlers) { return findCtx(ctx -> ctx.name().equals(name)); } @@ -685,9 +681,7 @@ public class DefaultChannelPipeline implements ChannelPipeline { @Override public final ChannelHandlerContext context(ChannelHandler handler) { - if (handler == null) { - throw new NullPointerException("handler"); - } + requireNonNull(handler, "handler"); synchronized (handlers) { return findCtx(ctx -> ctx.handler() == handler); @@ -696,9 +690,7 @@ public class DefaultChannelPipeline implements ChannelPipeline { @Override public final ChannelHandlerContext context(Class handlerType) { - if (handlerType == null) { - throw new NullPointerException("handlerType"); - } + requireNonNull(handlerType, "handlerType"); synchronized (handlers) { return findCtx(ctx -> handlerType.isAssignableFrom(ctx.handler().getClass())); diff --git a/transport/src/main/java/io/netty/channel/DefaultChannelPromise.java b/transport/src/main/java/io/netty/channel/DefaultChannelPromise.java index bb0bf3cd06..e0632cd79a 100644 --- a/transport/src/main/java/io/netty/channel/DefaultChannelPromise.java +++ b/transport/src/main/java/io/netty/channel/DefaultChannelPromise.java @@ -21,7 +21,7 @@ import io.netty.util.concurrent.EventExecutor; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.GenericFutureListener; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * The default {@link ChannelPromise} implementation. It is recommended to use {@link Channel#newPromise()} to create @@ -39,7 +39,7 @@ public class DefaultChannelPromise extends DefaultPromise implements Chann * the {@link Channel} associated with this future */ public DefaultChannelPromise(Channel channel) { - this.channel = checkNotNull(channel, "channel"); + this.channel = requireNonNull(channel, "channel"); } /** @@ -50,7 +50,7 @@ public class DefaultChannelPromise extends DefaultPromise implements Chann */ public DefaultChannelPromise(Channel channel, EventExecutor executor) { super(executor); - this.channel = checkNotNull(channel, "channel"); + this.channel = requireNonNull(channel, "channel"); } @Override diff --git a/transport/src/main/java/io/netty/channel/DefaultFileRegion.java b/transport/src/main/java/io/netty/channel/DefaultFileRegion.java index 2435b20a31..4b7973cb90 100644 --- a/transport/src/main/java/io/netty/channel/DefaultFileRegion.java +++ b/transport/src/main/java/io/netty/channel/DefaultFileRegion.java @@ -16,6 +16,7 @@ package io.netty.channel; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; import io.netty.util.AbstractReferenceCounted; import io.netty.util.IllegalReferenceCountException; @@ -51,9 +52,7 @@ public class DefaultFileRegion extends AbstractReferenceCounted implements FileR * @param count the number of bytes to transfer */ public DefaultFileRegion(FileChannel file, long position, long count) { - if (file == null) { - throw new NullPointerException("file"); - } + requireNonNull(file, "file"); checkPositiveOrZero(position, "position"); checkPositiveOrZero(count, "count"); this.file = file; @@ -71,9 +70,7 @@ public class DefaultFileRegion extends AbstractReferenceCounted implements FileR * @param count the number of bytes to transfer */ public DefaultFileRegion(File f, long position, long count) { - if (f == null) { - throw new NullPointerException("f"); - } + requireNonNull(f, "f"); checkPositiveOrZero(position, "position"); checkPositiveOrZero(count, "count"); this.position = position; diff --git a/transport/src/main/java/io/netty/channel/DelegatingChannelPromiseNotifier.java b/transport/src/main/java/io/netty/channel/DelegatingChannelPromiseNotifier.java index 0c185c39b9..5aab4d2b99 100644 --- a/transport/src/main/java/io/netty/channel/DelegatingChannelPromiseNotifier.java +++ b/transport/src/main/java/io/netty/channel/DelegatingChannelPromiseNotifier.java @@ -26,7 +26,7 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; @UnstableApi public final class DelegatingChannelPromiseNotifier implements ChannelPromise, ChannelFutureListener { @@ -40,7 +40,7 @@ public final class DelegatingChannelPromiseNotifier implements ChannelPromise, C } public DelegatingChannelPromiseNotifier(ChannelPromise delegate, boolean logNotifyFailure) { - this.delegate = checkNotNull(delegate, "delegate"); + this.delegate = requireNonNull(delegate, "delegate"); this.logNotifyFailure = logNotifyFailure; } diff --git a/transport/src/main/java/io/netty/channel/FailedChannelFuture.java b/transport/src/main/java/io/netty/channel/FailedChannelFuture.java index 92f83cd24e..9cd24d2e28 100644 --- a/transport/src/main/java/io/netty/channel/FailedChannelFuture.java +++ b/transport/src/main/java/io/netty/channel/FailedChannelFuture.java @@ -15,6 +15,8 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.EventExecutor; import io.netty.util.internal.PlatformDependent; @@ -35,9 +37,7 @@ final class FailedChannelFuture extends CompleteChannelFuture { */ FailedChannelFuture(Channel channel, EventExecutor executor, Throwable cause) { super(channel, executor); - if (cause == null) { - throw new NullPointerException("cause"); - } + requireNonNull(cause, "cause"); this.cause = cause; } diff --git a/transport/src/main/java/io/netty/channel/PendingBytesTracker.java b/transport/src/main/java/io/netty/channel/PendingBytesTracker.java index 9ef9023d95..83b49768bf 100644 --- a/transport/src/main/java/io/netty/channel/PendingBytesTracker.java +++ b/transport/src/main/java/io/netty/channel/PendingBytesTracker.java @@ -15,13 +15,13 @@ */ package io.netty.channel; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; abstract class PendingBytesTracker implements MessageSizeEstimator.Handle { private final MessageSizeEstimator.Handle estimatorHandle; private PendingBytesTracker(MessageSizeEstimator.Handle estimatorHandle) { - this.estimatorHandle = ObjectUtil.checkNotNull(estimatorHandle, "estimatorHandle"); + this.estimatorHandle = requireNonNull(estimatorHandle, "estimatorHandle"); } @Override diff --git a/transport/src/main/java/io/netty/channel/PendingWriteQueue.java b/transport/src/main/java/io/netty/channel/PendingWriteQueue.java index c0b4d12e72..ea04eb70d7 100644 --- a/transport/src/main/java/io/netty/channel/PendingWriteQueue.java +++ b/transport/src/main/java/io/netty/channel/PendingWriteQueue.java @@ -15,6 +15,8 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.util.Recycler; import io.netty.util.ReferenceCountUtil; import io.netty.util.concurrent.PromiseCombiner; @@ -91,12 +93,8 @@ public final class PendingWriteQueue { */ public void add(Object msg, ChannelPromise promise) { assert ctx.executor().inEventLoop(); - if (msg == null) { - throw new NullPointerException("msg"); - } - if (promise == null) { - throw new NullPointerException("promise"); - } + requireNonNull(msg, "msg"); + requireNonNull(promise, "promise"); // It is possible for writes to be triggered from removeAndFailAll(). To preserve ordering, // we should add them to the queue and let removeAndFailAll() fail them later. int messageSize = size(msg); @@ -164,9 +162,7 @@ public final class PendingWriteQueue { */ public void removeAndFailAll(Throwable cause) { assert ctx.executor().inEventLoop(); - if (cause == null) { - throw new NullPointerException("cause"); - } + requireNonNull(cause, "cause"); // It is possible for some of the failed promises to trigger more writes. The new writes // will "revive" the queue, so we need to clean them up until the queue is empty. for (PendingWrite write = head; write != null; write = head) { @@ -191,9 +187,7 @@ public final class PendingWriteQueue { */ public void removeAndFail(Throwable cause) { assert ctx.executor().inEventLoop(); - if (cause == null) { - throw new NullPointerException("cause"); - } + requireNonNull(cause, "cause"); PendingWrite write = head; if (write == null) { diff --git a/transport/src/main/java/io/netty/channel/PreferHeapByteBufAllocator.java b/transport/src/main/java/io/netty/channel/PreferHeapByteBufAllocator.java index b9a7ff30ec..eace2c441d 100644 --- a/transport/src/main/java/io/netty/channel/PreferHeapByteBufAllocator.java +++ b/transport/src/main/java/io/netty/channel/PreferHeapByteBufAllocator.java @@ -15,10 +15,11 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.buffer.CompositeByteBuf; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.UnstableApi; /** @@ -30,7 +31,7 @@ public final class PreferHeapByteBufAllocator implements ByteBufAllocator { private final ByteBufAllocator allocator; public PreferHeapByteBufAllocator(ByteBufAllocator allocator) { - this.allocator = ObjectUtil.checkNotNull(allocator, "allocator"); + this.allocator = requireNonNull(allocator, "allocator"); } @Override diff --git a/transport/src/main/java/io/netty/channel/RecvByteBufAllocator.java b/transport/src/main/java/io/netty/channel/RecvByteBufAllocator.java index 4145c90fe1..e49eb21345 100644 --- a/transport/src/main/java/io/netty/channel/RecvByteBufAllocator.java +++ b/transport/src/main/java/io/netty/channel/RecvByteBufAllocator.java @@ -20,7 +20,7 @@ import io.netty.buffer.ByteBufAllocator; import io.netty.util.UncheckedBooleanSupplier; import io.netty.util.internal.UnstableApi; -import static io.netty.util.internal.ObjectUtil.checkNotNull; +import static java.util.Objects.requireNonNull; /** * Allocates a new receive buffer whose capacity is probably large enough to read all inbound data and small enough @@ -124,7 +124,7 @@ public interface RecvByteBufAllocator { private final Handle delegate; public DelegatingHandle(Handle delegate) { - this.delegate = checkNotNull(delegate, "delegate"); + this.delegate = requireNonNull(delegate, "delegate"); } /** diff --git a/transport/src/main/java/io/netty/channel/ReflectiveChannelFactory.java b/transport/src/main/java/io/netty/channel/ReflectiveChannelFactory.java index 58be523d23..5f27381e32 100644 --- a/transport/src/main/java/io/netty/channel/ReflectiveChannelFactory.java +++ b/transport/src/main/java/io/netty/channel/ReflectiveChannelFactory.java @@ -16,7 +16,8 @@ package io.netty.channel; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import java.lang.reflect.Constructor; @@ -29,7 +30,7 @@ public class ReflectiveChannelFactory implements ChannelFacto private final Constructor constructor; public ReflectiveChannelFactory(Class clazz) { - ObjectUtil.checkNotNull(clazz, "clazz"); + requireNonNull(clazz, "clazz"); try { this.constructor = clazz.getConstructor(EventLoop.class); } catch (NoSuchMethodException e) { diff --git a/transport/src/main/java/io/netty/channel/ReflectiveServerChannelFactory.java b/transport/src/main/java/io/netty/channel/ReflectiveServerChannelFactory.java index 6386fca9be..bc19819a0b 100644 --- a/transport/src/main/java/io/netty/channel/ReflectiveServerChannelFactory.java +++ b/transport/src/main/java/io/netty/channel/ReflectiveServerChannelFactory.java @@ -16,7 +16,8 @@ package io.netty.channel; -import io.netty.util.internal.ObjectUtil; +import static java.util.Objects.requireNonNull; + import io.netty.util.internal.StringUtil; import java.lang.reflect.Constructor; @@ -30,7 +31,7 @@ public final class ReflectiveServerChannelFactory imple private final Constructor constructor; public ReflectiveServerChannelFactory(Class clazz) { - ObjectUtil.checkNotNull(clazz, "clazz"); + requireNonNull(clazz, "clazz"); try { this.constructor = clazz.getConstructor(EventLoop.class, EventLoopGroup.class); } catch (NoSuchMethodException e) { diff --git a/transport/src/main/java/io/netty/channel/SingleThreadEventLoop.java b/transport/src/main/java/io/netty/channel/SingleThreadEventLoop.java index 831c58921a..148eb61736 100644 --- a/transport/src/main/java/io/netty/channel/SingleThreadEventLoop.java +++ b/transport/src/main/java/io/netty/channel/SingleThreadEventLoop.java @@ -15,10 +15,12 @@ */ package io.netty.channel; +import static io.netty.util.internal.ObjectUtil.checkPositive; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.RejectedExecutionHandler; import io.netty.util.concurrent.RejectedExecutionHandlers; import io.netty.util.concurrent.SingleThreadEventExecutor; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.PlatformDependent; import io.netty.util.internal.SystemPropertyUtil; @@ -136,8 +138,8 @@ public class SingleThreadEventLoop extends SingleThreadEventExecutor implements IoHandler ioHandler, int maxPendingTasks, RejectedExecutionHandler rejectedHandler, int maxTasksPerRun) { super(threadFactory, maxPendingTasks, rejectedHandler); - this.ioHandler = ObjectUtil.checkNotNull(ioHandler, "ioHandler"); - this.maxTasksPerRun = ObjectUtil.checkPositive(maxTasksPerRun, "maxTasksPerRun"); + this.ioHandler = requireNonNull(ioHandler, "ioHandler"); + this.maxTasksPerRun = checkPositive(maxTasksPerRun, "maxTasksPerRun"); } /** @@ -154,8 +156,8 @@ public class SingleThreadEventLoop extends SingleThreadEventExecutor implements IoHandler ioHandler, int maxPendingTasks, RejectedExecutionHandler rejectedHandler, int maxTasksPerRun) { super(executor, maxPendingTasks, rejectedHandler); - this.ioHandler = ObjectUtil.checkNotNull(ioHandler, "ioHandler"); - this.maxTasksPerRun = ObjectUtil.checkPositive(maxTasksPerRun, "maxTasksPerRun"); + this.ioHandler = requireNonNull(ioHandler, "ioHandler"); + this.maxTasksPerRun = checkPositive(maxTasksPerRun, "maxTasksPerRun"); } @Override diff --git a/transport/src/main/java/io/netty/channel/VoidChannelPromise.java b/transport/src/main/java/io/netty/channel/VoidChannelPromise.java index 05b8f48b90..0d77458025 100644 --- a/transport/src/main/java/io/netty/channel/VoidChannelPromise.java +++ b/transport/src/main/java/io/netty/channel/VoidChannelPromise.java @@ -15,6 +15,8 @@ */ package io.netty.channel; +import static java.util.Objects.requireNonNull; + import io.netty.util.concurrent.AbstractFuture; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.GenericFutureListener; @@ -35,9 +37,7 @@ public final class VoidChannelPromise extends AbstractFuture implements Ch * @param channel the {@link Channel} associated with this future */ public VoidChannelPromise(final Channel channel, boolean fireException) { - if (channel == null) { - throw new NullPointerException("channel"); - } + requireNonNull(channel, "channel"); this.channel = channel; if (fireException) { fireExceptionListener = future -> { diff --git a/transport/src/main/java/io/netty/channel/embedded/EmbeddedChannel.java b/transport/src/main/java/io/netty/channel/embedded/EmbeddedChannel.java index dca9553d67..ff0f2a104f 100644 --- a/transport/src/main/java/io/netty/channel/embedded/EmbeddedChannel.java +++ b/transport/src/main/java/io/netty/channel/embedded/EmbeddedChannel.java @@ -15,6 +15,8 @@ */ package io.netty.channel.embedded; +import static java.util.Objects.requireNonNull; + import java.net.SocketAddress; import java.nio.channels.ClosedChannelException; import java.util.ArrayDeque; @@ -37,7 +39,6 @@ import io.netty.channel.DefaultChannelPipeline; import io.netty.channel.EventLoop; import io.netty.channel.RecvByteBufAllocator; import io.netty.util.ReferenceCountUtil; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.PlatformDependent; import io.netty.util.internal.RecyclableArrayList; import io.netty.util.internal.logging.InternalLogger; @@ -175,7 +176,7 @@ public class EmbeddedChannel extends AbstractChannel { final ChannelHandler... handlers) { super(null, new EmbeddedEventLoop(), channelId); metadata = metadata(hasDisconnect); - this.config = ObjectUtil.checkNotNull(config, "config"); + this.config = requireNonNull(config, "config"); setup(true, handlers); } @@ -184,7 +185,7 @@ public class EmbeddedChannel extends AbstractChannel { } private void setup(boolean register, final ChannelHandler... handlers) { - ObjectUtil.checkNotNull(handlers, "handlers"); + requireNonNull(handlers, "handlers"); ChannelPipeline p = pipeline(); p.addLast(new ChannelInitializer() { @Override diff --git a/transport/src/main/java/io/netty/channel/embedded/EmbeddedEventLoop.java b/transport/src/main/java/io/netty/channel/embedded/EmbeddedEventLoop.java index bb3fa989b3..2379892c39 100644 --- a/transport/src/main/java/io/netty/channel/embedded/EmbeddedEventLoop.java +++ b/transport/src/main/java/io/netty/channel/embedded/EmbeddedEventLoop.java @@ -15,6 +15,8 @@ */ package io.netty.channel.embedded; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.EventLoop; import io.netty.util.concurrent.AbstractScheduledEventExecutor; @@ -61,9 +63,7 @@ final class EmbeddedEventLoop extends AbstractScheduledEventExecutor implements @Override public void execute(Runnable command) { - if (command == null) { - throw new NullPointerException("command"); - } + requireNonNull(command, "command"); tasks.add(command); } diff --git a/transport/src/main/java/io/netty/channel/group/ChannelGroupException.java b/transport/src/main/java/io/netty/channel/group/ChannelGroupException.java index aeabd645e7..461bcba974 100644 --- a/transport/src/main/java/io/netty/channel/group/ChannelGroupException.java +++ b/transport/src/main/java/io/netty/channel/group/ChannelGroupException.java @@ -15,6 +15,8 @@ */ package io.netty.channel.group; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelException; import io.netty.channel.ChannelFuture; @@ -32,9 +34,7 @@ public class ChannelGroupException extends ChannelException implements Iterable< private final Collection> failed; public ChannelGroupException(Collection> causes) { - if (causes == null) { - throw new NullPointerException("causes"); - } + requireNonNull(causes, "causes"); if (causes.isEmpty()) { throw new IllegalArgumentException("causes must be non empty"); } diff --git a/transport/src/main/java/io/netty/channel/group/CombinedIterator.java b/transport/src/main/java/io/netty/channel/group/CombinedIterator.java index 1c42eb03a3..1f240d7cbe 100644 --- a/transport/src/main/java/io/netty/channel/group/CombinedIterator.java +++ b/transport/src/main/java/io/netty/channel/group/CombinedIterator.java @@ -15,6 +15,8 @@ */ package io.netty.channel.group; +import static java.util.Objects.requireNonNull; + import java.util.Iterator; import java.util.NoSuchElementException; @@ -27,12 +29,8 @@ final class CombinedIterator implements Iterator { private Iterator currentIterator; CombinedIterator(Iterator i1, Iterator i2) { - if (i1 == null) { - throw new NullPointerException("i1"); - } - if (i2 == null) { - throw new NullPointerException("i2"); - } + requireNonNull(i1, "i1"); + requireNonNull(i2, "i2"); this.i1 = i1; this.i2 = i2; currentIterator = i1; diff --git a/transport/src/main/java/io/netty/channel/group/DefaultChannelGroup.java b/transport/src/main/java/io/netty/channel/group/DefaultChannelGroup.java index 909742314e..e8f655682b 100644 --- a/transport/src/main/java/io/netty/channel/group/DefaultChannelGroup.java +++ b/transport/src/main/java/io/netty/channel/group/DefaultChannelGroup.java @@ -15,6 +15,8 @@ */ package io.netty.channel.group; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufHolder; import io.netty.channel.Channel; @@ -86,9 +88,7 @@ public class DefaultChannelGroup extends AbstractSet implements Channel * the same name, which means no duplicate check is done against group names. */ public DefaultChannelGroup(String name, EventExecutor executor, boolean stayClosed) { - if (name == null) { - throw new NullPointerException("name"); - } + requireNonNull(name, "name"); this.name = name; this.executor = executor; this.stayClosed = stayClosed; @@ -251,12 +251,8 @@ public class DefaultChannelGroup extends AbstractSet implements Channel @Override public ChannelGroupFuture write(Object message, ChannelMatcher matcher, boolean voidPromise) { - if (message == null) { - throw new NullPointerException("message"); - } - if (matcher == null) { - throw new NullPointerException("matcher"); - } + requireNonNull(message, "message"); + requireNonNull(matcher, "matcher"); final ChannelGroupFuture future; if (voidPromise) { @@ -296,9 +292,7 @@ public class DefaultChannelGroup extends AbstractSet implements Channel @Override public ChannelGroupFuture disconnect(ChannelMatcher matcher) { - if (matcher == null) { - throw new NullPointerException("matcher"); - } + requireNonNull(matcher, "matcher"); Map futures = new LinkedHashMap<>(size()); @@ -319,9 +313,7 @@ public class DefaultChannelGroup extends AbstractSet implements Channel @Override public ChannelGroupFuture close(ChannelMatcher matcher) { - if (matcher == null) { - throw new NullPointerException("matcher"); - } + requireNonNull(matcher, "matcher"); Map futures = new LinkedHashMap<>(size()); @@ -352,9 +344,7 @@ public class DefaultChannelGroup extends AbstractSet implements Channel @Override public ChannelGroupFuture deregister(ChannelMatcher matcher) { - if (matcher == null) { - throw new NullPointerException("matcher"); - } + requireNonNull(matcher, "matcher"); Map futures = new LinkedHashMap<>(size()); @@ -395,9 +385,7 @@ public class DefaultChannelGroup extends AbstractSet implements Channel @Override public ChannelGroupFuture writeAndFlush(Object message, ChannelMatcher matcher, boolean voidPromise) { - if (message == null) { - throw new NullPointerException("message"); - } + requireNonNull(message, "message"); final ChannelGroupFuture future; if (voidPromise) { diff --git a/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java b/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java index 17feaa4875..797a2fe755 100644 --- a/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java +++ b/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java @@ -15,6 +15,8 @@ */ package io.netty.channel.group; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelFutureListener; @@ -82,12 +84,8 @@ final class DefaultChannelGroupFuture extends DefaultPromise implements Ch */ DefaultChannelGroupFuture(ChannelGroup group, Collection futures, EventExecutor executor) { super(executor); - if (group == null) { - throw new NullPointerException("group"); - } - if (futures == null) { - throw new NullPointerException("futures"); - } + requireNonNull(group, "group"); + requireNonNull(futures, "futures"); this.group = group; diff --git a/transport/src/main/java/io/netty/channel/local/LocalAddress.java b/transport/src/main/java/io/netty/channel/local/LocalAddress.java index 6098cca470..8b2c8cc422 100644 --- a/transport/src/main/java/io/netty/channel/local/LocalAddress.java +++ b/transport/src/main/java/io/netty/channel/local/LocalAddress.java @@ -15,6 +15,8 @@ */ package io.netty.channel.local; +import static java.util.Objects.requireNonNull; + import io.netty.channel.Channel; import java.net.SocketAddress; @@ -50,9 +52,7 @@ public final class LocalAddress extends SocketAddress implements Comparable new NioHandler(selectorProvider, selectStrategyFactory.newSelectStrategy()); } @@ -267,9 +268,7 @@ public final class NioHandler implements IoHandler { * be executed by this event loop when the {@link SelectableChannel} is ready. */ public void register(final SelectableChannel ch, final int interestOps, final NioTask task) { - if (ch == null) { - throw new NullPointerException("ch"); - } + requireNonNull(ch, "ch"); if (interestOps == 0) { throw new IllegalArgumentException("interestOps must be non-zero."); } @@ -277,9 +276,7 @@ public final class NioHandler implements IoHandler { throw new IllegalArgumentException( "invalid interestOps: " + interestOps + "(validOps: " + ch.validOps() + ')'); } - if (task == null) { - throw new NullPointerException("task"); - } + requireNonNull(task, "task"); register0(ch, interestOps, task); } diff --git a/transport/src/main/java/io/netty/channel/socket/DefaultDatagramChannelConfig.java b/transport/src/main/java/io/netty/channel/socket/DefaultDatagramChannelConfig.java index 5d3418c738..55b263451b 100644 --- a/transport/src/main/java/io/netty/channel/socket/DefaultDatagramChannelConfig.java +++ b/transport/src/main/java/io/netty/channel/socket/DefaultDatagramChannelConfig.java @@ -36,6 +36,7 @@ import java.net.SocketException; import java.util.Map; import static io.netty.channel.ChannelOption.*; +import static java.util.Objects.requireNonNull; /** * The default {@link DatagramChannelConfig} implementation. @@ -52,9 +53,7 @@ public class DefaultDatagramChannelConfig extends DefaultChannelConfig implement */ public DefaultDatagramChannelConfig(DatagramChannel channel, DatagramSocket javaSocket) { super(channel, new FixedRecvByteBufAllocator(2048)); - if (javaSocket == null) { - throw new NullPointerException("javaSocket"); - } + requireNonNull(javaSocket, "javaSocket"); this.javaSocket = javaSocket; } diff --git a/transport/src/main/java/io/netty/channel/socket/DefaultServerSocketChannelConfig.java b/transport/src/main/java/io/netty/channel/socket/DefaultServerSocketChannelConfig.java index 10c7bcb700..445283b946 100644 --- a/transport/src/main/java/io/netty/channel/socket/DefaultServerSocketChannelConfig.java +++ b/transport/src/main/java/io/netty/channel/socket/DefaultServerSocketChannelConfig.java @@ -32,6 +32,7 @@ import static io.netty.channel.ChannelOption.SO_BACKLOG; import static io.netty.channel.ChannelOption.SO_RCVBUF; import static io.netty.channel.ChannelOption.SO_REUSEADDR; import static io.netty.util.internal.ObjectUtil.checkPositiveOrZero; +import static java.util.Objects.requireNonNull; /** * The default {@link ServerSocketChannelConfig} implementation. @@ -47,9 +48,7 @@ public class DefaultServerSocketChannelConfig extends DefaultChannelConfig */ public DefaultServerSocketChannelConfig(ServerSocketChannel channel, ServerSocket javaSocket) { super(channel); - if (javaSocket == null) { - throw new NullPointerException("javaSocket"); - } + requireNonNull(javaSocket, "javaSocket"); this.javaSocket = javaSocket; } diff --git a/transport/src/main/java/io/netty/channel/socket/DefaultSocketChannelConfig.java b/transport/src/main/java/io/netty/channel/socket/DefaultSocketChannelConfig.java index c154582fe5..eb471ad1f3 100644 --- a/transport/src/main/java/io/netty/channel/socket/DefaultSocketChannelConfig.java +++ b/transport/src/main/java/io/netty/channel/socket/DefaultSocketChannelConfig.java @@ -29,6 +29,7 @@ import java.net.SocketException; import java.util.Map; import static io.netty.channel.ChannelOption.*; +import static java.util.Objects.requireNonNull; /** * The default {@link SocketChannelConfig} implementation. @@ -44,9 +45,7 @@ public class DefaultSocketChannelConfig extends DefaultChannelConfig */ public DefaultSocketChannelConfig(SocketChannel channel, Socket javaSocket) { super(channel); - if (javaSocket == null) { - throw new NullPointerException("javaSocket"); - } + requireNonNull(javaSocket, "javaSocket"); this.javaSocket = javaSocket; // Enable TCP_NODELAY by default if possible. diff --git a/transport/src/main/java/io/netty/channel/socket/nio/NioDatagramChannel.java b/transport/src/main/java/io/netty/channel/socket/nio/NioDatagramChannel.java index a594a08ff3..d148defd80 100644 --- a/transport/src/main/java/io/netty/channel/socket/nio/NioDatagramChannel.java +++ b/transport/src/main/java/io/netty/channel/socket/nio/NioDatagramChannel.java @@ -15,6 +15,8 @@ */ package io.netty.channel.socket.nio; +import static java.util.Objects.requireNonNull; + import io.netty.buffer.ByteBuf; import io.netty.channel.AddressedEnvelope; import io.netty.channel.Channel; @@ -395,13 +397,8 @@ public final class NioDatagramChannel checkJavaVersion(); - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(networkInterface, "networkInterface"); try { MembershipKey key; @@ -474,12 +471,8 @@ public final class NioDatagramChannel ChannelPromise promise) { checkJavaVersion(); - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(networkInterface, "networkInterface"); synchronized (this) { if (memberships != null) { @@ -527,16 +520,10 @@ public final class NioDatagramChannel InetAddress sourceToBlock, ChannelPromise promise) { checkJavaVersion(); - if (multicastAddress == null) { - throw new NullPointerException("multicastAddress"); - } - if (sourceToBlock == null) { - throw new NullPointerException("sourceToBlock"); - } + requireNonNull(multicastAddress, "multicastAddress"); + requireNonNull(sourceToBlock, "sourceToBlock"); + requireNonNull(networkInterface, "networkInterface"); - if (networkInterface == null) { - throw new NullPointerException("networkInterface"); - } synchronized (this) { if (memberships != null) { List keys = memberships.get(multicastAddress); diff --git a/transport/src/main/java/io/netty/channel/socket/nio/NioServerSocketChannel.java b/transport/src/main/java/io/netty/channel/socket/nio/NioServerSocketChannel.java index eb951f5a1b..490b5e2d17 100644 --- a/transport/src/main/java/io/netty/channel/socket/nio/NioServerSocketChannel.java +++ b/transport/src/main/java/io/netty/channel/socket/nio/NioServerSocketChannel.java @@ -15,13 +15,14 @@ */ package io.netty.channel.socket.nio; +import static java.util.Objects.requireNonNull; + import io.netty.channel.ChannelException; import io.netty.channel.ChannelMetadata; import io.netty.channel.ChannelOption; import io.netty.channel.ChannelOutboundBuffer; import io.netty.channel.EventLoop; import io.netty.channel.EventLoopGroup; -import io.netty.util.internal.ObjectUtil; import io.netty.util.internal.SocketUtils; import io.netty.channel.nio.AbstractNioMessageChannel; import io.netty.channel.socket.DefaultServerSocketChannelConfig; @@ -90,7 +91,7 @@ public class NioServerSocketChannel extends AbstractNioMessageChannel public NioServerSocketChannel( EventLoop eventLoop, EventLoopGroup childEventLoopGroup, ServerSocketChannel channel) { super(null, eventLoop, channel, SelectionKey.OP_ACCEPT); - this.childEventLoopGroup = ObjectUtil.checkNotNull(childEventLoopGroup, "childEventLoopGroup"); + this.childEventLoopGroup = requireNonNull(childEventLoopGroup, "childEventLoopGroup"); config = new NioServerSocketChannelConfig(this, javaChannel().socket()); }