Add infos into target window
[ryzomcore.git] / ryzom / server / src / general_utilities_service / saves_notes.txt
blob8a2e5e575cd77aedadee780f2cc845be50961c86
1 Module name:            Shard Saves Module
2 Short name:                     SAVES
3 Associated modules:     RS
4 Requires:                       Nothing
5 Syntax:                         ModulesAdd saves <shard name> <type> <directory>
6                                         - where <shard name> is the name of the shard that the saves are for
7                                         - where <type> is one of 'shard' or 'www' and gives the save type ('shard' is for character saves, guild saves, etc)
8                                         - where <directory> is the root directory for the save set
10 TODO
11 ----
12 - CShardSavesModule
13         void processMsgRegister(uint32 sender,CMsgSavesRegister& msgBody);
14         void processMsgUnregister(uint32 sender,CMsgSavesUnregister& msgBody);
15         void processMsgFileRequest(uint32 sender,CMsgSavesFileRequest& msgBody);
16         void processMsgUpload(uint32 sender,CMsgSavesUpload& msgBody);
17         void processMsgDelete(uint32 sender,CMsgSavesDelete& msgBody);
18         void processMsgDelete(uint32 sender,CMsgSavesMove& msgBody);
20 - CShardSavesManager
23 Description
24 -----------
25 This module allows other modules to access the save files for shards
26 the 'shard' or 'www' keywords determine the 
29 Implementation
30 --------------
31         class CShardSavesModule;                // a module representing the save set under a given root directory
32         class CShardSavesManager;               // singleton manager class for all of the local CShardSavesModule objects
34 CShardSavesModule
35         A dumb executor object
36         Each update perfoms a single operation chosen from:
37         - rescanning a directory for files and sending updates to all subscribers
38         - reading a file and sending it to the requestor
39         - sending a directory content listing to a requestor
41 CShardSavesManager
42         Responsible for limiting hard disk thashing by GUSes
43         Each tick allows n updates by cycling through the instantiated ShardSaves modules
46 SAVES Module Messages
47 ---------------------
48         CMsgSavesRegister               ()
49         CMsgSavesUnregister             ()
50         CMsgSavesFileRequest    (requestId,fileName)
51         CMsgSavesFileUpload             (requestId,fileName,fileBody)
52         CMsgSavesFileDelete             (requestId,fileName)
53         CMsgSavesFileMove               (requestId,fileName,destination)