* fix flaky test ClientCloseTest.testStopLifecycle() in 9.4.x
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
* test code cleanups in ClientCloseTest
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
+ Test cases have been updated based on PR review
+ Fixing merge from `jetty-9.4.x` that caused a duplicate
JettyListenerEventDriver.onContinuationFrame() method
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
+ If an annotated Jetty WebSocket Endpoint doesn't have
a handler for data types TEXT or BINARY then the
new NullMessage (sink) is used for that specific data type
to consume (quietly) those ignored Messages.
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
* Issue #2061 - fail current entry in CompressExtension on failure
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
* Issue #2061 - do not notify callback failure twice
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
* Removing Legacy Method Separators
* Restyling branch `jetty-9.4.x`
* Applying changes highlighted by checkstyle
* Applying XML restyling
* Fixing XML codestyle for IntelliJ
* Fixing XML style mistakes
* Revert "Applying XML restyling"
* Updating checkstyle for XML codestyle
* Reformatting pom.xml files
* Fixed empty string from line wraps
* Update intellij style to not do expression relative formatting. Reformatted code based on that.
* Increasing line split on Eclipse IDE Formatter to 512
* Restoring setting on internal default value.
+ IntelliJ will not export settings on things that set to their
internal default values.
We want to keep those values as a hedge against future default
value changes in future releases of IntelliJ.
* Fixing intellij codestyle
* do not allow single line simple methods
* misc checkstyle fixes
* re-exported with correct name and all values
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
+ Added new SCIOnStartupListener that allows for manual wiring up
of ServletContainerInitializers (with no bytecode scanning)
in embedded jetty usages
+ Introduced .initialized(context) and .configure(context) to both of
the websocket SCIs
+ Moved ClientConnectTest to jetty-websocket-tests
+ Moved WebSocketClientTest to jetty-websocket-tests
+ Made moved tests not use BlockheadServer
+ Made moved tests use new .configure(context, lambda) methods
+ Also allowing javax.websocket.server SCI implementation to
add ContextDestroyListener during the execution of another
ServletContextListener.
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
+ Deprecated B64Code
+ All code that isn't B64CodeTest is now using java.util.Base64
+ B64CodeTest is updated to confirm change to java.util.Base64
is possible without change in behavior. Just have to make
sure you use the appropriate Encoder / Decoder for the task
at hand (default vs mime vs url)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
+ FrameFlusher "close" frames are detected during
enqueue and sets the state properly for failing
other frames after it
+ Moving away from Blockhead(Client|Server) to using actual implementations
+ Moved tests to /jetty-websocket-tests/ to be able to use actual impl
for both sides of testcase (client and server)
+ Corrected FrameFlusher terminate/close to not fail the close frame
itself, but only frames that arrive AFTER the close frame.
+ Moving WebSocketCloseTest to jetty-websocket-tests to avoid
using BlockheadClient / BlockheadServer in testing
+ Cleanup of unnecessary modifiers on interface
+ Logging error if @OnWebSocketError is undeclared
+ IOState removed
+ New ConnectionState tracks connection basics in a simpler
method then IOState did.
+ No tracking of Remote close initiated (not needed)
+ IncomingFrames.incomingError() removed
+ Session delegates to Connection for all state changes
+ Errors can be communicated to application multiple times
+ Close is only communicated once
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>