changeset 1072:00704b28b9f1

remove JBuffer.skip()
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 10 Nov 2016 02:29:01 -0700
parents b4ba8a4d5a16
children 6e511ea557b4
files src/org/eclipse/jetty/io/JBuffer.java src/org/eclipse/jetty/io/nio/SslConnection.java
diffstat 2 files changed, 17 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
diff -r b4ba8a4d5a16 -r 00704b28b9f1 src/org/eclipse/jetty/io/JBuffer.java
--- a/src/org/eclipse/jetty/io/JBuffer.java	Thu Nov 10 02:13:28 2016 -0700
+++ b/src/org/eclipse/jetty/io/JBuffer.java	Thu Nov 10 02:29:01 2016 -0700
@@ -133,11 +133,6 @@
 		return put(b,0,b.length);
 	}
 
-	public void skip(int n) {
-		if (remaining() < n) n = remaining();
-		bb.position(bb.position() + n);
-	}
-
 	private final byte[] asArray() {
 		byte[] bytes = new byte[remaining()];
 		bb.duplicate().get(bytes);
diff -r b4ba8a4d5a16 -r 00704b28b9f1 src/org/eclipse/jetty/io/nio/SslConnection.java
--- a/src/org/eclipse/jetty/io/nio/SslConnection.java	Thu Nov 10 02:13:28 2016 -0700
+++ b/src/org/eclipse/jetty/io/nio/SslConnection.java	Thu Nov 10 02:29:01 2016 -0700
@@ -128,7 +128,7 @@
 						_buffers=new SslBuffers(_session.getPacketBufferSize()*2,_session.getApplicationBufferSize()*2);
 					_inbound = _buffers._in;
 					_outbound = _buffers._out;
-					_unwrapBuf=_buffers._unwrap;
+					_unwrapBuf = _buffers._unwrap;
 					__buffers.set(null);
 				}
 			}
@@ -171,7 +171,7 @@
 
 				// If we are handshook let the delegate connection
 				if (_engine.getHandshakeStatus()!=HandshakeStatus.NOT_HANDSHAKING)
-					progress=process(null,null);
+					progress = process(null,null);
 
 				// handle the delegate connection
 				_connection.handle();
@@ -212,6 +212,14 @@
 	{
 	}
 
+	private void put_unwrapBuf(JBuffer toFill) {
+		JBuffer dup = toFill.duplicate();
+		dup.position(dup.limit());
+		dup.limit(dup.capacity());
+		dup.putQ(_unwrapBuf);
+		toFill.limit(dup.position());
+	}
+
 	private synchronized boolean process(JBuffer toFill, JBuffer toFlush) throws IOException
 	{
 		boolean some_progress=false;
@@ -225,19 +233,20 @@
 			{
 				// use the unwrapbuffer to hold received data.
 				BufferUtil.compact(_unwrapBuf);
-				toFill=_unwrapBuf;
+				toFill = _unwrapBuf;
 			}
 			// Else if the fill buffer is too small for the SSL session
 			else if (toFill.capacity()<_session.getApplicationBufferSize())
 			{
 				// fill to the temporary unwrapBuffer
-				boolean progress=process(null,toFlush);
+				boolean progress = process(null,toFlush);
 
 				// if we received any data,
 				if (_unwrapBuf!=null && _unwrapBuf.hasRemaining())
 				{
 					// transfer from temp buffer to fill buffer
-					_unwrapBuf.skip(toFill.put(_unwrapBuf));
+//					_unwrapBuf.skip(toFill.putJ(_unwrapBuf));
+					put_unwrapBuf(toFill);
 					return true;
 				}
 				else
@@ -248,7 +257,8 @@
 			else if (_unwrapBuf!=null && _unwrapBuf.hasRemaining())
 			{
 				// transfer from temp buffer to fill buffer
-				_unwrapBuf.skip(toFill.put(_unwrapBuf));
+//				_unwrapBuf.skip(toFill.putJ(_unwrapBuf));
+				put_unwrapBuf(toFill);
 				return true;
 			}
 
@@ -579,7 +589,7 @@
 
 		public int fill(JBuffer buffer) throws IOException
 		{
-			int size=buffer.remaining();
+			int size = buffer.remaining();
 			process(buffer, null);
 
 			int filled=buffer.remaining()-size;