Mercurial Hosting > luan
comparison src/org/eclipse/jetty/io/AbstractBuffer.java @ 1031:921c25a05eaa
remove Buffer.asReadOnlyBuffer()
| author | Franklin Schmidt <fschmidt@gmail.com> | 
|---|---|
| date | Thu, 03 Nov 2016 02:04:40 -0600 | 
| parents | 80cad9086593 | 
| children | eca26899c4bc | 
   comparison
  equal
  deleted
  inserted
  replaced
| 1030:80cad9086593 | 1031:921c25a05eaa | 
|---|---|
| 35 { | 35 { | 
| 36 private static final Logger LOG = LoggerFactory.getLogger(AbstractBuffer.class); | 36 private static final Logger LOG = LoggerFactory.getLogger(AbstractBuffer.class); | 
| 37 | 37 | 
| 38 private final static boolean __boundsChecking = Boolean.getBoolean("org.eclipse.jetty.io.AbstractBuffer.boundsChecking"); | 38 private final static boolean __boundsChecking = Boolean.getBoolean("org.eclipse.jetty.io.AbstractBuffer.boundsChecking"); | 
| 39 | 39 | 
| 40 protected final static String | 40 protected final static String __READONLY = "READONLY"; | 
| 41 __IMMUTABLE = "IMMUTABLE", | |
| 42 __READONLY = "READONLY", | |
| 43 __READWRITE = "READWRITE", | |
| 44 __VOLATILE = "VOLATILE"; | |
| 45 | 41 | 
| 46 protected int _access; | 42 protected int _access; | 
| 47 | 43 | 
| 48 protected int _get; | 44 protected int _get; | 
| 49 protected int _put; | 45 protected int _put; | 
| 59 * | 55 * | 
| 60 * @param access 0==IMMUTABLE, 1==READONLY, 2==READWRITE | 56 * @param access 0==IMMUTABLE, 1==READONLY, 2==READWRITE | 
| 61 */ | 57 */ | 
| 62 protected AbstractBuffer(int access) | 58 protected AbstractBuffer(int access) | 
| 63 { | 59 { | 
| 64 // if (access == IMMUTABLE && isVolatile) | |
| 65 // throw new IllegalArgumentException("IMMUTABLE && VOLATILE"); | |
| 66 setMarkIndex(-1); | 60 setMarkIndex(-1); | 
| 67 _access = access; | 61 _access = access; | 
| 68 } | 62 } | 
| 69 | 63 | 
| 70 /* | |
| 71 * @see org.eclipse.io.Buffer#toArray() | |
| 72 */ | |
| 73 public byte[] asArray() | 64 public byte[] asArray() | 
| 74 { | 65 { | 
| 75 byte[] bytes = new byte[length()]; | 66 byte[] bytes = new byte[length()]; | 
| 76 byte[] array = array(); | 67 byte[] array = array(); | 
| 77 if (array != null) | 68 if (array != null) | 
| 78 System.arraycopy(array, getIndex(), bytes, 0, bytes.length); | 69 System.arraycopy(array, getIndex(), bytes, 0, bytes.length); | 
| 79 else | 70 else | 
| 80 peek(getIndex(), bytes, 0, length()); | 71 peek(getIndex(), bytes, 0, length()); | 
| 81 return bytes; | 72 return bytes; | 
| 82 } | |
| 83 | |
| 84 private ByteArrayBuffer duplicate(int access) | |
| 85 { | |
| 86 return new ByteArrayBuffer(asArray(), 0, length(), access); | |
| 87 } | |
| 88 | |
| 89 /* | |
| 90 * @see org.eclipse.util.Buffer#asReadOnlyBuffer() | |
| 91 */ | |
| 92 public Buffer asReadOnlyBuffer() | |
| 93 { | |
| 94 if (isReadOnly()) return this; | |
| 95 return new View(this, markIndex(), getIndex(), putIndex(), READONLY); | |
| 96 } | 73 } | 
| 97 | 74 | 
| 98 public Buffer buffer() | 75 public Buffer buffer() | 
| 99 { | 76 { | 
| 100 return this; | 77 return this; | 
| 290 | 267 | 
| 291 @Override | 268 @Override | 
| 292 public int poke(int index, Buffer src) | 269 public int poke(int index, Buffer src) | 
| 293 { | 270 { | 
| 294 _hash=0; | 271 _hash=0; | 
| 295 /* | |
| 296 if (isReadOnly()) | |
| 297 throw new IllegalStateException(__READONLY); | |
| 298 if (index < 0) | |
| 299 throw new IllegalArgumentException("index<0: " + index + "<0"); | |
| 300 */ | |
| 301 | 272 | 
| 302 int length=src.length(); | 273 int length=src.length(); | 
| 303 if (index + length > capacity()) | 274 if (index + length > capacity()) | 
| 304 { | 275 { | 
| 305 length=capacity()-index; | 276 length=capacity()-index; | 
| 337 | 308 | 
| 338 | 309 | 
| 339 public int poke(int index, byte[] b, int offset, int length) | 310 public int poke(int index, byte[] b, int offset, int length) | 
| 340 { | 311 { | 
| 341 _hash=0; | 312 _hash=0; | 
| 342 /* | |
| 343 if (isReadOnly()) | |
| 344 throw new IllegalStateException(__READONLY); | |
| 345 if (index < 0) | |
| 346 throw new IllegalArgumentException("index<0: " + index + "<0"); | |
| 347 */ | |
| 348 if (index + length > capacity()) | 313 if (index + length > capacity()) | 
| 349 { | 314 { | 
| 350 length=capacity()-index; | 315 length=capacity()-index; | 
| 351 /* if (length<0) | 316 /* if (length<0) | 
| 352 throw new IllegalArgumentException("index>capacity(): " + index + ">" + capacity()); | 317 throw new IllegalArgumentException("index>capacity(): " + index + ">" + capacity()); | 
| 412 setMarkIndex(-1); | 377 setMarkIndex(-1); | 
| 413 } | 378 } | 
| 414 | 379 | 
| 415 public void setGetIndex(int getIndex) | 380 public void setGetIndex(int getIndex) | 
| 416 { | 381 { | 
| 417 /* bounds checking | |
| 418 if (isImmutable()) | |
| 419 throw new IllegalStateException(__IMMUTABLE); | |
| 420 if (getIndex < 0) | |
| 421 throw new IllegalArgumentException("getIndex<0: " + getIndex + "<0"); | |
| 422 if (getIndex > putIndex()) | |
| 423 throw new IllegalArgumentException("getIndex>putIndex: " + getIndex + ">" + putIndex()); | |
| 424 */ | |
| 425 _get = getIndex; | 382 _get = getIndex; | 
| 426 _hash=0; | 383 _hash=0; | 
| 427 } | 384 } | 
| 428 | 385 | 
| 429 public void setMarkIndex(int index) | 386 public void setMarkIndex(int index) | 
| 430 { | 387 { | 
| 431 /* | |
| 432 if (index>=0 && isImmutable()) | |
| 433 throw new IllegalStateException(__IMMUTABLE); | |
| 434 */ | |
| 435 _mark = index; | 388 _mark = index; | 
| 436 } | 389 } | 
| 437 | 390 | 
| 438 public void setPutIndex(int putIndex) | 391 public void setPutIndex(int putIndex) | 
| 439 { | 392 { | 
| 440 /* bounds checking | |
| 441 if (isImmutable()) | |
| 442 throw new IllegalStateException(__IMMUTABLE); | |
| 443 if (putIndex > capacity()) | |
| 444 throw new IllegalArgumentException("putIndex>capacity: " + putIndex + ">" + capacity()); | |
| 445 if (getIndex() > putIndex) | |
| 446 throw new IllegalArgumentException("getIndex>putIndex: " + getIndex() + ">" + putIndex); | |
| 447 */ | |
| 448 _put = putIndex; | 393 _put = putIndex; | 
| 449 _hash=0; | 394 _hash=0; | 
| 450 } | 395 } | 
| 451 | 396 | 
| 452 public int skip(int n) | 397 public int skip(int n) | 
