[x] add ZnGemServer for GsDevKit/gsApplicationTools Gem Server support.
ZnGemServer-based tests for Web Sockets, HTTP and REST.
ZnGemServer support for logging to Transcript or Object Log:
logToObjectLog
logToTranscript
plus control over what gets logged:
logErrorsOnly
logEverything
ZnGemServer support for the following ZnServer options:
authenticator
bindingAddress
debugMode
delegate
maximumEntitySize
reader
route
serverUrl
useGzipCompressionAndChunking
[x] Improved continuation support with ZnTransactionSafeManagingMultiThreadedServer.
ZnTransactionSafeManagingMultiThreadedServer is the default Server class for GsDevKit.
continuations are snapped off for ZnServer infrastructure errors, Halt, and Breakpoints. This support does not interfere with the continuation support provided for Seaside. Instead it provides you with the the equivalent functionality for non-Seaside servers like Web Socket, REST or simple HTTP servers. Note that remote Breakpoints should not be used until 3.2.4 or later.
bugfixes and improved continuation support for SocketStream and SocketStreamSocket classes.
TransientValue and TrasientStackValue class used in strategic locations to prevent GsSocket and GsProcess instances from being committed.
[x] fix potential infinite loop on accept error in SocketStreamSocket (d8b708256f7b6b921db361afe2bf650cb84ecac4), by checking for error from underLying socket accept call
[x] additional Zinc bug fixes:
Issue #36: ObjectLog-based ZnLogListener needed
Issue #37: review server stack for GemStone/Seaside
Issue #43: Address Johan's issues
Issue #46: Missing GsSocket exceptions
Issue #47: socket error while snapping off continuation
Issue #58: port Zinc-WebSocket packages to GemStone
Issue #59: Timeout passed to a ZnClient is ignored while making the connection via the underlying socket
Issue #68: NeoJSON loads from master and not from gs_master ?
[ ] document ZnGemServer examples
From PR #70:
[x] ZnManagingMultiThreadedServer is used by default for the classic pre-GemServer ZnServers
[x] ZnTransactionSafeManagingMultiThreadedServer: shoehorn in object log logging for ZnGemServer object logging
[x] ZnGemServerManagingMultiThreadedServer major refactoring of the ZnServer methods to take full advantage of ZnNewGemServer
accept
callFrom PR #70: