Difference between revisions of "PlutoBaS-devel"

From LinuxMCE
Jump to: navigation, search
Line 1: Line 1:
<table width="100%"> <tr><td bgcolor="#FFCFCF">This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007.  In general any information should apply to LinuxMCE.  However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.</td></tr> </table>Application: Pluto Backup & Share - developed in C#/ VS2003
+
Application: Pluto Backup & Share - developed in C#/ VS2003
  
 
Components:
 
Components:

Revision as of 11:18, 19 March 2007

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