QuickServer version 1.4.7, open source Java library/framework for quick creation
of robust multi-client TCP server applications is released.
What's New in 1.4.7 ?
--------------------------------
+ Implemented support NIO writes in sendClientXXX methods of ClientHandler.
+ Added initServer() that throws App Exception if it fails.
+ Added getServiceError() to Service interface.
+ Added load() method to QuickServer.
! Removed synchronized from processGotDataInBuffers in NonBlockingClientHandler.
# Improved ByteBufferInputStream for readLine
+ Added availableOnlyInByteBuffer() in NonBlockingClientHandler.
# Improved isLineReadyForStringBuffer() in NonBlockingClientHandler.
# Improved isClientEventNext() in BasicClientHandler.
+ Added check for NewLine miss in NonBlockingClientHandler.
# Added flush() in closeConnection() in BlockingClientHandler.
# Improved setClassLoader() of QuickServer.
! Added check for bootstrap classloader (null) in getClass() method of QuickServer
# Closed Keystore stream when no longer needed.
# shutdown command in QSAdminServer improved to close shell, this will
make server auto exit the jvm when the last client disconnects.
# GhostSocketReaper now will close pools after last client disconnects
after server is stopped.
! Added checks for null returned in ServerSocketChannel accept method.
! Fixed run NonBlockingClientHandler code to prevent more than one threads
from processing selector when server is re-started.
# Modified registerChannel to add to a list and then process when
selector becomes free.
! Fixed synchronization problem in ClientThread pool.returnObject() call.
+ MaxThreadAccessCount in NonBlockingClientHandler is now configurable.
+ Wakeup call on selector after RegisterForWrite and RegisterForRead in
NonBlockingClientHandler is now configurable.
# Improved validateObject method in ClientHandlerObjectFactory to check
if object was created from the same pool
+ Access to clientEvents method is now synchronized.
+ Added flush call after ObjectOutputStream is created in BasicClientHandler.
# Improved kill/exit command in QSAdmin to take a param (exit value)... read more
QuickServer version 1.4.6, open source Java library/framework for quick creation
of robust multi-client TCP server applications is released.
What's New in 1.4.6 ?
--------------------------------
# Improved ThreadPool for performance.
# Improved BasicClientHandler.
# Improved XmlAdderLoadTest.
+ Added byte-buffer-pool-info command - QsAdmin
! Fixed initSize default value setting
! Fixed synchronized blocks on clientEvents and moved clientConnectedTime code to run()
# Improved Architecture.pdf... read more
QuickServer version 1.4.6 beta, open source Java library/framework for quick creation
of robust multi-client TCP server applications is released.
What's New in 1.4.6 beta ?
--------------------------------------
+ Added initService(QuickServerConfig)
+ Added maxThreadsForNioWrite() for Thread Pools
+ Added ClientEventHandler to xml, also provided default implementation.
+ Added new QsAdmin commands 'client-handler-pool-dump'
+ Added isOpen() method to ClientHandler
+ Added ability to set default DataMode.
+ Added getBlockingMode() to QuickServer
+ Added Unix shell scripts
+ Added ClientExtendedEventHandler
+ Added facility to configure initial pool size.
+ Added method to BasicServerConfig so that business logic class can
be set and checked at compile time.
+ Introducing new ClientAuthenticationHandler (replacing Authenticator)
+ Added new org.quickserver.util.Assertion class
+ Added new org.quickserver.util.logging.SimpleJDKLoggingHook class
# Improved logging, ClientHandler
# Refactored ClientHandler
# Moved QSAdminGUI into a seperate jar
# Made most beans Serializable
! Fixed ClientEvent loss bug caused when more than one event gets picked at
the same time.
! Fixed charset bug in sendClientMsg() and sendClientBytes() methods when
length of byte[] representation is not equal to string representation
- Removed deprecated setServerAuthenticator(), getServerAuthenticator in QuickServer
- ServerAuthenticator and "server-authenticator" tag have been removed.
- Old xml format of v1.2 no longer supported.
- MaxClientHandler no longer needed, so removed.
- ObjectCleaner, ObjectCleanup no longer used, so removed.
+ New XML Tags: advanced-settings/max-threads-for-nio-write,
object-pool/init-size, object-pool/thread-object-pool/init-size,
object-pool/client-handler-object-pool/init-size,
object-pool/byte-buffer-object-pool/init-size,
object-pool/client-data-object-pool/init-size,
client-event-handler, qsadmin-server/client-event-handler
default-data-mode/data-type-in,default-data-mode/data-type-out,
client-extended-event-handler, qsadmin-server/client-extended-event-handler
client-authentication-handler, qsadmin-server/client-authentication-handler... read more
QuickServer version 1.4.5, open source Java library/framework for quick creation
of robust multi-client TCP server applications is released.
What's New in 1.4.5 ?
--------------------------
# Made ClientIdentifier implementation plug able.
+ Added ClientIdentifier implementations SyncClientIdentifier, OptimisticClientIdentifier
+ Added PoolManager, QSObjectPoolMaker interface to create pools and is plug able.
+ Added GUI Chat Client for ChatServer example.
+ Added 'FullThreadDump' command at QsAdminShell
# Made timeout setting to milliseconds, default timeout is now 1 minute.
# Improved ChatServer, FileServ examples.
# Improved QSAdminShell, thread dumps can now be done with shell enabled.
# Improved GhostSocketReaper.
! Fixed charset issue in readBytes() method of ClientHandler
! Fixed bug in QuickServer that prevented GhostSocketReaper from loading
when no SerevrHooks are defined.
! Fixed ByteBuffer object leak in ByteBufferOutputStream
+ New XML Tags: advanced-settings/client-identifier, object-pool/pool-manager,
advanced-settings/qsobject-pool-maker... read more
QuickServer version 1.4.5 beta, open source Java library/framework for quick creation
of robust multi-client TCP server applications is released.
What's New in 1.4.5 beta ?
--------------------------
+ Added support for NIO (non-blocking mode) for normal sockets: Server Mode
+ QuickServer now uses java assertion
+ Added new QsAdmin commands to find pool information.
+ Added new QsAdmin command 'systeminfo', 'start console' and 'stop console'.
+ Backlog and Socket linger for server is now configurable.
+ Added GUI prompt for sensitive application parameter.
+ Added -fullXML2File to -load switch.
+ Added new interface ClientEventHandler, ClientWriteHandler
# Improved object pool handling and creation.
# Improved QSAdminGUI to handle error in custom authenticators
# Communication logging is set to false by default now
# Improved communication logging for BINARY mode and general logging.
# Improved org.quickserver.util.logging classes implementation.
# Improved EchoWebServer example
# ClientHanlder.isConected() renamed to isConnected()
+ New XML Tags: Server Mode, advanced-settings, application-configuration/prompt-type,
object-pool/thread-object-pool, object-pool/client-handler-object-pool,
object-pool/byte-buffer-object-pool, object-pool/client-data-object-pool... read more
QuickServer version 1.4.1, open source Java library/framework for quick creation of robust, multi-threaded, multi-client TCP server applications is released.
What's New in 1.4 ?
---------------------
* Added Secure Mode for QuickServer: SSL, TLS
* Added SecureManagerLoader to manage Secure Mode.
* Added ability negotiating secure connection over normal tcp connection.
* Added init server hooks to QuickServer.
* Added BINARY mode of communication: ClientBinaryHandler
* Added QSAdminAPI api for communicating to QsAdminServer.
* Added findAllClientByKey to QuickServer object.
* Improved ClientHandler, Secure configuration.
* New example: XmlAdder - A simple xml server that adds 2 integers.
* New example: PipeServer - A simple redirection server.
Note: v1.4.1 is just an improved version of 1.4.0 with bug fixes. ... read more
QuickServer version 1.4.0, open source Java library/framework for quick creation of robust, multi-threaded, multi-client TCP server applications is released.
What's New in 1.4.0 ?
---------------------
* Added Secure Mode for QuickServer: SSL, TLS
* Added SecureManagerLoader to manage Secure Mode.
* Added ability negotiating secure connection over normal tcp connection.
* Added init server hooks to QuickServer.
* Added BINARY mode of communication: ClientBinaryHandler
* Added QSAdminAPI api for communicating to QsAdminServer.
* Added findAllClientByKey to QuickServer object.
* Improved ClientHandler, Secure configuration.
* New example: XmlAdder - A simple xml server that adds 2 integers.
* New example: PipeServer - A simple redirection server.... read more
The much awaited version 1.4.0 beta of QuickServer, open source Java library/framework for quick creation of robust and multi-threaded, multi-client TCP server applications released.
What's New in 1.4.0 beta ?
---------------------
* Added Secure Mode for QuickServer: SSL, TLS
* Added ability negotiating secure connection over normal tcp connection.
* Added init server hooks to QuickServer.
* Added BINARY mode of communication: ClientBinaryHandler
* Added QSAdminAPI api for communicating to QsAdminServer.
* New example: XmlAdder - A simple xml server that adds 2 integers.
* New example: PipeServer - A simple redirection server.... read more
Version 1.3.3 of QuickServer, the java library/framework for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
Whats New in 1.3.3 ?
---------------------
* Added IP Filter based access constraint for clients.
* Added ability to loading/reloading application jar from xml.
* Added support for loading application configuration from the
QuickServer's xml configuration file.
* Added startup, shutdown process hooks to QuickServer.
* Added reaper thread: GhostSocketReaper.
* Added <security-manager> node to specify SecurityManager for JVM from XML.... read more
Version 1.3.2 of QuickServer, the java library/framework for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
Whats New in 1.3.2 ?
---------------------
* Added plugin ability to QSAdminGUI : PluginPanel
* Added "Server Statistics View" Plugin to QSAdminGUI
* Added QSAdmin Shell - A command shell
* Added support for loading application configuration from the
QuickServer's xml configuration file.
* Added ability to turn off FINE logging of all data sent in/out of server.... read more
Version 1.3.1 of QuickServer, the java library for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
Whats New in 1.3.1 ?
---------------------
* Added BYTE mode of communication.
* Added a new interface ClientIdentifiable and methods to identify and search a
client.
* Added new method to ClientHandler to find the time when Client was assigned
to ClientHandler.
* New example: ChatServer - Send and receive text b/w connected clients
* Improved logging in ClientHandler to log all outgoing and incoming
communications at FINE level.
* Improved error detection for Authenticator implementations.... read more
Stable version 1.3 of QuickServer, the java library for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
Whats New in 1.3 ?
---------------------
* New authentication class added QuickAuthenticator and Authenticator.
* Authentication is now can have single or multiple instance.
* GUI for remote administration. (xml Based)
* New format for xml configuration.
* Object Pools added for reuse of Threads and Objects.
* XML Based JDBC Mapping... read more
All new and powerful version 1.3 of QuickServer, the java library for quick creation of robust and multi-threaded, multi-client TCP server applications released.
Whats New in 1.3 ?
---------------------
* New authentication class added QuickAuthenticator and Authenticator.
* Authentication is now can have single or multiple instance.
* GUI for remote administration. (xml Based)
* New format for xml configuration.
* Object Pools added for reuse of Threads and Objects.
* Support for xml Based JDBC Mapping. ... read more
Stable version 1.2 of QuickServer, the java library for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
Whats New in 1.2 ?
---------------------
* Released Developer Guide v 0.1 (Pre-Release)
* New improved architecture diagram.
* Logging added to QuickServer.
* Support for sending java objects in QuickServer.
* Pluggable command handler for QSAdminServer - CommandPlugin
* Support for xml configuration.
* New example: DateServer - Sends and receive java objects.
* ObjectCleaner thread is a daemon thread now.
* Support for Service Configurator pattern.... read more
All new and powerful version 1.1 of QuickServer, the java library for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
Whats New in 1.2 ?
---------------------
* Logging added to QuickServer.
* Support for sending java objects in QuickServer.
* Pluggable command handler for QSAdminServer - CommandPlugin
* Support for xml configuration.
* New example: DateServer - Sends and receive java objects.
* ObjectCleaner thread is a daemon thread now.
* Support for Service Configurator pattern.... read more
All new and powerful version 1.1 of QuickServer, the java library for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
New features include
* JUnit tests added to QuickServer
* New example : FTPServer - A basic ftp server.
* Set maximum no of client that can connect
* Admin port & protocol for remote controlling of the server
* New example: CmdServer - A remote cmd.exe shell ... read more
All new and powerful version 1.1 of QuickServer, the java library for quick and robust creation of a multi-threaded, multi-client TCP server applications released.
New features include
* Set maximum no of client that can connect
* Admin port & protocol for remote controlling of the server
* New example: CmdServer - A remote cmd.exe shell