question: public void write ( byte [ ] b , int o , int len ) { while ( len > 0 ) { int n = len <= availLen ? len : availLen ; System . arraycopy ( b , o , buf , offset , n ) ; incrementOffset ( n ) ; len -= n ; o += n ; } }
target:  this should rarely be used, the normal way (to avoid double copying) is to get the buffer and write directly to it