Commit Graph

284 Commits

Author SHA1 Message Date
Joakim Erdfelt f4f5157ab6 Work on permessage-deflate continues 2015-05-14 07:45:25 -07:00
Joakim Erdfelt eb638777d0 Adding IO.close(Closeable) and using it. 2015-05-14 07:45:25 -07:00
Joakim Erdfelt a1bd9f7f50 Updating tests for draft 21 spec of permessage-deflate 2015-05-14 07:45:25 -07:00
Joakim Erdfelt ec9504aab8 Removing old websocket extensions x-webkit-deflate-frame and deflate-frame 2015-05-14 07:45:25 -07:00
Joakim Erdfelt 1f7f4dfa82 Reworking FrameCaptureExtension for timestamped in/out files of frames 2015-05-14 07:45:25 -07:00
Joakim Erdfelt b6afd2db4a Renaming FrameDebugExtension to FrameCaptureExtension to better reflect usage 2015-05-14 07:45:25 -07:00
Joakim Erdfelt 72593955c9 467043 - WebSocketClient close codes on protocol violation reported as policy violation
+ Correcting onOpen and onMessage handling of throwables
  to account for information from CloseException conditions.
2015-05-11 13:49:17 -07:00
Joakim Erdfelt 9261274699 Cleanup of toString() output 2015-05-11 13:29:54 -07:00
Joakim Erdfelt d0251349c5 467036 - WebSocketClient fails to process immediate frames from server
+ Using Connection.UpgradeFrom and Connection.UpgradeTo with
  client connections and endpoints too.
2015-05-11 13:28:58 -07:00
Joakim Erdfelt 77e42fb05a Updating WebSocket JettyListenerEventDriver for new Listeners
+ Basing implementation on instances of WebSocketConnectionListener
+ Adding support for:
  * WebSocketListener
  * WebSocketPartialListener
  * WebSocketPingPongListener
  * WebSocketFrameListener
2015-05-06 15:49:25 -07:00
Joakim Erdfelt 744b9e4c62 466619 - Add WebSocketFrameListener for receiving WebSocket Frame information
+ Adding WebSocketFrameListener and example use case
2015-05-06 15:49:25 -07:00
Joakim Erdfelt ecac4b4912 414479 - Add WebSocketPingPongListener for those that want PING/PONG payload data
+ Adding WebSocketPingPongListener and example case
2015-05-06 15:49:25 -07:00
Joakim Erdfelt 7e7b2e2950 420678 - Add WebSocketPartialListener to support receiving partial WebSocket TEXT/BINARY messages
+ Reworking WebSocketListener to be based on new
  WebSocketConnectionListener
+ Adding new WebSocketPartialListener and example
2015-05-06 15:49:25 -07:00
Joakim Erdfelt e801cf3374 466618 - Partial WebSocket Text delivery does not like incomplete UTF8 sequences
+ Adding alternative to Utf8StringBuilder that doesn't throw exception
  on incomplete UTF8 sequences, specifically for partial message
  handling
2015-05-06 15:49:25 -07:00
Joakim Erdfelt ed22d7e0de 464727 - Update Javadoc for Java 8 DocLint 2015-04-22 16:11:01 -07:00
Joakim Erdfelt 09b5f680b7 464727 - Update Javadoc for Java 8 DocLint
Eliminate empty tag warnings
+ Changed <p/> to <p>
+ Changed <br/> to <br>
2015-04-15 14:38:35 -07:00
Greg Wilkins 1cb0449be3 Organised imports 2015-03-26 12:32:15 +11:00
Joakim Erdfelt 1e3fe991e3 Increasing logging level for when websocket fails to open due to exception 2015-03-17 10:22:05 -07:00
Joakim Erdfelt 79fb2a4083 Fixing build 2015-03-12 10:42:09 -07:00
Joakim Erdfelt b75f8dcda4 Cleaning up cdi-websocket in prep for merge 2015-03-12 10:09:53 -07:00
Joakim Erdfelt 0301de099d Delaying decoration of websocket endpoints 2015-03-12 10:09:52 -07:00
Joakim Erdfelt dc81cda742 Using Jetty component listeners for CDI 2015-03-12 10:09:52 -07:00
Joakim Erdfelt 31ee46d482 453834 - CDI Support for WebSocket
+ Breaking down jetty-cdi into 3 modules
  * cdi-core
  * cdi-servlet
  * cdi-websocket
+ Creating WebSocketScope for cdi-websocket
+ Creating @Produces for jetty websocket api session
  and javax.websocket.Session
+ Unit tests for new functionality
2015-03-12 10:09:52 -07:00
Joakim Erdfelt 8b6a2629f8 453834 - CDI Support for WebSocket 2015-03-12 10:09:30 -07:00
Joakim Erdfelt 5b5c2369d5 Stragglers to the new year. tsk. tsk. 2015-03-12 10:09:30 -07:00
Joakim Erdfelt 4435ba3c2b cleaning up build warnings 2015-03-12 10:09:30 -07:00
Joakim Erdfelt 1f3097ff16 453834 - CDI Support for WebSocket
+ Adding scopes to websocket to help with CDI integration
2015-03-12 10:09:30 -07:00
Joakim Erdfelt 0c930c8640 Rename EnhancedInstantiator to DecoratedObjectFactory 2015-03-12 10:06:03 -07:00
Joakim Erdfelt 5c3e30d136 453834 - CDI Support for WebSocket
+ Changing util.Decorators to util.EnhancedInstantiator to reflect true
  usage
+ Adding EnhancedInstantiator to JSR-356
2015-03-12 10:04:50 -07:00
Simone Bordet b7715fb3eb Merged branch 'jetty-9.2.x' into 'master'. 2015-03-07 23:26:59 +01:00
Simone Bordet a13a55e242 Introduced LeakDetector.id() to be consistent in logging the resource ID. 2015-03-07 22:32:59 +01:00
Joakim Erdfelt 130afb9535 Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientLoadTest.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java
	jetty-spdy/spdy-server/src/test/java/org/eclipse/jetty/spdy/server/SynDataReplyDataLoadTest.java
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java
2015-03-06 15:57:52 -07:00
Joakim Erdfelt 74ee154bb1 Cleaning up LeakTrackingByteBufferPool / LeakDetector
+ Making use of LeakTrackingByteBufferPool more consistent
+ Using MappedByteBufferPool.Tagged where appropriate in test cases
+ Adding leak count tracking to LeakDetector
+ Adding leak count tracking to LeakTrackingByteBufferPool
+ Renaming websocket LeakTrackingBufferPool to
  LeakTrackingBufferPoolRule to reflect junit @Rule usage
+ Making websocket LeakTrackingBufferPoolRule always use
  MappedByteBufferPool.Tagged
+ Fixed various grammar concerns
2015-03-06 14:27:58 -07:00
Joakim Erdfelt c52f100ec3 Making WebSocket use new Upgrade mechanism
+ Also fixes websocket server prefill bytes issue
+ Adjusting client side to also use/benefit from new Upgrade mechanism
2015-02-13 15:16:48 -07:00
Greg Wilkins 0f7ee8d607 Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpVersion.java
	jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java
2015-02-13 11:45:56 +11:00
Greg Wilkins 2b2a70a93a 459845 Support upgrade
Added the concept of UpgradeFrom and UpgradeTo connections that support
transferring a buffer with content before opening new connection.
Aded EndPoint.update method as utility
2015-02-13 11:41:18 +11:00
Joakim Erdfelt 30dda86b20 Merge branch 'jetty-9.2.x' 2015-02-12 09:59:52 -07:00
Joakim Erdfelt 23e9246115 Adding TooFastClientTest for websocket server
+ test performs a client upgrade + 2 websocket frames all at once.
  not waiting for the upgrade response before sending those frames.
+ currently set to @Ignore until we can address how to copy this extra
  buffer information from the Http side to the WebSocket side.
2015-02-12 09:30:31 -07:00
Simone Bordet 8a27385bc3 Merged branch 'jetty-9.2.x' into 'master'. 2015-01-09 12:51:13 +01:00
Joakim Erdfelt f7b382064f 457017 - Reflective call to websocket methods that fail have ambiguous
exceptions 

+ Making JSR onOpen close and use onError properly, as well we
unwrapping the InvocationTargetException cause as to WHY the call to
onOpen failed.
2015-01-08 12:06:53 -07:00
Greg Wilkins e1cc5fb487 Merge remote-tracking branch 'origin/master' into jetty-9.3-ewyk
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
	jetty-server/src/main/java/org/eclipse/jetty/server/QueuedHttpInput.java
	jetty-util/src/main/java/org/eclipse/jetty/util/thread/NonBlockingThread.java
2015-01-08 15:21:01 +01:00
Joakim Erdfelt a3201a3c81 Happy New Year 2015 2015-01-07 17:06:59 -07:00
Joakim Erdfelt 6a0668b7a1 Happy New Year 2015 2015-01-07 17:03:30 -07:00
Greg Wilkins 3af9b145a3 Deprecated the AbstractConnection dispatchIO mechanism 2015-01-01 16:18:13 +01:00
Joakim Erdfelt a79b154d1b 456209 - Bad ContextClassLoader in WebSocket onMessage
+ Sets the class loader on an incoming frame to the
  class loader that loaded the web socket session

Also-by: Michael MacFadden <michael@macfadden.org>
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2014-12-29 12:10:55 -07:00
Simone Bordet 8d2efaf7eb 445167 - Allow configuration of dispatch after select.
Introduced parameter "dispatchIO" in the relevant factories so that
they can be configured by users and connections will be created
taking into account this parameter.

For less configurable connection factories, this parameter is
currently hardcoded to either true or false depending on the case.
For example, ALPN and NPN connections have it to false, since they
don't do any blocking operation in onFillable().
2014-09-26 10:13:16 +02:00
Simone Bordet a8b461fe91 Cosmetics: removed unused imports, cleaned up source code, improved javadocs. 2014-09-26 10:13:16 +02:00
Joakim Erdfelt 0bf68a07ae 442495 - Bad Context ClassLoader in JSR356 WebSocket onOpen
+ Fixing onOpen context classloader to be that of the context
  that started the WebSocketUpgradeFilter (which will be the
  same as the WebAppContext in most cases)
2014-09-23 11:33:44 +02:00
Joakim Erdfelt 901707b894 444617 - Expose local and remote socket address to applications
+ Exposing 2 new automatically added userProperties
  * "javax.websocket.endpoint.localAddress" 
  * "javax.websocket.endpoint.remoteAddress"
  these are both java.net.InetSocketAddress objects
2014-09-23 11:33:44 +02:00
Joakim Erdfelt 0dca1b0794 442495 - Bad Context ClassLoader in JSR356 WebSocket onOpen
+ Fixing onOpen context classloader to be that of the context
  that started the WebSocketUpgradeFilter (which will be the
  same as the WebAppContext in most cases)
2014-09-22 14:37:00 -07:00