FileDocCategorySizeDatePackage
HeapByteBufferR.javaAPI DocJava SE 5 API6697Fri Aug 26 16:48:02 BST 2005java.nio

HeapByteBufferR.java

/*
 * @(#)Heap-X-Buffer.java	1.28 03/12/19
 *
 * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */

// -- This file was mechanically generated: Do not edit! -- //

package java.nio;


/**



 * A read-only HeapByteBuffer.  This class extends the corresponding
 * read/write class, overriding the mutation methods to throw a {@link
 * ReadOnlyBufferException} and overriding the view-buffer methods to return an
 * instance of this class rather than of the superclass.

 */

class HeapByteBufferR
    extends HeapByteBuffer
{

    // For speed these fields are actually declared in X-Buffer;
    // these declarations are here as documentation
    /*




    */

    HeapByteBufferR(int cap, int lim) {		// package-private







	super(cap, lim);
	this.isReadOnly = true;

    }

    HeapByteBufferR(byte[] buf, int off, int len) { // package-private







	super(buf, off, len);
	this.isReadOnly = true;

    }

    protected HeapByteBufferR(byte[] buf,
				   int mark, int pos, int lim, int cap,
				   int off)
    {







	super(buf, mark, pos, lim, cap, off);
	this.isReadOnly = true;

    }

    public ByteBuffer slice() {
	return new HeapByteBufferR(hb,
					-1,
					0,
					this.remaining(),
					this.remaining(),
					this.position() + offset);
    }

    public ByteBuffer duplicate() {
	return new HeapByteBufferR(hb,
					this.markValue(),
					this.position(),
					this.limit(),
					this.capacity(),
					offset);
    }

    public ByteBuffer asReadOnlyBuffer() {








	return duplicate();

    }






























    public boolean isReadOnly() {
	return true;
    }

    public ByteBuffer put(byte x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer put(int i, byte x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer put(byte[] src, int offset, int length) {








	throw new ReadOnlyBufferException();

    }

    public ByteBuffer put(ByteBuffer src) {























	throw new ReadOnlyBufferException();

    }

    public ByteBuffer compact() {






	throw new ReadOnlyBufferException();

    }





    byte _get(int i) {				// package-private
	return hb[i];
    }

    void _put(int i, byte b) {			// package-private



	throw new ReadOnlyBufferException();

    }

    // char













    public ByteBuffer putChar(char x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer putChar(int i, char x) {




	throw new ReadOnlyBufferException();

    }

    public CharBuffer asCharBuffer() {
	int size = this.remaining() >> 1;
	int off = offset + position();
	return (bigEndian
		? (CharBuffer)(new ByteBufferAsCharBufferRB(this,
							       -1,
							       0,
							       size,
							       size,
							       off))
		: (CharBuffer)(new ByteBufferAsCharBufferRL(this,
							       -1,
							       0,
							       size,
							       size,
							       off)));
    }


    // short













    public ByteBuffer putShort(short x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer putShort(int i, short x) {




	throw new ReadOnlyBufferException();

    }

    public ShortBuffer asShortBuffer() {
	int size = this.remaining() >> 1;
	int off = offset + position();
	return (bigEndian
		? (ShortBuffer)(new ByteBufferAsShortBufferRB(this,
								 -1,
								 0,
								 size,
								 size,
								 off))
		: (ShortBuffer)(new ByteBufferAsShortBufferRL(this,
								 -1,
								 0,
								 size,
								 size,
								 off)));
    }


    // int













    public ByteBuffer putInt(int x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer putInt(int i, int x) {




	throw new ReadOnlyBufferException();

    }

    public IntBuffer asIntBuffer() {
	int size = this.remaining() >> 2;
	int off = offset + position();
	return (bigEndian
		? (IntBuffer)(new ByteBufferAsIntBufferRB(this,
							     -1,
							     0,
							     size,
							     size,
							     off))
		: (IntBuffer)(new ByteBufferAsIntBufferRL(this,
							     -1,
							     0,
							     size,
							     size,
							     off)));
    }


    // long













    public ByteBuffer putLong(long x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer putLong(int i, long x) {




	throw new ReadOnlyBufferException();

    }

    public LongBuffer asLongBuffer() {
	int size = this.remaining() >> 3;
	int off = offset + position();
	return (bigEndian
		? (LongBuffer)(new ByteBufferAsLongBufferRB(this,
							       -1,
							       0,
							       size,
							       size,
							       off))
		: (LongBuffer)(new ByteBufferAsLongBufferRL(this,
							       -1,
							       0,
							       size,
							       size,
							       off)));
    }


    // float













    public ByteBuffer putFloat(float x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer putFloat(int i, float x) {




	throw new ReadOnlyBufferException();

    }

    public FloatBuffer asFloatBuffer() {
	int size = this.remaining() >> 2;
	int off = offset + position();
	return (bigEndian
		? (FloatBuffer)(new ByteBufferAsFloatBufferRB(this,
								 -1,
								 0,
								 size,
								 size,
								 off))
		: (FloatBuffer)(new ByteBufferAsFloatBufferRL(this,
								 -1,
								 0,
								 size,
								 size,
								 off)));
    }


    // double













    public ByteBuffer putDouble(double x) {




	throw new ReadOnlyBufferException();

    }

    public ByteBuffer putDouble(int i, double x) {




	throw new ReadOnlyBufferException();

    }

    public DoubleBuffer asDoubleBuffer() {
	int size = this.remaining() >> 3;
	int off = offset + position();
	return (bigEndian
		? (DoubleBuffer)(new ByteBufferAsDoubleBufferRB(this,
								   -1,
								   0,
								   size,
								   size,
								   off))
		: (DoubleBuffer)(new ByteBufferAsDoubleBufferRL(this,
								   -1,
								   0,
								   size,
								   size,
								   off)));
    }








































}