package io.netty.buffer;

import g.a.a.a.a;
import io.netty.util.internal.PlatformDependent;
import java.nio.ByteBuffer;
import java.util.Objects;

/* JADX INFO: loaded from: classes.dex */
public final class ReadOnlyUnsafeDirectByteBuf extends ReadOnlyByteBufferBuf {
    private final long memoryAddress;

    public ReadOnlyUnsafeDirectByteBuf(ByteBufAllocator byteBufAllocator, ByteBuffer byteBuffer) {
        super(byteBufAllocator, byteBuffer);
        this.memoryAddress = PlatformDependent.directBufferAddress(this.buffer);
    }

    private long addr(int i2) {
        return this.memoryAddress + ((long) i2);
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.AbstractByteBuf
    public byte _getByte(int i2) {
        return UnsafeByteBufUtil.getByte(addr(i2));
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.AbstractByteBuf
    public int _getInt(int i2) {
        return UnsafeByteBufUtil.getInt(addr(i2));
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.AbstractByteBuf
    public long _getLong(int i2) {
        return UnsafeByteBufUtil.getLong(addr(i2));
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.AbstractByteBuf
    public short _getShort(int i2) {
        return UnsafeByteBufUtil.getShort(addr(i2));
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.AbstractByteBuf
    public int _getUnsignedMedium(int i2) {
        return UnsafeByteBufUtil.getUnsignedMedium(addr(i2));
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.ByteBuf
    public ByteBuf copy(int i2, int i3) {
        checkIndex(i2, i3);
        ByteBuf byteBufDirectBuffer = alloc().directBuffer(i3, maxCapacity());
        if (i3 != 0) {
            if (byteBufDirectBuffer.hasMemoryAddress()) {
                PlatformDependent.copyMemory(addr(i2), byteBufDirectBuffer.memoryAddress(), i3);
                byteBufDirectBuffer.setIndex(0, i3);
            } else {
                byteBufDirectBuffer.writeBytes(this, i2, i3);
            }
        }
        return byteBufDirectBuffer;
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.ByteBuf
    public ByteBuf getBytes(int i2, ByteBuf byteBuf, int i3, int i4) {
        checkIndex(i2, i4);
        Objects.requireNonNull(byteBuf, "dst");
        if (i3 < 0 || i3 > byteBuf.capacity() - i4) {
            throw new IndexOutOfBoundsException(a.l("dstIndex: ", i3));
        }
        if (byteBuf.hasMemoryAddress()) {
            PlatformDependent.copyMemory(addr(i2), ((long) i3) + byteBuf.memoryAddress(), i4);
        } else if (byteBuf.hasArray()) {
            PlatformDependent.copyMemory(addr(i2), byteBuf.array(), byteBuf.arrayOffset() + i3, i4);
        } else {
            byteBuf.setBytes(i3, this, i2, i4);
        }
        return this;
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.ByteBuf
    public ByteBuf getBytes(int i2, ByteBuffer byteBuffer) {
        checkIndex(i2);
        Objects.requireNonNull(byteBuffer, "dst");
        int iMin = Math.min(capacity() - i2, byteBuffer.remaining());
        ByteBuffer byteBufferInternalNioBuffer = internalNioBuffer();
        byteBufferInternalNioBuffer.clear().position(i2).limit(i2 + iMin);
        byteBuffer.put(byteBufferInternalNioBuffer);
        return this;
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.ByteBuf
    public ByteBuf getBytes(int i2, byte[] bArr, int i3, int i4) {
        checkIndex(i2, i4);
        Objects.requireNonNull(bArr, "dst");
        if (i3 < 0 || i3 > bArr.length - i4) {
            throw new IndexOutOfBoundsException(String.format("dstIndex: %d, length: %d (expected: range(0, %d))", Integer.valueOf(i3), Integer.valueOf(i4), Integer.valueOf(bArr.length)));
        }
        if (i4 != 0) {
            PlatformDependent.copyMemory(addr(i2), bArr, i3, i4);
        }
        return this;
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.ByteBuf
    public boolean hasMemoryAddress() {
        return true;
    }

    @Override // io.netty.buffer.ReadOnlyByteBufferBuf, io.netty.buffer.ByteBuf
    public long memoryAddress() {
        return this.memoryAddress;
    }
}
