PlutoBaS-devel

From LinuxMCE
Revision as of 11:18, 19 March 2007 by Jerry finn (Talk | contribs)

Jump to: navigation, search

Application: Pluto Backup & Share - developed in C#/ VS2003

Components:

  PlutoBaSInstaller - used to install the applications
  PlutoBaS - main application used to configure backup tasks and media shares
  PlutoBackupSrv - backup service - programmatically executing the backup tasks
  PlutoBaSMan - taskbar application for controlling the backup service
  PlutoBaSCtrls - custom visual controls

PlutoBaSInstaller:

 - Standard setup application
 - Files included for deployment:
     - PlutoBaS.exe
     - PlutoBaSMan.exe
     - PlutoBaSSrv.exe
     - InstallUtil.exe - used for registering the service
     - MessageSend.exe, pthreadVC.dll - used for sending messages to DCERouter
 - Registry keys - HKLM\Software\Pluto :
     - LoggingPath
     - RouterIP
     - TaskDBPath

PlutoBaS:

 - Main components
     - BackupTask - includes task management ( tasks list, task configuration - including saving itto a xml file ) 
     - BackupDevices - includes Device Configuration( including reading&writing to xml
     - Backup - main functions for backup and restore
     - FolderInfo - includes disk folders management class ( paths, file filters )
     - MediaShares - main class for creating/removing media shares and saving shares configuration to a xml file )
     - NetAccess - classes for: 
           - Share Management( creating/removing local shares, connecting to remote shares )
           - User Management( adding/deleting users - used for creating pluto_user )
           - Shell Commnads ( sending commands to DCERouter using MessageSend )
           - Pluto Manager ( used for discovering DCERouter - by udp broadcast - and connecting to it )
     - TaskLogger - used for logging backup tasks into files
     - InterProcComm ( using Win32Security ) 
           - manages interprocess communication
           - used mainly in PlutoBaSSrv & PlutoMan
           - includes implementation for interprocess Events, Semaphores and MemoryMappedFiles

PlutoBaSCtrls:

 - FolderTreeView - tree for browsing through computer folders
 - EditableListBox - custom listbox with editable items
 - EditableCheckedListBox - custom checkedlistbox with editable items

PlutoBackupSrv:

 - PlutoBackupSrvInstaller - component for registering the service
 - BackupService - main service component ( loading tasks, stating&stopping backup them, communication with PlutoBaSMan )
 - BackupTaskThread - multithreaded component for backup ( every task is executed in a separate thread )
 - Pluto

PlutoBaSMan

 - main application - using InterprocComm to control the service