All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.atomix.catalyst.buffer.WrappedBytes Maven / Gradle / Ivy

There is a newer version: 1.2.1
Show newest version
/*
 * Copyright 2015 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package io.atomix.catalyst.buffer;

import java.nio.ByteOrder;

/**
 * Wrapped bytes.
 *
 * @author Jordan Halterman
 */
public class WrappedBytes extends AbstractBytes {
  protected final Bytes bytes;
  private final Bytes root;

  public WrappedBytes(Bytes bytes) {
    if (bytes == null)
      throw new NullPointerException("bytes cannot be null");
    this.bytes = bytes;
    this.root = bytes instanceof WrappedBytes ? ((WrappedBytes) bytes).root : bytes;
  }

  /**
   * Returns the root bytes.
   */
  public Bytes root() {
    return root;
  }

  @Override
  public long size() {
    return bytes.size();
  }

  @Override
  public Bytes resize(long newSize) {
    return bytes.resize(newSize);
  }

  @Override
  public ByteOrder order() {
    return bytes.order();
  }

  @Override
  public Bytes zero() {
    bytes.zero();
    return this;
  }

  @Override
  public Bytes zero(long offset) {
    bytes.zero(offset);
    return this;
  }

  @Override
  public Bytes zero(long offset, long length) {
    bytes.zero(offset, length);
    return this;
  }

  @Override
  public Bytes read(long offset, Bytes dst, long dstOffset, long length) {
    bytes.read(offset, dst, dstOffset, length);
    return this;
  }

  @Override
  public Bytes read(long offset, byte[] dst, long dstOffset, long length) {
    bytes.read(offset, dst, dstOffset, length);
    return this;
  }

  @Override
  public int readByte(long offset) {
    return bytes.readByte(offset);
  }

  @Override
  public int readUnsignedByte(long offset) {
    return bytes.readUnsignedByte(offset);
  }

  @Override
  public char readChar(long offset) {
    return bytes.readChar(offset);
  }

  @Override
  public short readShort(long offset) {
    return bytes.readShort(offset);
  }

  @Override
  public int readUnsignedShort(long offset) {
    return bytes.readUnsignedShort(offset);
  }

  @Override
  public int readMedium(long offset) {
    return bytes.readMedium(offset);
  }

  @Override
  public int readUnsignedMedium(long offset) {
    return bytes.readUnsignedMedium(offset);
  }

  @Override
  public int readInt(long offset) {
    return bytes.readInt(offset);
  }

  @Override
  public long readUnsignedInt(long offset) {
    return bytes.readUnsignedInt(offset);
  }

  @Override
  public long readLong(long offset) {
    return bytes.readLong(offset);
  }

  @Override
  public float readFloat(long offset) {
    return bytes.readFloat(offset);
  }

  @Override
  public double readDouble(long offset) {
    return bytes.readDouble(offset);
  }

  @Override
  public boolean readBoolean(long offset) {
    return bytes.readBoolean(offset);
  }

  @Override
  public String readString(long offset) {
    return bytes.readString(offset);
  }

  @Override
  public String readUTF8(long offset) {
    return bytes.readUTF8(offset);
  }

  @Override
  public Bytes write(long offset, Bytes src, long srcOffset, long length) {
    bytes.write(offset, src, srcOffset, length);
    return this;
  }

  @Override
  public Bytes write(long offset, byte[] src, long srcOffset, long length) {
    bytes.write(offset, src, srcOffset, length);
    return this;
  }

  @Override
  public Bytes writeByte(long offset, int b) {
    bytes.writeByte(offset, b);
    return this;
  }

  @Override
  public Bytes writeUnsignedByte(long offset, int b) {
    bytes.writeUnsignedByte(offset, b);
    return this;
  }

  @Override
  public Bytes writeChar(long offset, char c) {
    bytes.writeChar(offset, c);
    return this;
  }

  @Override
  public Bytes writeShort(long offset, short s) {
    bytes.writeShort(offset, s);
    return this;
  }

  @Override
  public Bytes writeUnsignedShort(long offset, int s) {
    bytes.writeUnsignedShort(offset, s);
    return this;
  }

  @Override
  public Bytes writeMedium(long offset, int m) {
    bytes.writeMedium(offset, m);
    return this;
  }

  @Override
  public Bytes writeUnsignedMedium(long offset, int m) {
    bytes.writeUnsignedMedium(offset, m);
    return this;
  }

  @Override
  public Bytes writeInt(long offset, int i) {
    bytes.writeInt(offset, i);
    return this;
  }

  @Override
  public Bytes writeUnsignedInt(long offset, long i) {
    bytes.writeUnsignedInt(offset, i);
    return this;
  }

  @Override
  public Bytes writeLong(long offset, long l) {
    bytes.writeLong(offset, l);
    return this;
  }

  @Override
  public Bytes writeFloat(long offset, float f) {
    bytes.writeFloat(offset, f);
    return this;
  }

  @Override
  public Bytes writeDouble(long offset, double d) {
    bytes.writeDouble(offset, d);
    return this;
  }

  @Override
  public Bytes writeBoolean(long offset, boolean b) {
    bytes.writeBoolean(offset, b);
    return this;
  }

  @Override
  public Bytes writeString(long offset, String s) {
    bytes.writeString(offset, s);
    return this;
  }

  @Override
  public Bytes writeUTF8(long offset, String s) {
    bytes.writeUTF8(offset, s);
    return this;
  }

  @Override
  public Bytes flush() {
    bytes.flush();
    return this;
  }

  @Override
  public void close() {
    bytes.close();
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy