Wittyshare  0.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
The Architecture of the CMS

Architecture

Architecture

The Wittyshare architecture was built to allow the use of a separate daemon for managing the tree operations. This daemon can be turned off and the local version of the tree used instead

The WsUser class is used as an interface between the user and the tree operations. The WsUser class represents one user and in instanciated when a client connects. This class contains the main methods for accessing the tree. WsUser contains an object WsAbstractFsClient that is an Abstract class that will be instanciated differently whether the WsFsDaemon is used or not.

When the WsFsDaemon is used (the daemon option is set to true), the WsAbstractFsClient will be instanciated as a WsFsDaemonClient and a WsFsTreeClient if the daemon is not used.

However the use of the daemon is transparent to the user. Once the WsFsAbtractFsClient object is instanciated, the WsUser is only calling the methods of this object.

If the daemon is used, WsFsDaemonClient is used and will send and receive requests to/from the WsFsDaemon.

Depending on the request it will use a technique to serialize and deserialize the request (see WsTreeDeserializer and WsTreeSerializer)

The data is sent in Json format between the client and the daemon. The data is compressed if compression is enabled (see enable_compression) in the configuration file

If the daemon is not used, the WsFsTreeClient will act directly on the WsFileSystemTree