/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* ORACLE 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)));
}
}