# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1286145519 -10800 # Node ID 62b719e049f4bfac51edf2b3ac7526ce8903d4f4 # Parent 63cf70d3ecd8735de156bde6be78d174385baf85 Revision: 201037 Kit: 201039 diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test.ini --- a/backupandrestore/backuptest/burtestserver/testscripts/test.ini Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test.ini Mon Oct 04 01:38:39 2010 +0300 @@ -17,14 +17,14 @@ IsPartial=0 BaseOnly=1 DriveList=c -ExcludeIDs=10281d18,101fdf81,2000b4d8,1028246f,1028312B,200286d2,101F51F2,10202BE9,101F99FB,100069CC,20021367,10003A73,101F401D,2002BCC0,1020383E +ExcludeIDs=10281d18,101fdf81,2000b4d8,1028246f,1028312B,200286d2,101F51F2,10202BE9,101F99FB,100069CC,20021367,10003A73,101F401D,2002BCC0,1020383E,20022F35,10207114 [BACKUP_RESTORE_0040] BackupDir=c:\BackupArchive\ IsPartial=0 BaseOnly=0 DriveList=c -ExcludeIDs=10281d18,101fdf81,2000b4d8,1028246f,1028312B,200286d2,101F51F2,10202BE9,101F99FB,100069CC,20021367,10003A73,101F401D,2002BCC0,1020383E +ExcludeIDs=10281d18,101fdf81,2000b4d8,1028246f,1028312B,200286d2,101F51F2,10202BE9,101F99FB,100069CC,20021367,10003A73,101F401D,2002BCC0,1020383E,20022F35,10207114 [BACKUP_RESTORE_0050] BackupDir=c:\BackupArchive\ diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test_activebackuprestore.script --- a/backupandrestore/backuptest/burtestserver/testscripts/test_activebackuprestore.script Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test_activebackuprestore.script Mon Oct 04 01:38:39 2010 +0300 @@ -34,9 +34,11 @@ //! @SYMTestActions Do BaseOnly active-backup for three data owners //! @SYMTestExpectedResults Backup succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0010 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0010 END_TESTCASE MTP-SBE-ACTIVEBACKUP-0010 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEBACKUP-0020 //! @SYMTestCaseID MTP-SBE-ACTIVEBACKUP-0020 //! @SYMTestCaseDesc Do Proxy active-backup for specified data owner @@ -46,9 +48,11 @@ //! @SYMTestActions Do Proxy active-backup for specified data owner //! @SYMTestExpectedResults Backup succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0020 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0020 END_TESTCASE MTP-SBE-ACTIVEBACKUP-0020 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEBACKUP-0030 //! @SYMTestCaseID MTP-SBE-ACTIVEBACKUP-0030 //! @SYMTestCaseDesc Do Incremental active-backup for specified data owner @@ -58,9 +62,11 @@ //! @SYMTestActions Do Incremental active-backup for specified data owner //! @SYMTestExpectedResults Backup succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0030 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0030 END_TESTCASE MTP-SBE-ACTIVEBACKUP-0030 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEBACKUP-0040 //! @SYMTestCaseID MTP-SBE-ACTIVEBACKUP-0040 //! @SYMTestCaseDesc Do active-backup for a data owner whose executable file is missing @@ -70,9 +76,11 @@ //! @SYMTestActions Do active-backup for a data owner whose executable file is missing //! @SYMTestExpectedResults Backup fails with error code 5 //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0040 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0040 END_TESTCASE MTP-SBE-ACTIVEBACKUP-0040 +DELAY 10000 + PRINT ---------------------------------------------- PRINT Test Active Restore PRINT ---------------------------------------------- @@ -86,9 +94,11 @@ //! @SYMTestActions Do BaseOnly active-restore for three data owners //! @SYMTestExpectedResults Restore succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0010 END_TESTCASE MTP-SBE-ACTIVERESTORE-0010 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVERESTORE-0020 //! @SYMTestCaseID MTP-SBE-ACTIVERESTORE-0020 //! @SYMTestCaseDesc Do Proxy active-restore for specified data owner @@ -98,9 +108,11 @@ //! @SYMTestActions Do Proxy active-restore for specified data owner //! @SYMTestExpectedResults Restore succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0020 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0020 END_TESTCASE MTP-SBE-ACTIVERESTORE-0020 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVERESTORE-0030 //! @SYMTestCaseID MTP-SBE-ACTIVERESTORE-0030 //! @SYMTestCaseDesc Do Incremental active-restore for specified data owner @@ -110,9 +122,11 @@ //! @SYMTestActions Do Incremental active-restore for specified data owner //! @SYMTestExpectedResults Restore succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0030 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0030 END_TESTCASE MTP-SBE-ACTIVERESTORE-0030 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVERESTORE-0040 //! @SYMTestCaseID MTP-SBE-ACTIVERESTORE-0040 //! @SYMTestCaseDesc Do active-restore for a data owner whose executable file is missing @@ -122,9 +136,11 @@ //! @SYMTestActions Do active-restore for a data owner whose executable file is missing //! @SYMTestExpectedResults Restore fails with error code 5 //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0040 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0040 END_TESTCASE MTP-SBE-ACTIVERESTORE-0040 +DELAY 10000 + PRINT ---------------------------------------------- PRINT Test Active Backup Async PRINT ---------------------------------------------- @@ -138,9 +154,11 @@ //! @SYMTestActions Do BaseOnly active-backup for three data owners asynchronously //! @SYMTestExpectedResults Backup succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0010 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0010 END_TESTCASE MTP-SBE-ACTIVEBACKUP-ASYNC-0010 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEBACKUP-ASYNC-0020 //! @SYMTestCaseID MTP-SBE-ACTIVEBACKUP-ASYNC-0020 //! @SYMTestCaseDesc Do Proxy active-backup for specified data owner asynchronously @@ -150,9 +168,11 @@ //! @SYMTestActions Do Proxy active-backup for specified data owner asynchronously //! @SYMTestExpectedResults Backup succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0020 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0020 END_TESTCASE MTP-SBE-ACTIVEBACKUP-ASYNC-0020 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEBACKUP-ASYNC-0030 //! @SYMTestCaseID MTP-SBE-ACTIVEBACKUP-ASYNC-0030 //! @SYMTestCaseDesc Do Incremental active-backup for specified data owner asynchronously @@ -162,9 +182,11 @@ //! @SYMTestActions Do Incremental active-backup for specified data owner asynchronously //! @SYMTestExpectedResults Backup succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0030 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0030 END_TESTCASE MTP-SBE-ACTIVEBACKUP-ASYNC-0030 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEBACKUP-ASYNC-0040 //! @SYMTestCaseID MTP-SBE-ACTIVEBACKUP-ASYNC-0040 //! @SYMTestCaseDesc Do active-backup asynchronously for a data owner whose executable file is missing @@ -174,9 +196,11 @@ //! @SYMTestActions Do active-backup asynchronously for a data owner whose executable file is missing //! @SYMTestExpectedResults Backup fails with error code 5 //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0040 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_BACKUP_0040 END_TESTCASE MTP-SBE-ACTIVEBACKUP-ASYNC-0040 +DELAY 10000 + PRINT ---------------------------------------------- PRINT Test Active Restore Async PRINT ---------------------------------------------- @@ -190,9 +214,11 @@ //! @SYMTestActions Do BaseOnly active-restore for three data owners asynchronously //! @SYMTestExpectedResults Restore succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0010 END_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0010 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0020 //! @SYMTestCaseID MTP-SBE-ACTIVERESTORE-ASYNC-0020 //! @SYMTestCaseDesc Do Proxy active-restore for specified data owner asynchronously @@ -202,9 +228,11 @@ //! @SYMTestActions Do Proxy active-restore for specified data owner asynchronously //! @SYMTestExpectedResults Restore succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0020 +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0020 END_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0020 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0030 //! @SYMTestCaseID MTP-SBE-ACTIVERESTORE-ASYNC-0030 //! @SYMTestCaseDesc Do Incremental active-restore for specified data owner asynchronously @@ -214,9 +242,11 @@ //! @SYMTestActions Do Incremental active-restore for specified data owner asynchronously //! @SYMTestExpectedResults Restore succeeds //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0030 +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0030 END_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0030 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0040 //! @SYMTestCaseID MTP-SBE-ACTIVERESTORE-ASYNC-0040 //! @SYMTestCaseDesc Do active-restore asynchronously for a data owner whose executable file is missing @@ -226,5 +256,7 @@ //! @SYMTestActions Do active-restore asynchronously for a data owner whose executable file is missing //! @SYMTestExpectedResults Restore fails with error code 5 //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0040 -END_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0040 \ No newline at end of file +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini ACTIVE_RESTORE_0040 +END_TESTCASE MTP-SBE-ACTIVERESTORE-ASYNC-0040 + +DELAY 10000 \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test_backupinvalid.script --- a/backupandrestore/backuptest/burtestserver/testscripts/test_backupinvalid.script Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test_backupinvalid.script Mon Oct 04 01:38:39 2010 +0300 @@ -33,9 +33,11 @@ //! @SYMTestActions Specify an invlid id and try backup it. //! @SYMTestExpectedResults SBE can't found and do nothing //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0050 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0050 END_TESTCASE MTP-SBE-BACKUPINVALIDIDS-0000 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPINVALIDDRIVE-0001 //! @SYMTestCaseID MTP-SBE-BACKUPINVALIDDRIVE-0001 //! @SYMTestCaseDesc Invalid drive test @@ -45,9 +47,11 @@ //! @SYMTestActions Specify an invalid drive for a data owner to backup //! @SYMTestExpectedResults SBE backup operation return -1 //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0060 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0060 END_TESTCASE MTP-SBE-BACKUPINVALIDDRIVE-0001 +DELAY 10000 + RUN_UTILS MkDir c:\private\12345678\ RUN_UTILS CopyFile z:\testdata\scripts\sbetestdata\backup_registration.xml c:\private\12345678\backup_registration.xml START_TESTCASE MTP-SBE-BACKUPINVALIDDIR-0002 @@ -59,9 +63,11 @@ //! @SYMTestActions Specify an invalid directory for a data owner to backup //! @SYMTestExpectedResults SBE can't found and do nothing //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0070 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0070 END_TESTCASE MTP-SBE-BACKUPINVALIDDIR-0002 +DELAY 10000 + RUN_UTILS DeleteDirectory c:\private\12345678\ RUN_UTILS DeleteDirectory c:\BackupArchive\ RUN_UTILS DeleteDirectory c:\private\0AB7E58F\ @@ -77,9 +83,11 @@ //! @SYMTestActions Specify an invalid proxy manager in register file for a data owner to backup //! @SYMTestExpectedResults SBE can't found and do nothing //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0075 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0075 END_TESTCASE MTP-SBE-BACKUPINVALIDPROXY-0003 +DELAY 10000 + RUN_UTILS DeleteDirectory c:\private\0AB7E58F\ RUN_UTILS DeleteDirectory c:\BackupArchive\ RUN_UTILS MkDir c:\private\0AB7E58F\ @@ -94,9 +102,11 @@ //! @SYMTestActions Backup a read only file //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0075 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0075 END_TESTCASE MTP-SBE-BACKUPREADONLY-0004 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREREADONLY-0005 //! @SYMTestCaseID MTP-SBE-RESTOREREADONLY-0005 //! @SYMTestCaseDesc Test readonly file restore @@ -106,6 +116,8 @@ //! @SYMTestActions Restore a readonly file, but the origin file exist //! @SYMTestExpectedResults -21 //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0077 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0077 END_TESTCASE MTP-SBE-RESTOREREADONLY-0005 RUN_UTILS DeleteDirectory c:\private\0AB7E58F\ + +DELAY 10000 \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test_backuppackage.script --- a/backupandrestore/backuptest/burtestserver/testscripts/test_backuppackage.script Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test_backuppackage.script Mon Oct 04 01:38:39 2010 +0300 @@ -53,10 +53,12 @@ //! @SYMTestExpectedResults 1. The success message displayed in the console. //! 2. No any error or warning message displayed in the console. //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0010 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0010 END_TESTCASE MTP-SBE-BACKUPPACKAGE-0000 RUN_UTILS DeleteFile C:\private\81000014\private_file1.dat +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREBACKUPPACKAGE-0001 //! @SYMTestCaseID MTP-SBE-RESTOREBACKUPPACKAGE-0001 //! @SYMTestCaseDesc Restore big data which owner is install application @@ -68,10 +70,12 @@ //! 2. The executable files are not be restored. //! 3. The private files are not be restored. //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0020 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0020 END_TESTCASE MTP-SBE-RESTOREBACKUPPACKAGE-0001 RUN_UTILS DeleteFile C:\private\81000014\private_file1.dat +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPPACKAGE-0002 //! @SYMTestCaseID MTP-SBE-BACKUPPACKAGE-0002 //! @SYMTestCaseDesc Backup DLLs data which are installed as part of package @@ -82,9 +86,11 @@ //! @SYMTestExpectedResults 1. The success message displayed in the console. //! 2. No any error or warning message displayed in the console. //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0030 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0030 END_TESTCASE MTP-SBE-BACKUPPACKAGE-0002 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREBACKUPPACKAGE-0003 //! @SYMTestCaseID MTP-SBE-RESTOREBACKUPPACKAGE-0003 //! @SYMTestCaseDesc Backup DLLs data which are installed as part of package @@ -96,9 +102,11 @@ //! 2. The executable files are not be restored. //! 3. The private files are not be restored. //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0040 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0040 END_TESTCASE MTP-SBE-RESTOREBACKUPPACKAGE-0003 +DELAY 10000 + RUN_UTILS DeleteFile C:\public\81113002\public_file1.dat RUN_UTILS DeleteFile C:\public\81113002\public_file2.dat RUN_UTILS DeleteFile C:\public\test\private_file1.dat diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test_backuprestore.script --- a/backupandrestore/backuptest/burtestserver/testscripts/test_backuprestore.script Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test_backuprestore.script Mon Oct 04 01:38:39 2010 +0300 @@ -33,9 +33,11 @@ //! @SYMTestActions Specify ini file for base and partial backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 END_TESTCASE MTP-SBE-BACKUPPARTIALBASE-0000 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREPARTIALBASE-0001 //! @SYMTestCaseID MTP-SBE-RESTOREPARTIALBASE-0001 //! @SYMTestCaseDesc restore with partial and base @@ -45,9 +47,11 @@ //! @SYMTestActions Specify ini file for base and partial restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 END_TESTCASE MTP-SBE-RESTOREPARTIALBASE-0001 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPPARTIAL-0002 //! @SYMTestCaseID MTP-SBE-BACKUPPARTIAL-0002 //! @SYMTestCaseDesc Backup with partial and increament @@ -57,9 +61,11 @@ //! @SYMTestActions Specify ini file for increament and partial backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 END_TESTCASE MTP-SBE-BACKUPPARTIAL-0002 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREPARTIAL-0003 //! @SYMTestCaseID MTP-SBE-RESTOREPARTIAL-0003 //! @SYMTestCaseDesc Restore with partial and increament @@ -69,9 +75,11 @@ //! @SYMTestActions Specify ini file for increament and partial restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 END_TESTCASE MTP-SBE-RESTOREPARTIAL-0003 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPFULLBASE-0004 //! @SYMTestCaseID MTP-SBE-BACKUPFULLBASE-0004 //! @SYMTestCaseDesc Backup with full and base @@ -81,9 +89,11 @@ //! @SYMTestActions Specify ini file for full and base backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 END_TESTCASE MTP-SBE-BACKUPFULLBASE-0004 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREFULLBASE-0005 //! @SYMTestCaseID MTP-SBE-RESTOREFULLBASE-0005 //! @SYMTestCaseDesc Restore with full and base @@ -93,9 +103,11 @@ //! @SYMTestActions Specify ini file for full and base restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 END_TESTCASE MTP-SBE-RESTOREFULLBASE-0005 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPFULL-0006 //! @SYMTestCaseID MTP-SBE-BACKUPFULL-0006 //! @SYMTestCaseDesc Backup with full and increament @@ -105,9 +117,11 @@ //! @SYMTestActions Specify ini file for full and increament backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 END_TESTCASE MTP-SBE-BACKUPFULL-0006 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREFULL-0007 //! @SYMTestCaseID MTP-SBE-RESTOREFULL-0007 //! @SYMTestCaseDesc Restore with full and increament @@ -117,9 +131,11 @@ //! @SYMTestActions Specify ini file for full and increament restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 END_TESTCASE MTP-SBE-RESTOREFULL-0007 +DELAY 10000 + RUN_UTILS DeleteFile c:\sbetest1.txt RUN_UTILS DeleteFile c:\sbetest2.txt RUN_UTILS CopyFile z:\testdata\scripts\sbetestdata\increamenttest.xml c:\sbetest1.txt @@ -135,9 +151,11 @@ //! @SYMTestActions Do passive backup for a data owner which has a very complex backup registration file //! @SYMTestExpectedResults Backup succeeds //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0100 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0100 END_TESTCASE MTP-SBE-BACKUPPARTIALBASE-0008 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPPARTIALBASE-0010 //! @SYMTestCaseID MTP-SBE-BACKUPPARTIALBASE-0010 //! @SYMTestCaseDesc Do passive backup for a data owner with a invalid drive list @@ -147,9 +165,11 @@ //! @SYMTestActions Do passive backup for a data owner with a invalid drive list //! @SYMTestExpectedResults Backup fails with error code -1 //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0110 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0110 END_TESTCASE MTP-SBE-BACKUPPARTIALBASE-0010 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPPARTIALBASE-0012 //! @SYMTestCaseID MTP-SBE-BACKUPPARTIALBASE-0012 //! @SYMTestCaseDesc Do passive backup with abnormal operation sequence @@ -159,5 +179,7 @@ //! @SYMTestActions Do passive backup with abnormal operation sequence //! @SYMTestExpectedResults Backup fails with error code -21 //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestBackup2 z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0120 +RUN_TEST_STEP 300 BURTestServer TestBackup2 z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0120 END_TESTCASE MTP-SBE-BACKUPPARTIALBASE-0012 + +DELAY 10000 \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test_backuprestoreasync.script --- a/backupandrestore/backuptest/burtestserver/testscripts/test_backuprestoreasync.script Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test_backuprestoreasync.script Mon Oct 04 01:38:39 2010 +0300 @@ -34,9 +34,11 @@ //! @SYMTestActions Specify ini file for base and partial backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 END_TESTCASE MTP-SBE-BACKUPPARTIALBASEASYNC-0000 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREPARTIALBASEASYNC-0001 //! @SYMTestCaseID MTP-SBE-RESTOREPARTIALBASEASYNC-0001 //! @SYMTestCaseDesc restore with partial and base @@ -46,9 +48,11 @@ //! @SYMTestActions Specify ini file for base and partial restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0010 END_TESTCASE MTP-SBE-RESTOREPARTIALBASEASYNC-0001 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPPARTIALASYNC-0002 //! @SYMTestCaseID MTP-SBE-BACKUPPARTIALASYNC-0002 //! @SYMTestCaseDesc Backup with partial and increament @@ -58,9 +62,11 @@ //! @SYMTestActions Specify ini file for increament and partial backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 END_TESTCASE MTP-SBE-BACKUPPARTIALASYNC-0002 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREPARTIALASYNC-0003 //! @SYMTestCaseID MTP-SBE-RESTOREPARTIALASYNC-0003 //! @SYMTestCaseDesc Restore with partial and increament @@ -70,9 +76,11 @@ //! @SYMTestActions Specify ini file for increament and partial restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0020 END_TESTCASE MTP-SBE-RESTOREPARTIALASYNC-0003 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPFULLBASEASYNC-0004 //! @SYMTestCaseID MTP-SBE-BACKUPFULLBASEASYNC-0004 //! @SYMTestCaseDesc Backup with full and base @@ -82,9 +90,11 @@ //! @SYMTestActions Specify ini file for full and base backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 END_TESTCASE MTP-SBE-BACKUPFULLBASEASYNC-0004 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREFULLBASEASYNC-0005 //! @SYMTestCaseID MTP-SBE-RESTOREFULLBASEASYNC-0005 //! @SYMTestCaseDesc Restore with full and base @@ -94,9 +104,11 @@ //! @SYMTestActions Specify ini file for full and base restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0030 END_TESTCASE MTP-SBE-RESTOREFULLBASEASYNC-0005 +DELAY 10000 + START_TESTCASE MTP-SBE-BACKUPFULLASYNC-0006 //! @SYMTestCaseID MTP-SBE-BACKUPFULLASYNC-0006 //! @SYMTestCaseDesc Backup with full and increament @@ -106,9 +118,11 @@ //! @SYMTestActions Specify ini file for full and increament backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 +RUN_TEST_STEP 300 BURTestServer TestBackupAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 END_TESTCASE MTP-SBE-BACKUPFULLASYNC-0006 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREFULLASYNC-0007 //! @SYMTestCaseID MTP-SBE-RESTOREFULLASYNC-0007 //! @SYMTestCaseDesc Restore with full and increament @@ -118,5 +132,7 @@ //! @SYMTestActions Specify ini file for full and increament restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 -END_TESTCASE MTP-SBE-RESTOREFULLASYNC-0007 \ No newline at end of file +RUN_TEST_STEP 300 BURTestServer TestRestoreAsync z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0040 +END_TESTCASE MTP-SBE-RESTOREFULLASYNC-0007 + +DELAY 10000 \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test_increament.script --- a/backupandrestore/backuptest/burtestserver/testscripts/test_increament.script Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test_increament.script Mon Oct 04 01:38:39 2010 +0300 @@ -40,9 +40,11 @@ //! @SYMTestActions Specify 0AB7E58F need be backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0080 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0080 END_TESTCASE MTP-SBE-BACKUPBASE-0000 +DELAY 10000 + RUN_UTILS DeleteFile c:\private\0AB7E58F\needbackup.xml RUN_UTILS CopyFile z:\testdata\scripts\sbetestdata\testbigfile.dat c:\private\0AB7E58F\needbackup.xml RUN_UTILS MakeReadWrite c:\private\0AB7E58F\needbackup.xml @@ -56,9 +58,11 @@ //! @SYMTestActions Specify 0AB7E58F need be backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0090 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0090 END_TESTCASE MTP-SBE-BACKUPINCREAMENT-0010 +DELAY 10000 + RUN_UTILS DeleteFile c:\publicbackup.xml RUN_UTILS DeleteFile c:\private\0AB7E58F\needbackup.xml START_TESTCASE MTP-SBE-RESTOREINCREAMENT-0020 @@ -70,9 +74,11 @@ //! @SYMTestActions Specify 0AB7E58F need be increament restore //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0090 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0090 END_TESTCASE MTP-SBE-RESTOREINCREAMENT-0020 +DELAY 10000 + RUN_UTILS DeleteFile c:\private\0AB7E58F\needbackup.xml RUN_UTILS DeleteFile c:\BackupArchive\AB7E58F\C\Passive\Base\data.bkp START_TESTCASE MTP-SBE-INVALIDDATARESTORE-0030 @@ -84,9 +90,11 @@ //! @SYMTestActions Delete some data store data and try restore //! @SYMTestExpectedResults no error and SBE do nothing //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0090 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini BACKUP_RESTORE_0090 END_TESTCASE MTP-SBE-INVALIDDATARESTORE-0030 +DELAY 10000 + RUN_UTILS DeleteDirectory c:\private\0AB7E58F\ START_TESTCASE MTP-SBE-ACTIVEBASEBACKUP-0040 //! @SYMTestCaseID MTP-SBE-ACTIVEBASEBACKUP-0040 @@ -97,9 +105,11 @@ //! @SYMTestActions Specify active data owner need be backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0010 END_TESTCASE MTP-SBE-ACTIVEBASEBACKUP-0040 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEINCBACKUP-0050 //! @SYMTestCaseID MTP-SBE-ACTIVEINCBACKUP-0050 //! @SYMTestCaseDesc Increament backup an active data owner @@ -109,9 +119,11 @@ //! @SYMTestActions Specify active data owner need be backup //! @SYMTestExpectedResults no error //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0020 +RUN_TEST_STEP 300 BURTestServer TestBackup z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0020 END_TESTCASE MTP-SBE-ACTIVEINCBACKUP-0050 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEBASERESTORE-0060 //! @SYMTestCaseID MTP-SBE-ACTIVEBASERESTORE-0060 //! @SYMTestCaseDesc Base restore @@ -120,9 +132,11 @@ //! @SYMTestPriority High //! @SYMTestActions Specify the active data owner need be base restore //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0010 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0010 END_TESTCASE MTP-SBE-ACTIVEBASERESTORE-0060 +DELAY 10000 + START_TESTCASE MTP-SBE-ACTIVEINCRESTORE-0070 //! @SYMTestCaseID MTP-SBE-ACTIVEINCRESTORE-0070 //! @SYMTestCaseDesc Increament restore @@ -131,5 +145,7 @@ //! @SYMTestPriority High //! @SYMTestActions Specify the active data owner need be increament restore //! @SYMTestType CIT -RUN_TEST_STEP 500 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0020 -END_TESTCASE MTP-SBE-ACTIVEINCRESTORE-0070 \ No newline at end of file +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini INC_BACKUP_RESTORE_0020 +END_TESTCASE MTP-SBE-ACTIVEINCRESTORE-0070 + +DELAY 10000 \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 backupandrestore/backuptest/burtestserver/testscripts/test_restorepackage.script --- a/backupandrestore/backuptest/burtestserver/testscripts/test_restorepackage.script Fri Sep 17 08:34:51 2010 +0300 +++ b/backupandrestore/backuptest/burtestserver/testscripts/test_restorepackage.script Mon Oct 04 01:38:39 2010 +0300 @@ -37,9 +37,11 @@ //! 2. The name and size of private files are same like after installing application. //! 3. The public files don't be restored. //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0020 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0020 END_TESTCASE MTP-SBE-RESTOREBACKUPPACKAGE-0000 +DELAY 10000 + START_TESTCASE MTP-SBE-RESTOREBACKUPPACKAGE-0001 //! @SYMTestCaseID MTP-SBE-RESTOREBACKUPPACKAGE-0001 //! @SYMTestCaseDesc Backup DLLs data which are installed as part of package @@ -51,8 +53,10 @@ //! 2. The name and size of DLLs are same like after installing application. //! 3. The public files don't be restored. //! @SYMTestType CIT -RUN_TEST_STEP 100 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0040 +RUN_TEST_STEP 300 BURTestServer TestRestore z:\testdata\scripts\sbetestdata\test.ini PACKAGE_0040 END_TESTCASE MTP-SBE-RESTOREBACKUPPACKAGE-0001 RUN_PROGRAM 900 swiconsole /u /uid 0x8111300b /pkg "big exe for backup" /vendor "Unique Vendor Name" /optimal RUN_PROGRAM 1000 swiconsole /u /uid 0x81113002 /pkg "tswinocapability" /vendor "Symbian" /optimal + +DELAY 10000 \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 layers.sysdef.xml --- a/layers.sysdef.xml Fri Sep 17 08:34:51 2010 +0300 +++ b/layers.sysdef.xml Mon Oct 04 01:38:39 2010 +0300 @@ -81,6 +81,11 @@ + + + + + - \ No newline at end of file + diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/group/bld.inf --- a/mtpdataproviders/mtpimagedp/group/bld.inf Fri Sep 17 08:34:51 2010 +0300 +++ b/mtpdataproviders/mtpimagedp/group/bld.inf Mon Oct 04 01:38:39 2010 +0300 @@ -20,8 +20,6 @@ #if !defined(GCCXML) // NO GCCXML -#include "../mediasyncserver/group/bld.inf" - PRJ_PLATFORMS DEFAULT diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/bwins/rmediasyncserveru.def --- a/mtpdataproviders/mtpimagedp/mediasyncserver/bwins/rmediasyncserveru.def Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -EXPORTS - ?Close@RMediaSyncServer@@QAEXXZ @ 1 NONAME ; void RMediaSyncServer::Close(void) - ?DisableMonitor@RMediaSyncServer@@QAEHXZ @ 2 NONAME ; int RMediaSyncServer::DisableMonitor(void) - ?EnableMonitor@RMediaSyncServer@@QAEHXZ @ 3 NONAME ; int RMediaSyncServer::EnableMonitor(void) - ?HasNext@CMediaSyncDataReader@@QAEHXZ @ 4 NONAME ; int CMediaSyncDataReader::HasNext(void) - ?NeedFullSync@RMediaSyncServer@@QAEHAAH@Z @ 5 NONAME ; int RMediaSyncServer::NeedFullSync(int &) - ?GetChangesL@RMediaSyncServer@@QAEXAAPAVCMediaSyncDataReader@@AAHAAVTRequestStatus@@H@Z @ 6 NONAME ; void RMediaSyncServer::GetChangesL(class CMediaSyncDataReader * &, int &, class TRequestStatus &, int) - ??0RMediaSyncServer@@QAE@XZ @ 7 NONAME ; RMediaSyncServer::RMediaSyncServer(void) - ?Connect@RMediaSyncServer@@QAEHXZ @ 8 NONAME ; int RMediaSyncServer::Connect(void) - ?Count@CMediaSyncDataReader@@QAEHXZ @ 9 NONAME ; int CMediaSyncDataReader::Count(void) - ?RemoveAllRecords@RMediaSyncServer@@QAEXXZ @ 10 NONAME ; void RMediaSyncServer::RemoveAllRecords(void) - ??1CMediaSyncDataReader@@UAE@XZ @ 11 NONAME ; CMediaSyncDataReader::~CMediaSyncDataReader(void) - ?GetNextL@CMediaSyncDataReader@@QAEXAAKAAEAAVTPtr16@@@Z @ 12 NONAME ; void CMediaSyncDataReader::GetNextL(unsigned long &, unsigned char &, class TPtr16 &) - ?Shutdown@RMediaSyncServer@@QAEXXZ @ 13 NONAME ; void RMediaSyncServer::Shutdown(void) - ?Startup@RMediaSyncServer@@QAEHXZ @ 14 NONAME ; int RMediaSyncServer::Startup(void) - ?ClearFullSync@RMediaSyncServer@@QAEHXZ @ 15 NONAME ; int RMediaSyncServer::ClearFullSync(void) - diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/eabi/rmediasyncserveru.def --- a/mtpdataproviders/mtpimagedp/mediasyncserver/eabi/rmediasyncserveru.def Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -EXPORTS - _ZN16RMediaSyncServer11GetChangesLERP20CMediaSyncDataReaderRiR14TRequestStatusi @ 1 NONAME - _ZN16RMediaSyncServer12NeedFullSyncERi @ 2 NONAME - _ZN16RMediaSyncServer13ClearFullSyncEv @ 3 NONAME - _ZN16RMediaSyncServer13EnableMonitorEv @ 4 NONAME - _ZN16RMediaSyncServer14DisableMonitorEv @ 5 NONAME - _ZN16RMediaSyncServer16RemoveAllRecordsEv @ 6 NONAME - _ZN16RMediaSyncServer5CloseEv @ 7 NONAME - _ZN16RMediaSyncServer7ConnectEv @ 8 NONAME - _ZN16RMediaSyncServer7StartupEv @ 9 NONAME - _ZN16RMediaSyncServer8ShutdownEv @ 10 NONAME - _ZN16RMediaSyncServerC1Ev @ 11 NONAME - _ZN16RMediaSyncServerC2Ev @ 12 NONAME - _ZN20CMediaSyncDataReader5CountEv @ 13 NONAME - _ZN20CMediaSyncDataReader7HasNextEv @ 14 NONAME - _ZN20CMediaSyncDataReader8GetNextLERmRhR6TPtr16 @ 15 NONAME - _ZN20CMediaSyncDataReaderD0Ev @ 16 NONAME - _ZN20CMediaSyncDataReaderD1Ev @ 17 NONAME - _ZN20CMediaSyncDataReaderD2Ev @ 18 NONAME - _ZTI20CMediaSyncDataReader @ 19 NONAME - _ZTV20CMediaSyncDataReader @ 20 NONAME - diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/group/bld.inf --- a/mtpdataproviders/mtpimagedp/mediasyncserver/group/bld.inf Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -PRJ_PLATFORMS -DEFAULT - -PRJ_MMPFILES -../group/rmediasyncserver.mmp -../group/mediasyncserver.mmp - -PRJ_EXPORTS -../group/mediasyncserver.iby /epoc32/rom/include/mediasyncserver.iby diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/group/mediasyncserver.iby --- a/mtpdataproviders/mtpimagedp/mediasyncserver/group/mediasyncserver.iby Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#ifndef MEDIASYNCSERVER_IBY -#define MEDIASYNCSERVER_IBY - -#include - -file=ABI_DIR\BUILD_DIR\rmediasyncserver.dll SHARED_LIB_DIR\rmediasyncserver.dll - -file=ABI_DIR\BUILD_DIR\mediasyncserver.exe PROGRAMS_DIR\mediasyncserver.exe - -#endif // MEDIASYNCSERVER_IBY \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/group/mediasyncserver.mmp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/group/mediasyncserver.mmp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include -#include "defaultcaps.hrh" - -TARGET mediasyncserver.exe -TARGETTYPE EXE -UID 0 0x20024331 -CAPABILITY CAP_SERVER -VENDORID VID_DEFAULT - -SOURCEPATH ../src -SOURCE main.cpp -SOURCE cmediasyncserver.cpp -SOURCE cmediasyncserversession.cpp -SOURCE cmediasyncobserver.cpp -SOURCE cmediasyncdatabase.cpp -SOURCE cmediasyncdatawriter.cpp - -USERINCLUDE ../inc - -MW_LAYER_SYSTEMINCLUDE - -LIBRARY euser.lib -LIBRARY edbms.lib -LIBRARY efsrv.lib -LIBRARY bafl.lib -LIBRARY mdeclient.lib -LIBRARY ecom.lib -LIBRARY flogger.lib // RFileLogger - -SMPSAFE \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/group/rmediasyncserver.mmp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/group/rmediasyncserver.mmp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include "defaultcaps.hrh" - -TARGET rmediasyncserver.dll -TARGETTYPE dll -UID 0x1000008d 0x20024332 -CAPABILITY CAP_CLIENT_DLL -VENDORID VID_DEFAULT - -MW_LAYER_SYSTEMINCLUDE -USERINCLUDE ../inc - -SOURCEPATH ../src -SOURCE rmediasyncserver.cpp - -LIBRARY euser.lib - -SMPSAFE \ No newline at end of file diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncdatabase.h --- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncdatabase.h Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,126 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#ifndef CMEDIASYNCDATABASE_H -#define CMEDIASYNCDATABASE_H - -#include -#include -#include -#include -#include - -class CMediaSyncDataWriter; -class CMdESession; - -class CMediaSyncDatabase : public CBase - { -public: - static CMediaSyncDatabase* NewL(RFs& aFs); - ~CMediaSyncDatabase(); - - /** - * Save MDS notification to database - * - * @param aObjectIdArray array of changed object id - * @param aChangeType type of change related with this changed object - * - */ - void SaveNotificationsL(const RArray& aObjectIdArray, TObserverNotificationType aType, CMdESession& aSession); - - /** - * Save MDS notification to database - * - * @param aObjectIdArray object IDs which are set to present statect - * @param aPresent state: ETrue - present or EFales - not present - * - */ - void SaveNotificationsL(const RArray& aObjectIdArray, TBool aPresent, CMdESession& aSession); - - /** - * Delete all notification record from database - * - */ - void RemoveAllNotificationsL(); - - /** - * Delete specific notificaion by object id - * - * @param aObjectId changed object id - * - */ - TBool RemoveNotificationL(TItemId aObjectId, TUint aType); - - /** - * Get notification record from database - * - * @param aResulWriter on return contains serialized results - * @param aIsFinished flag indicate whether all record has been fetched - */ - void FetchNotificationsL(CMediaSyncDataWriter& aResulWriter, TInt aMaxtFetchCount, TBool& aIsFinished); - - /** - * Rollback the current transaction - */ - void Rollback(); - - /** - * Check whether DB file is corrupt - */ - inline TBool IsMssDbCorrupt() { return iDbCorrupt; } - - /** - * Clear DB corrupt flag - */ - inline void ClearMssDbCorrupt() { iDbCorrupt = EFalse; } - -private: - CMediaSyncDatabase(RFs& aFs); - void ConstructL(); - void CreateTableL(const TDesC& aDbFile); - void CreateTabIndexL(); - - void SaveAddNotificationsL(const RArray& aObjectIdArray, CMdESession& aSession); - void SaveAndCheckWithUriL(const RArray& aObjectIdArray, TUint aType, CMdESession& aSession); - void SaveWithoutUriL(const RArray& aObjectIdArray, TUint aType); - void CompactDatabase(); - - TBool UpdateUriColumnL(TItemId aObjectId, TUint aType, const TDesC& aUri); - TBool OptimizeL(TItemId aObjectId, TUint aType, const TDesC& aUri); - inline TBool OptimizeL(TItemId aObjectId, TUint aType); - - static void RollbackTable(TAny* aTable); - -private: - /** - FLOGGER debug trace member variable. - */ - __FLOG_DECLARATION_MEMBER_MUTABLE; - - RFs& iFs; - RDbNamedDatabase iDatabase; - RDbTable iBatched; - TBool iDbCorrupt;// flag that indicate whether database is corrupt - TBool iSavePosition; - TDbBookmark iBookmark; - TInt iCompactCounter; - }; - -#endif /*CMEDIASYNCDATABASE_H*/ diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncdatawriter.h --- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncdatawriter.h Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,52 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#ifndef CMEDIASYNCDATAWRITER_H -#define CMEDIASYNCSERVERSESSION_H - -#include - -#include "cmediasyncserverdef.h" - -class CMediaSyncDataWriter : public CBase - { -public: - static CMediaSyncDataWriter* NewLC(const RChunk& aChunk); - /** virtual C++ destructor */ - ~CMediaSyncDataWriter(); - - TInt FreeSpaceBytes(); - void AppendEntryL(TUint32 aObjectId, TUint8 aType, const TDesC& aUri); - -private: - /** C++ constructor initialises */ - CMediaSyncDataWriter(); - void ConstructL(const RChunk& aChunk); - - inline void CheckBufferCapacityL(TInt aReqSize); - -private: - TDataHeaderInfo* iHeaderInfo; - TUint8* iWriteBase; - TInt iOffset; - TInt iMaxSize; - }; - -#endif /*CMEDIASYNCSERVERSESSION_H*/ diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncobserver.h --- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncobserver.h Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,86 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - - -#ifndef CMEDIASYNCOBSERVER_H -#define CMEDIASYNCOBSERVER_H - -#include "cmediasyncserverdef.h" -#include "cmediasyncdatabase.h" - -class CMediaSyncDatabase; - -class CMediaSyncObserver : public CBase, - public MMdESessionObserver, - public MMdEObjectObserver, - public MMdEObjectPresentObserver - { -public: - static CMediaSyncObserver* NewL(CMediaSyncDatabase* aDb); - virtual ~CMediaSyncObserver(); - - void SubscribeForChangeNotificationL(); - - void UnsubscribeForChangeNotificationL(); - -public: - // From MMdESessionObserver - void HandleSessionOpened(CMdESession& aSession, TInt aError); - void HandleSessionError(CMdESession& aSession, TInt aError); - - // From MMdEObjectObserver - void HandleObjectNotification(CMdESession& aSession, - TObserverNotificationType aType, - const RArray& aObjectIdArray); - - // From MMdEObjectPresentObserver - void HandleObjectPresentNotification(CMdESession& aSession, - TBool aPresent, - const RArray& aObjectIdArray); - -private: - - CMediaSyncObserver(CMediaSyncDatabase* aDb); - void ConstructL(); - - void HandleSessionCallback(TInt aError); - - void HandleObjectNotificationL(CMdESession& aSession, - TObserverNotificationType aType, - const RArray& aObjectIdArray); - - void HandleObjectPresentNotificationL(CMdESession& aSession, - TBool aPresent, - const RArray& aObjectIdArray); - -private: //not has ownership - /** - FLOGGER debug trace member variable. - */ - __FLOG_DECLARATION_MEMBER_MUTABLE; - - CMdESession* iSession; - CMediaSyncDatabase* iDb; - CActiveSchedulerWait* iSessionWait; - TInt iMdeSessionError; - TBool iSubscribed; - }; - -#endif /*CMEDIASYNCOBSERVER_H*/ diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncserver.h --- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncserver.h Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,70 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#ifndef CMEDIASYNCSERVER_H -#define CMEDIASYNCSERVER_H - -#include -#include - -#include "cmediasyncserverdef.h" - -class RFs; -class CMediaSyncObserver; -class CMediaSyncDatabase; - -class CMediaSyncServer : public CPolicyServer - { -public: - - ~CMediaSyncServer(); - - static void RunServerL(); - static CMediaSyncServer* NewLC(RFs& aFs); - - CMediaSyncObserver* MediaSyncObserver() const; - CMediaSyncDatabase* MediaSyncDatabase() const; - // void AddSession(); - // void DropSession(); - - TBool NeedFullSync(); - void ClearFullSyncFlag(); - -private: // From CPolicyServer - - CSession2* NewSessionL(const TVersion& aVersion, const RMessage2& aMessage) const; - -private: - - CMediaSyncServer(); - void ConstructL(RFs& aFs); - -private: //has ownership - /** - FLOGGER debug trace member variable. - */ - __FLOG_DECLARATION_MEMBER_MUTABLE; - - CMediaSyncDatabase* iDb; - CMediaSyncObserver* iObserver; - TBool iNeedFullSync; - }; - -#endif /*CMEDIASYNCSERVER_H*/ diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncserverdef.h --- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncserverdef.h Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#ifndef CMEDIASYNCSERVERDEF_H -#define CMEDIASYNCSERVERDEF_H - -#include - -__FLOG_STMT(_LIT8(KMSSSubsystem, "MSS");) - -_LIT(KFinderMSSName, "mediasyncserver*"); -_LIT(KMediaSyncServerName, "mediasyncserver"); - -_LIT(KMssDbName, "mediasync.db"); -_LIT(KImageTableName, "ImageStore"); -_LIT(KSQLCombinedIndex, "CombinedIndex"); -_LIT(KMssLockName, "mss.lock"); - -_LIT(KMediaSyncClientPanicCategory, "MediaSyncServ-Client"); - -// MIME definition -_LIT(KJpegMime, "image/jpeg"); - -const TInt KCustomSqlMaxLength = 512; - -const TInt KMediaSyncServerVersionMinor = 0; -const TInt KMediaSyncServerVersionMajor = 1; - -/** -The Media Sync Server process UID3. -*/ -const TUid KMediaSyncServerUid3 = {0x20024331}; - -enum TMediaSyncPanicsClient - { - ECannotStartServer, - EBadRequest, - ERequestPending - }; - -enum TMediaSyncClientMessage - { - EMediaSyncClientGetGSHHandle, - EMediaSyncClientGetChanges, - EMediaSyncClientRemoveAllRecords, - EMediaSyncClientEnableMonitor, - EMediaSyncClientDisableMonitor, - EMediaSyncClientNeedFullSync, - EMediaSyncClientClearFullSync, - EMediaSyncClientShutdown, - EMediaSyncClientNotSupported - }; - -const TUint KMssRemoval = 1; -const TUint KMssAddition = 2; -const TUint KMssChange = 3; -const TUint KMssPresent = 4; -const TUint KMssNotPresent = 5; - -class TDataHeaderInfo - { -public: - TInt iCount; - }; - -#endif /* CMEDIASYNCSERVERDEF_H */ diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncserversession.h --- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/cmediasyncserversession.h Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,69 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - - -#ifndef CMEDIASYNCSERVERSESSION_H -#define CMEDIASYNCSERVERSESSION_H - -#include -#include "cmediasyncserverdef.h" - -class CMediaSyncServer; - -class CMediaSyncServerSession : public CSession2 - { -public: - - CMediaSyncServerSession(CMediaSyncServer* aServer); - ~CMediaSyncServerSession(); - -public: // From CSession2 - void ServiceL(const RMessage2& aMessage); - -private: - - void DispatchMessageL(const RMessage2& aMessage); - - TInt GetChangesL(const RMessage2& aMessage); - - TInt GetFullSyncFlag(const RMessage2& aMessage); - - void AllocateGlobalSharedHeapL(const RMessage2& aMessage); - -private: //not have ownership - /** - FLOGGER debug trace member variable. - */ - __FLOG_DECLARATION_MEMBER_MUTABLE; - - CMediaSyncServer* iServer; - - /** - * Indicate wheter global shared heap has been allocated. - */ - TBool iAllocated; - - /** Global shared heap for passing large amounts of data between client and server - without having to use IPC */ - RChunk iGlobalSharedHeap; - }; - - -#endif /*CMEDIASYNCSERVERSESSION_H*/ diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/inc/rmediasyncserver.h --- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/rmediasyncserver.h Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,156 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#ifndef RMEDIASYNCSERVER_H_ -#define RMEDIASYNCSERVER_H_ - -#include -#include "cmediasyncserverdef.h" - -struct TMDSNotification - { - TUint objectId; - TUint8 changeType; - TUint8 activeSchedulerWait; - TUint8 reserved[2]; - }; - -class CMediaSyncDataReader : public CBase - { -public: - static CMediaSyncDataReader* NewL(const RChunk& aChunk); - /** virtual C++ destructor */ - IMPORT_C ~CMediaSyncDataReader(); - - IMPORT_C TInt Count(); - IMPORT_C TBool HasNext(); - IMPORT_C void GetNextL(TUint32& aObjectId, TUint8& aType, TPtr16& aUri); - -private: - /** C++ constructor initialises */ - CMediaSyncDataReader(); - void ConstructL(const RChunk& aChunk); - -private: - TDataHeaderInfo* iHeaderInfo; - TUint8* iReadBase; - TInt iOffset; - TInt iCurrentIdx; - }; - -class RMediaSyncServer : public RSessionBase - { -public: - IMPORT_C RMediaSyncServer(); - - /** - * Starts up MediaSyncServer - */ - IMPORT_C TInt Startup(); - - /** - * Shut down MediaSyncServer - */ - IMPORT_C void Shutdown(); - - /** - * Connects to MediaSyncServer, does not start up MediaSyncServer if it is - * not running - * @return KErrNone on successfull connection, - * KMediaSyncServerCleanupYourDatabase on successful connection, - * but the database needs to be resynched. The client must empty - * MTP database on the objects under its control before reading - * the change information since it will get everything that is in - * MDS. - * Systen wide error code if the connection fails. - */ - IMPORT_C TInt Connect(); - - /** - * Client should call this when it has detected that the databases are - * out of sync or that its database is corrupted. This will lead MSS to - * reread everything from the MDS after all the session were closed and - * at next connection Connect to return KMediaSyncServerCleanupYourDatabase - * to all dataproviders. - * @param aNeedFullSync ETrue if the MSS DB file is corrupt and the client need to fully sync with MDE - * @return KErrNone if successful, otherwise one of the system-wide error codes - * - */ - IMPORT_C TInt NeedFullSync(TBool& aNeedFullSync); - - /** - * Clear full synchronization flag from MSS - * @return KErrNone if successful, otherwise one of the system-wide error codes - * - */ - IMPORT_C TInt ClearFullSync(); - - /** - * This methods returns changes and their type. It only returns one type of - * changes at one call. Removals will be returned first then Additions, - * then Changes. The change information will be deleted from the DB when returned. - * If an object is both added, changed and then deleted between the - * connections, no information on it is returned, on the other hand if - * object is first deleted the object with a same name is added, both - * deletion and addition entry are available. - * - * Moving objects are treated as deletion and addition (keeping the metadata if possible) - * - * @param aNotifications on return the array of MDE notifications - * @param aIsFinished ETrue if this array is the last one for MDE notifications - * @param aStatus async call, KErrNone if changes received, - * KErrNotFound if there are no changes, - * otherwise another system wide error code. - * - */ - IMPORT_C void GetChangesL(CMediaSyncDataReader*& aDataReader, TBool& aIsFinished, TRequestStatus& aStatus, TInt aMaxFetchCount = 512); - - /** - * Remove all recodes from MSS - */ - IMPORT_C void RemoveAllRecords(); - - /** - * Enable MSS subscribes MDS notifications - * @return KErrNone if successful, otherwise one of the system-wide error codes - */ - IMPORT_C TInt EnableMonitor(); - - /** - * Disable MSS subscribes MDS notifications - * @return KErrNone if successful, otherwise one of the system-wide error codes - */ - IMPORT_C TInt DisableMonitor(); - - IMPORT_C void Close(); - -private: - TInt GetGlobalSharedHeapHandle(); - void RelaseGlobalSharedHeap(); - -private: - TBool iHasSharedHeap; - - /** Handle to the Global Shared Heap */ - RChunk iGlobalSharedHeap; - }; - - -#endif /*RMEDIASYNCSERVER_H_*/ diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncdatabase.cpp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncdatabase.cpp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,501 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include -#include -#include -#include - -#include "cmediasyncserverdef.h" -#include "cmediasyncdatabase.h" -#include "cmediasyncdatawriter.h" - -__FLOG_STMT(_LIT8(KComponent,"MediaSyncDatabase");) - -const TInt KCompactThreshold = 50; -const TInt KMaxRetryTimes = 3; -const TInt KDelayPeriod = 3 * 1000000; - -CMediaSyncDatabase* CMediaSyncDatabase::NewL(RFs& aFs) - { - CMediaSyncDatabase* self = new (ELeave) CMediaSyncDatabase(aFs); - CleanupStack::PushL(self); - self->ConstructL(); - CleanupStack::Pop(self); - return self; - } - -void CMediaSyncDatabase::ConstructL() - { - __FLOG_OPEN(KMSSSubsystem, KComponent); - __FLOG(_L8("CMediaSyncDatabase::ConstructL - Entry")); - - //Connect to the file server - User::LeaveIfError(iFs.Connect()); - - TFileName databasePath; - iFs.PrivatePath(databasePath); - TDriveUnit driveNum = RFs::GetSystemDrive(); - databasePath.Insert(0, driveNum.Name()); - databasePath.Append(KMssDbName); - - CreateTableL(databasePath); - - User::LeaveIfError(iBatched.Open(iDatabase, KImageTableName, RDbRowSet::EUpdatable)); - - __FLOG(_L8("CMediaSyncDatabase::ConstructL - Exit")); - } - -CMediaSyncDatabase::CMediaSyncDatabase(RFs& aFs) : - iFs(aFs), - iDbCorrupt(EFalse), - iSavePosition(EFalse) - { - } - -CMediaSyncDatabase::~CMediaSyncDatabase() - { - __FLOG(_L8("CMediaSyncDatabase::~CMediaSyncDatabase - Entry")); - - iBatched.Close(); - iDatabase.Close(); - - __FLOG(_L8("CMediaSyncDatabase::~CMediaSyncDatabase - Exit")); - __FLOG_CLOSE; - } - -void CMediaSyncDatabase::CreateTableL(const TDesC& aDbFile) - { - __FLOG(_L8("CMediaSyncDatabase::CreateTableL - Entry")); - - _LIT(KSQLCreateTable, "CREATE TABLE ImageStore(ObjectId UNSIGNED INTEGER, NotificationType UNSIGNED INTEGER, URI VARCHAR(255))"); - - TInt err = KErrNone; - if (!BaflUtils::FileExists(iFs, aDbFile)) - { - __FLOG(_L8("CreateTableL - Table ImageStore does not exist")); - - BaflUtils::EnsurePathExistsL(iFs, aDbFile); - - User::LeaveIfError(iDatabase.Create(iFs, aDbFile)); - User::LeaveIfError(iDatabase.Execute(KSQLCreateTable)); - TRAP_IGNORE(CreateTabIndexL()); - } - else - { - //Open the database - TBool recreateDbFile = EFalse; - err = iDatabase.Open(iFs, aDbFile); - if (err == KErrNone) - { - if (iDatabase.IsDamaged()) - { - recreateDbFile = (iDatabase.Recover() == KErrNone) ? EFalse : ETrue; - } - } - else - { - recreateDbFile = ETrue; - } - - if (recreateDbFile) - { - __FLOG_VA((_L8("CreateTableL - Open Table ImageStore failed: %d"), err)); - iDatabase.Close(); - - TInt retryCount = KMaxRetryTimes; - TInt result = KErrNone; - for (; retryCount > 0; retryCount--) - { - result = BaflUtils::DeleteFile(iFs, aDbFile); - if (result == KErrNone) - { - // We have succesfully delete corrupt database file - break; - } - else - { - User::After(KDelayPeriod); - } - } - - User::LeaveIfError(result); - User::LeaveIfError(iDatabase.Create(iFs, aDbFile)); - User::LeaveIfError(iDatabase.Execute(KSQLCreateTable)); - TRAP_IGNORE(CreateTabIndexL()); - iDbCorrupt = ETrue; - } - } - - __FLOG(_L8("CMediaSyncDatabase::CreateTableL - Exit")); - } - -void CMediaSyncDatabase::CreateTabIndexL() - { - __FLOG(_L8("CMediaSyncDatabase::CreateTabIndexL - Entry")); - - _LIT(KSQLCreateCombinedIndexText,"CREATE UNIQUE INDEX CombinedIndex on ImageStore (ObjectId, NotificationType)"); - User::LeaveIfError(iDatabase.Execute(KSQLCreateCombinedIndexText)); - - __FLOG(_L8("CMediaSyncDatabase::CreateTabIndexL - Exit")); - } - -void CMediaSyncDatabase::SaveNotificationsL(const RArray& aObjectIdArray, TObserverNotificationType aType, CMdESession& aSession) - { - iDatabase.Begin(); - - switch (aType) - { - case ENotifyAdd: - __FLOG(_L8("CMediaSyncDatabase::SaveNotificationsL Addition - Entry")); - SaveAddNotificationsL(aObjectIdArray, aSession); - break; - - case ENotifyRemove: - __FLOG(_L8("CMediaSyncDatabase::SaveNotificationsL Remove - Entry")); - SaveWithoutUriL(aObjectIdArray, KMssRemoval); - break; - - case ENotifyModify: - __FLOG(_L8("CMediaSyncDatabase::SaveNotificationsL Modify - Entry")); - SaveAndCheckWithUriL(aObjectIdArray, KMssChange, aSession); - break; - - default: - __FLOG_VA((_L8("SaveNotificationsL - Unknown argument: %d"), aType)); - User::Leave(KErrArgument); - break; - } - - iDatabase.Commit(); - - __FLOG(_L8("CMediaSyncDatabase::SaveNotificationsL - Exit")); - } - -inline TBool CMediaSyncDatabase::OptimizeL(TItemId aObjectId, TUint aType) - { - return OptimizeL(aObjectId, aType, KNullDesC); - } - -void CMediaSyncDatabase::Rollback() - { - __ASSERT_DEBUG(iDatabase.InTransaction(), User::Invariant()); - iDatabase.Rollback(); - } - -TBool CMediaSyncDatabase::OptimizeL(TItemId aObjectId, TUint aType, const TDesC& aUri) - { - __FLOG(_L8("CMediaSyncDatabase::OptimizeL - Entry")); - - TBool saveNotification = ETrue; - - switch (aType) - { - case KMssChange: - if ( UpdateUriColumnL(aObjectId, KMssAddition, aUri) || - UpdateUriColumnL(aObjectId, KMssChange, aUri) ) - { - saveNotification = EFalse;// ignore this update notification - } - __FLOG_VA((_L8("OptimizeL - KMssChange ObjectId: %u, Ignore saving: %d"), aObjectId, saveNotification)); - break; - - case KMssPresent: - if (RemoveNotificationL(aObjectId, KMssNotPresent)) - { - saveNotification = EFalse;// ignore this present notification - } - __FLOG_VA((_L8("OptimizeL - KMssPresent ObjectId: %u, Ignore saving: %d"), aObjectId, saveNotification)); - break; - - case KMssRemoval: - if (RemoveNotificationL(aObjectId, KMssAddition)) - { - saveNotification = EFalse;// ignore this removal notification - } - else - { - RemoveNotificationL(aObjectId, KMssChange); - } - __FLOG_VA((_L8("OptimizeL - KMssRemoval ObjectId: %u, Ignore saving: %d"), aObjectId, saveNotification)); - break; - - case KMssNotPresent: - if (RemoveNotificationL(aObjectId, KMssPresent)) - { - saveNotification = EFalse;// ignore this not present notification - } - __FLOG_VA((_L8("OptimizeL - KMssNotPresent ObjectId: %u, Ignore saving: %d"), aObjectId, saveNotification)); - break; - - default: - // Nothing to do - break; - } - - __FLOG(_L8("CMediaSyncDatabase::OptimizeL - Exit")); - - return saveNotification; - } - -void CMediaSyncDatabase::SaveNotificationsL(const RArray& aObjectIdArray, TBool aPresent, CMdESession& aSession) - { - iDatabase.Begin(); - - if (aPresent) - { - __FLOG(_L8("CMediaSyncDatabase::SaveNotificationsL Present - Entry")); - SaveAndCheckWithUriL(aObjectIdArray, KMssPresent, aSession); - } - else - { - __FLOG(_L8("CMediaSyncDatabase::SaveNotificationsL Not Present - Entry")); - SaveWithoutUriL(aObjectIdArray, KMssNotPresent); - } - - iDatabase.Commit(); - - __FLOG(_L8("CMediaSyncDatabase::SaveNotificationsL Present - Exit")); - } - -void CMediaSyncDatabase::SaveAddNotificationsL(const RArray& aObjectIdArray, CMdESession& aSession) - { - __FLOG(_L8("CMediaSyncDatabase::SaveAddNotificationsL - Entry")); - - CMdENamespaceDef& defaultNamespaceDef = aSession.GetDefaultNamespaceDefL(); - CMdEObjectDef& imageObjDef = defaultNamespaceDef.GetObjectDefL(MdeConstants::Image::KImageObject); - - TInt objectCount = aObjectIdArray.Count(); - for (TInt i(0);i < objectCount;i++) - { - TItemId objectId = aObjectIdArray[i]; - CMdEObject* addObject = aSession.GetObjectL(objectId, imageObjDef); - if (addObject) - { - CleanupStack::PushL(addObject); - CleanupStack::PushL(TCleanupItem(CMediaSyncDatabase::RollbackTable, &iBatched)); - iBatched.InsertL(); - iBatched.SetColL(1, (TUint32)objectId); - iBatched.SetColL(2, KMssAddition); - iBatched.SetColL(3, addObject->Uri()); - iBatched.PutL(); - CleanupStack::Pop(&iBatched); - __FLOG_VA((_L16("CMediaSyncDatabase::SaveAndCheckWithUriL - ObjectId:%u, Type:%u, URI:%S"), objectId, KMssAddition, &addObject->Uri())); - CleanupStack::PopAndDestroy(addObject); - } - } - - __FLOG(_L8("CMediaSyncDatabase::SaveAddNotificationsL - Exit")); - } - -void CMediaSyncDatabase::SaveAndCheckWithUriL(const RArray& aObjectIdArray, TUint aType, CMdESession& aSession) - { - __FLOG(_L8("CMediaSyncDatabase::SaveAndCheckWithUriL - Entry")); - - CMdENamespaceDef& defaultNamespaceDef = aSession.GetDefaultNamespaceDefL(); - CMdEObjectDef& imageObjDef = defaultNamespaceDef.GetObjectDefL(MdeConstants::Image::KImageObject); - CMdEPropertyDef& itemTypePropDef = imageObjDef.GetPropertyDefL(MdeConstants::Object::KItemTypeProperty); - - TInt objectCount = aObjectIdArray.Count(); - for (TInt i(0);i < objectCount;i++) - { - TItemId objectId = aObjectIdArray[i]; - CMdEObject* changeObject = aSession.GetObjectL(objectId, imageObjDef); - if (changeObject) - { - CleanupStack::PushL(changeObject); - //only support jpeg format image files - CMdEProperty* itemType = NULL; - TInt err = changeObject->Property(itemTypePropDef, itemType); - - if (err >= KErrNone && itemType != NULL && itemType->TextValueL().Compare(KJpegMime) == 0) - { - if (OptimizeL(objectId, aType, changeObject->Uri())) - { - CleanupStack::PushL(TCleanupItem(CMediaSyncDatabase::RollbackTable, &iBatched)); - iBatched.InsertL(); - iBatched.SetColL(1, (TUint32)objectId); - iBatched.SetColL(2, aType); - iBatched.SetColL(3, changeObject->Uri()); - iBatched.PutL(); - CleanupStack::Pop(&iBatched); - __FLOG_VA((_L16("CMediaSyncDatabase::SaveAndCheckWithUriL - ObjectId:%u, Type:%u, URI:%S"), objectId, aType, &changeObject->Uri())); - } - } - CleanupStack::PopAndDestroy(changeObject); - } - } - - __FLOG(_L8("CMediaSyncDatabase::SaveAndCheckWithUriL - Exit")); - } - -void CMediaSyncDatabase::SaveWithoutUriL(const RArray& aObjectIdArray, TUint aType) - { - TInt objectCount = aObjectIdArray.Count(); - for (TInt i(0);i < objectCount;i++) - { - TItemId objectId = aObjectIdArray[i]; - if (OptimizeL(objectId, aType)) - { - CleanupStack::PushL(TCleanupItem(CMediaSyncDatabase::RollbackTable, &iBatched)); - iBatched.InsertL(); - iBatched.SetColL(1, (TUint32)objectId); - iBatched.SetColL(2, aType); - iBatched.PutL(); - __FLOG_VA((_L8("CMediaSyncDatabase::SaveWithoutUriL - ObjectId:%u, Type: %u"), objectId, aType)); - CleanupStack::Pop(&iBatched); - } - } - - __FLOG(_L8("CMediaSyncDatabase::SaveWithoutUriL - Exit")); - } - -TBool CMediaSyncDatabase::UpdateUriColumnL(TItemId aObjectId, TUint aType, const TDesC& aUri) - { - __FLOG(_L8("CMediaSyncDatabase::UpdateUriColumnL - Entry")); - - TBool update = EFalse; - - iBatched.SetIndex(KSQLCombinedIndex); - TDbSeekMultiKey<2> seekKey; - seekKey.Add((TUint)aObjectId); - seekKey.Add(aType); - if (iBatched.SeekL(seekKey)) - { - CleanupStack::PushL(TCleanupItem(CMediaSyncDatabase::RollbackTable, &iBatched)); - iBatched.UpdateL(); - iBatched.SetColL(3, aUri); - iBatched.PutL(); - CleanupStack::Pop(&iBatched); - update = ETrue; - __FLOG_VA((_L16("CMediaSyncDatabase::UpdateUriColumnL - ObjectId:%u, Type:%u, URI:%S"), aObjectId, aType, &aUri)); - } - - __FLOG(_L8("CMediaSyncDatabase::UpdateUriColumnL - Exit")); - return update; - } - -void CMediaSyncDatabase::RemoveAllNotificationsL() - { - _LIT(KSQLDeleteAllNotifications, "DELETE FROM ImageStore"); - - User::LeaveIfError(iDatabase.Execute(KSQLDeleteAllNotifications)); - iDatabase.Compact(); - iSavePosition = EFalse; - - __FLOG_VA((_L8("CMediaSyncDatabase::RemoveAllNotificationsL"))); - } - -TBool CMediaSyncDatabase::RemoveNotificationL(TItemId aObjectId, TUint aType) - { - TBool remove = EFalse; - - iBatched.SetIndex(KSQLCombinedIndex); - TDbSeekMultiKey<2> seekKey; - seekKey.Add((TUint)aObjectId); - seekKey.Add(aType); - if (iBatched.SeekL(seekKey)) - { - iBatched.DeleteL(); - CompactDatabase(); - iSavePosition = EFalse; - remove = ETrue; - __FLOG_VA((_L8("CMediaSyncDatabase::RemoveNotificationL - ObjectId:%u, Type: %u"), aObjectId, aType)); - } - return remove; - } - -void CMediaSyncDatabase::CompactDatabase() - { - if (++iCompactCounter > KCompactThreshold) - { - iDatabase.Compact(); - iCompactCounter = 0; - } - } - -void CMediaSyncDatabase::FetchNotificationsL(CMediaSyncDataWriter& aResulWriter, TInt aMaxtFetchCount, TBool& aIsFinished) - { - __FLOG(_L8("CMediaSyncDatabase::FetchNotificationsL - Entry")); - - _LIT(KSQLQuery, "SELECT ObjectId, NotificationType, URI FROM ImageStore"); - - RDbView view; - CleanupClosePushL(view); - - User::LeaveIfError(view.Prepare(iDatabase, TDbQuery(KSQLQuery))); - User::LeaveIfError(view.EvaluateAll()); - - //goto the last fetch position - if (iSavePosition) - { - view.GotoL(iBookmark); - } - else - { - view.FirstL(); - } - - TInt entrySize = 0; - //tranvers records - while (view.AtRow() && (aMaxtFetchCount > 0)) - { - view.GetL(); - TPtrC16 uri = view.ColDes16(3); - - entrySize = uri.Size(); - entrySize += sizeof(TUint32);//object id size - entrySize += sizeof(TUint8);//type size - entrySize += sizeof(TUint8);//uri size - - if (entrySize > aResulWriter.FreeSpaceBytes()) - { - //there is no enought space to save entry - break; - } - else - { - aResulWriter.AppendEntryL(view.ColUint32(1), (TUint8)view.ColUint32(2), uri); - view.NextL(); - --aMaxtFetchCount; - } - } - - //save current fetch position - if (view.AtEnd()) - { - iSavePosition = EFalse; - aIsFinished = ETrue; - } - else - { - iBookmark = view.Bookmark(); - iSavePosition = ETrue; - aIsFinished = EFalse; - } - CleanupStack::PopAndDestroy(&view); - - __FLOG(_L8("CMediaSyncDatabase::FetchNotificationsL - Exit")); - } - -void CMediaSyncDatabase::RollbackTable(TAny* aTable) - { - reinterpret_cast (aTable)->Cancel(); - } diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncdatawriter.cpp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncdatawriter.cpp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,101 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include - -#include "cmediasyncdatawriter.h" - -CMediaSyncDataWriter* CMediaSyncDataWriter::NewLC(const RChunk& aChunk) - { - CMediaSyncDataWriter* self = new(ELeave) CMediaSyncDataWriter(); - CleanupStack::PushL(self); - self->ConstructL(aChunk); - return self; - } - -CMediaSyncDataWriter::~CMediaSyncDataWriter() - { - - } - -CMediaSyncDataWriter::CMediaSyncDataWriter() - { - - } - -void CMediaSyncDataWriter::ConstructL(const RChunk& aChunk) - { - TUint8* base = aChunk.Base(); - User::LeaveIfNull(base); - - iHeaderInfo = reinterpret_cast(base); - iHeaderInfo->iCount = 0; - iWriteBase = base + sizeof(TDataHeaderInfo); - iMaxSize = aChunk.MaxSize() - sizeof(TDataHeaderInfo); - iOffset = 0; - } - -TInt CMediaSyncDataWriter::FreeSpaceBytes() - { - return (iMaxSize - iOffset); - } - -inline void CMediaSyncDataWriter::CheckBufferCapacityL(TInt aReqSize) - { - if (aReqSize > (iMaxSize - iOffset)) - { - User::Leave(KErrOverflow); - } - } - -void CMediaSyncDataWriter::AppendEntryL(TUint32 aObjectId, TUint8 aType, const TDesC& aUri) - { - //copy object id - CheckBufferCapacityL(sizeof(TUint32)); - Mem::Copy((iWriteBase + iOffset), &aObjectId, sizeof(TUint32)); - iOffset += sizeof(TUint32); - - //copy notification type - CheckBufferCapacityL(sizeof(TUint8)); - Mem::Copy((iWriteBase + iOffset), &aType, sizeof(TUint8)); - iOffset += sizeof(TUint8); - - //copy uri length - CheckBufferCapacityL(sizeof(TUint8)); - TUint8 uriLen = aUri.Length(); - Mem::Copy((iWriteBase + iOffset), &uriLen, sizeof(TUint8)); - iOffset += sizeof(TUint8); - if (uriLen > 0) - { - //copy uri content - CheckBufferCapacityL(aUri.Size()); - TPtr8 ptr(reinterpret_cast(const_cast(aUri.Ptr())), aUri.Size(), aUri.Size()); - Mem::Copy((iWriteBase + iOffset), ptr.Ptr(), ptr.Size()); - iOffset += ptr.Size(); - } - - ++iHeaderInfo->iCount; - } - - - - - - diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncobserver.cpp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncobserver.cpp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,216 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -// -#include -#include - -#include "cmediasyncdatabase.h" -#include "cmediasyncobserver.h" - -__FLOG_STMT(_LIT8(KComponent,"MediaSyncObserver");) - -CMediaSyncObserver* CMediaSyncObserver::NewL(CMediaSyncDatabase* aDb) - { - CMediaSyncObserver* self = new (ELeave) CMediaSyncObserver(aDb); - CleanupStack::PushL(self); - self->ConstructL(); - CleanupStack::Pop(self); - return self; - } - -void CMediaSyncObserver::ConstructL() - { - __FLOG_OPEN(KMSSSubsystem, KComponent); - __FLOG(_L8("CMediaSyncObserver::ConstructL - Entry")); - - iSessionWait = new (ELeave) CActiveSchedulerWait(); - iSession = CMdESession::NewL(*this); - iSessionWait->Start(); - - User::LeaveIfError(iMdeSessionError); - -// SubscribeForChangeNotificationL(); - - __FLOG(_L8("CMediaSyncObserver::ConstructL - Exit")); - } - -CMediaSyncObserver::CMediaSyncObserver(CMediaSyncDatabase* aDb) - :iDb(aDb), - iSubscribed(EFalse) - { - } - -CMediaSyncObserver::~CMediaSyncObserver() - { - __FLOG(_L8("CMediaSyncObserver::~CMediaSyncObserver - Entry")); - -// TRAP_IGNORE(UnsubscribeForChangeNotificationL()); - - delete iSession; - delete iSessionWait; - - __FLOG(_L8("CMediaSyncObserver::~CMediaSyncObserver - Exit")); - __FLOG_CLOSE; - } - -void CMediaSyncObserver::SubscribeForChangeNotificationL() - { - __FLOG(_L8("CMediaSyncObserver::SubscribeForChangeNotificationL - Entry")); - - if (!iSubscribed) - { - CMdENamespaceDef& def = iSession->GetDefaultNamespaceDefL(); - CMdEObjectDef& imageObjDef = def.GetObjectDefL(MdeConstants::Image::KImageObject); - - // add observer - CMdELogicCondition* addCondition = CMdELogicCondition::NewLC(ELogicConditionOperatorAnd); - CMdEPropertyDef& itemTypePropDef = imageObjDef.GetPropertyDefL(MdeConstants::Object::KItemTypeProperty); - addCondition->AddPropertyConditionL(itemTypePropDef, ETextPropertyConditionCompareEndsWith, _L("jpeg")); - iSession->AddObjectObserverL(*this, addCondition, ENotifyAdd); - CleanupStack::Pop(addCondition); - - // modify observer - CMdELogicCondition* modifyCondition = CMdELogicCondition::NewLC(ELogicConditionOperatorAnd); - CMdEPropertyDef& titlePropDef = imageObjDef.GetPropertyDefL(MdeConstants::Object::KTitleProperty); - modifyCondition->AddPropertyConditionL(titlePropDef); - iSession->AddObjectObserverL(*this, modifyCondition, ENotifyModify); - CleanupStack::Pop(modifyCondition); - - // remove observer - iSession->AddObjectObserverL(*this, NULL, ENotifyRemove); - - // present observer - iSession->AddObjectPresentObserverL(*this); - - iSubscribed = ETrue; - } - - __FLOG(_L8("CMediaSyncObserver::SubscribeForChangeNotificationL - Exit")); - } - -void CMediaSyncObserver::UnsubscribeForChangeNotificationL() - { - __FLOG(_L8("CMediaSyncObserver::UnsubscribeForChangeNotificationL - Entry")); - - if (iSubscribed) - { - iSession->RemoveObjectObserverL(*this);//add observer - iSession->RemoveObjectObserverL(*this);//modify observer - iSession->RemoveObjectObserverL(*this);//remove observer - iSession->RemoveObjectPresentObserverL(*this); - iSubscribed = EFalse; - } - - __FLOG(_L8("CMediaSyncObserver::UnsubscribeForChangeNotificationL - Exit")); - } - -// From MMdESessionObserver -void CMediaSyncObserver::HandleSessionOpened(CMdESession& /*aSession*/, TInt aError) - { - __FLOG(_L8("CMediaSyncObserver::HandleSessionOpened - Entry")); - - HandleSessionCallback(aError); - - __FLOG(_L8("CMediaSyncObserver::HandleSessionOpened - Exit")); - } - -void CMediaSyncObserver::HandleSessionError(CMdESession& /*aSession*/, TInt aError) - { - __FLOG(_L8("CMediaSyncObserver::HandleSessionError - Entry")); - - HandleSessionCallback(aError); - - __FLOG(_L8("CMediaSyncObserver::HandleSessionError - Exit")); - } - -void CMediaSyncObserver::HandleSessionCallback(TInt aError) - { - __ASSERT_DEBUG(iSessionWait, User::Invariant()); - iMdeSessionError = aError; - if (iSessionWait->IsStarted()) - { - iSessionWait->AsyncStop(); - } - } - -/* - * After receiving object change notification, check if there is any dp subscribed right now. - * if none, store change into database - * if yes, check the type of file with subscribed providers, if there is any match, just forward - * the change to that dp, if none, store change into database. - */ -void CMediaSyncObserver::HandleObjectNotification(CMdESession& aSession, - TObserverNotificationType aType, - const RArray& aObjectIdArray) - { - TRAPD(err, HandleObjectNotificationL(aSession, aType, aObjectIdArray)); - - if (err != KErrNone) - { - __FLOG(_L8("CMediaSyncObserver::HandleObjectNotification - Rollback database")); - iDb->Rollback(); - } - } - -/* - * L Function - */ -void CMediaSyncObserver::HandleObjectNotificationL(CMdESession& /*aSession*/, - TObserverNotificationType aType, - const RArray& aObjectIdArray) - { - __FLOG(_L8("CMediaSyncObserver::HandleObjectNotificationL - Entry")); - - iDb->SaveNotificationsL(aObjectIdArray, aType, *iSession); - - __FLOG(_L8("CMediaSyncObserver::HandleObjectNotificationL - Exit")); - } - -/* - * Called to notify the observer that objects has been set - * to present or not present state in the metadata engine database. - */ -void CMediaSyncObserver::HandleObjectPresentNotification(CMdESession& aSession, - TBool aPresent, - const RArray& aObjectIdArray) - { - TRAPD(err, HandleObjectPresentNotificationL(aSession, aPresent, aObjectIdArray)); - - if (err != KErrNone) - { - __FLOG(_L8("CMediaSyncObserver::HandleObjectPresentNotification - Rollback database")); - iDb->Rollback(); - } - } - -/* - * L Function - */ -void CMediaSyncObserver::HandleObjectPresentNotificationL(CMdESession& /*aSession*/, - TBool aPresent, - const RArray& aObjectIdArray) - { - __FLOG(_L8("CMediaSyncObserver::HandleObjectPresentNotificationL - Entry")); - - iDb->SaveNotificationsL(aObjectIdArray, aPresent, *iSession); - - __FLOG(_L8("CMediaSyncObserver::HandleObjectPresentNotificationL - Exit")); - } diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncserver.cpp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncserver.cpp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,202 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include -#include - -#include "cmediasyncserver.h" -#include "cmediasyncserversession.h" -#include "cmediasyncobserver.h" -#include "cmediasyncserverdef.h" - -__FLOG_STMT(_LIT8(KComponent, "MediaSyncServer");) - -const TInt KMediaSyncFunctionCodeRanges[] = - { - EMediaSyncClientGetGSHHandle, - EMediaSyncClientShutdown, - EMediaSyncClientNotSupported, - }; - -const TUint KMediaSyncFunctionCodeRangeCount = (sizeof(KMediaSyncFunctionCodeRanges) - / sizeof(KMediaSyncFunctionCodeRanges[0])); - - -const TUint8 KMediaSyncPolicyElementNetworkAndLocal = 0; -const TUint8 KMediaSyncPolicyElementPowerMgmt = 1; - -const TUint8 KMediaSyncElementsIndex[KMediaSyncFunctionCodeRangeCount] = - { - KMediaSyncPolicyElementNetworkAndLocal, - KMediaSyncPolicyElementPowerMgmt, - CPolicyServer::ENotSupported, - }; - -const CPolicyServer::TPolicyElement KMediaSyncPolicyElements[] = - { - {_INIT_SECURITY_POLICY_C2(ECapabilityNetworkServices, ECapabilityLocalServices), CPolicyServer::EFailClient}, - {_INIT_SECURITY_POLICY_C1(ECapabilityPowerMgmt), CPolicyServer::EFailClient}, - }; - -const CPolicyServer::TPolicy KMediaSyncServerPolicy = - { - CPolicyServer::EAlwaysPass, //specifies all connect attempts should pass - KMediaSyncFunctionCodeRangeCount, - KMediaSyncFunctionCodeRanges, - KMediaSyncElementsIndex, // what each range is compared to - KMediaSyncPolicyElements // what policies range is compared to - }; - - -/** -Creates and executes a new CMTPServer instance. -@leave One of the system wide error codes, if a processing failure occurs. -*/ -void CMediaSyncServer::RunServerL() - { - RFs fs; - User::LeaveIfError(fs.Connect()); - CleanupClosePushL(fs); - - TFileName lockFileName; - fs.PrivatePath(lockFileName); - TDriveUnit driveNum = RFs::GetSystemDrive(); - lockFileName.Insert(0, driveNum.Name()); - lockFileName.Append(KMssLockName); - - RFile lockFile; - CleanupClosePushL(lockFile); - TInt ret = KErrNone; - if (!BaflUtils::FileExists(fs, lockFileName)) - { - BaflUtils::EnsurePathExistsL(fs, lockFileName); - ret = lockFile.Create(fs, lockFileName, EFileShareExclusive|EFileWrite); - } - else - { - ret = lockFile.Open(fs, lockFileName, EFileShareExclusive|EFileWrite); - } - - if (ret == KErrNone) - { - // Naming the server thread after the server helps to debug panics - User::LeaveIfError(User::RenameProcess(KMediaSyncServerName)); - - // Create and install the active scheduler. - CActiveScheduler* scheduler = new (ELeave) CActiveScheduler; - CleanupStack::PushL(scheduler); - CActiveScheduler::Install(scheduler); - - // Create the server and leave it on the cleanup stack. - CMediaSyncServer* server = CMediaSyncServer::NewLC(fs); - - // Initialisation complete, signal the client - RProcess::Rendezvous(KErrNone); - - // Execute the server. - CActiveScheduler::Start(); - - // Server shutting down. - CleanupStack::PopAndDestroy(server); - - CleanupStack::PopAndDestroy(scheduler); // scheduler - } - else - { - RProcess::Rendezvous(KErrNone); - } - - CleanupStack::PopAndDestroy(&lockFile); - CleanupStack::PopAndDestroy(&fs); - } - -CMediaSyncServer* CMediaSyncServer::NewLC(RFs& aFs) - { - CMediaSyncServer* self = new (ELeave) CMediaSyncServer; - CleanupStack::PushL(self); - self->ConstructL(aFs); - return self; - } - -CMediaSyncServer::CMediaSyncServer() : - CPolicyServer(CActive::EPriorityStandard, KMediaSyncServerPolicy) - { - - } - -CMediaSyncServer::~CMediaSyncServer() - { - __FLOG(_L8("CMediaSyncServer::~CMediaSyncServer - Entry")); - - delete iDb; - delete iObserver; - - __FLOG(_L8("CMediaSyncServer::~CMediaSyncServer - Exit")); - __FLOG_CLOSE; - } - -void CMediaSyncServer::ConstructL(RFs& aFs) - { - __FLOG_OPEN(KMSSSubsystem, KComponent); - __FLOG(_L8("CMediaSyncServer::ConstructL - Entry")); - - iDb = CMediaSyncDatabase::NewL(aFs); - iObserver = CMediaSyncObserver::NewL(iDb); - iNeedFullSync = iDb->IsMssDbCorrupt(); - - StartL(KMediaSyncServerName); - - __FLOG(_L8("CMediaSyncObserver::ConstructL - Exit")); - } - -CSession2* CMediaSyncServer::NewSessionL(const TVersion&,const RMessage2&) const - { - __FLOG(_L8("CMediaSyncServer::NewSessionL - Entry")); - - CMediaSyncServer* ncThis = const_cast(this); - - __FLOG(_L8("CMediaSyncObserver::NewSessionL - Exit")); - return new(ELeave) CMediaSyncServerSession(ncThis); - } - -CMediaSyncObserver* CMediaSyncServer::MediaSyncObserver() const - { - return iObserver; - } - -CMediaSyncDatabase* CMediaSyncServer::MediaSyncDatabase() const - { - return iDb; - } - -TBool CMediaSyncServer::NeedFullSync() - { - return iNeedFullSync; - } - -void CMediaSyncServer::ClearFullSyncFlag() - { - __FLOG(_L8("CMediaSyncServer::ClearFullSyncFlag - Entry")); - - iNeedFullSync = EFalse; - iDb->ClearMssDbCorrupt(); - - __FLOG(_L8("CMediaSyncObserver::ClearFullSyncFlag - Exit")); - } diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncserversession.cpp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/src/cmediasyncserversession.cpp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,198 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include "cmediasyncserversession.h" -#include "cmediasyncserver.h" -#include "cmediasyncdatabase.h" -#include "cmediasyncobserver.h" -#include "cmediasyncdatawriter.h" - -__FLOG_STMT(_LIT8(KComponent,"MediaSyncServerSession");) - -const TInt KDefGlobalSharedHeapSize = 64 * 1024;//64K byte memory -const TInt KReduceFactor = 2; -const TInt KMaxRetryTimes = 3; - -CMediaSyncServerSession::CMediaSyncServerSession(CMediaSyncServer* aServer) : - iServer(aServer), - iAllocated(EFalse) - { - __FLOG_OPEN(KMSSSubsystem, KComponent); - __FLOG(_L8("CMediaSyncServerSession::CMediaSyncServerSession - Entry")); - __FLOG(_L8("CMediaSyncServerSession::CMediaSyncServerSession - Exit")); - } - -/** -Destructor. -*/ -CMediaSyncServerSession::~CMediaSyncServerSession() - { - __FLOG(_L8("CMediaSyncServerSession::~CMediaSyncServerSession - Entry")); - - if (iAllocated) - { - iGlobalSharedHeap.Close(); - } - - __FLOG(_L8("CMediaSyncServerSession::~CMediaSyncServerSession - Exit")); - __FLOG_CLOSE; - } - -// -------------------------------------------------------------------------- -// -// From CSession2, passes the request forward to DispatchMessageL. -// -------------------------------------------------------------------------- -// -void CMediaSyncServerSession::ServiceL(const RMessage2& aMessage) - { - __FLOG_VA((_L8("CMediaSyncServerSession::ServiceL - Function: %d"), aMessage.Function())); - - DispatchMessageL(aMessage); - } - -void CMediaSyncServerSession::DispatchMessageL(const RMessage2& aMessage) - { - __FLOG(_L8("CMediaSyncServerSession::DispatchMessageL - Entry")); - - switch( aMessage.Function() ) - { - case EMediaSyncClientGetGSHHandle: - { - AllocateGlobalSharedHeapL(aMessage); - aMessage.Complete(iGlobalSharedHeap); - } - break; - - case EMediaSyncClientGetChanges: - aMessage.Complete(GetChangesL(aMessage)); - break; - - case EMediaSyncClientRemoveAllRecords: - { - iServer->MediaSyncDatabase()->RemoveAllNotificationsL(); - iGlobalSharedHeap.Close(); - iAllocated = EFalse; - aMessage.Complete(KErrNone); - } - break; - - case EMediaSyncClientEnableMonitor: - iServer->MediaSyncObserver()->SubscribeForChangeNotificationL(); - aMessage.Complete(KErrNone); - break; - - case EMediaSyncClientDisableMonitor: - iServer->MediaSyncObserver()->UnsubscribeForChangeNotificationL(); - aMessage.Complete(KErrNone); - break; - - case EMediaSyncClientNeedFullSync: - aMessage.Complete(GetFullSyncFlag(aMessage)); - break; - - case EMediaSyncClientClearFullSync: - iServer->ClearFullSyncFlag(); - aMessage.Complete(KErrNone); - break; - - case EMediaSyncClientShutdown: - CActiveScheduler::Stop(); - aMessage.Complete(KErrNone); - break; - - default: - aMessage.Panic(KMediaSyncClientPanicCategory, EBadRequest); - break; - } - - __FLOG(_L8("CMediaSyncServerSession::DispatchMessageL - Exit")); - } - -void CMediaSyncServerSession::AllocateGlobalSharedHeapL(const RMessage2& aMessage) - { - __FLOG(_L8("CMediaSyncServerSession::AllocateGlobalSharedHeapL - Entry")); - - if (!iAllocated) - { - TInt attemptedSize = aMessage.Int0(); - if (attemptedSize > KDefGlobalSharedHeapSize || attemptedSize <= 0) - { - attemptedSize = KDefGlobalSharedHeapSize; - } - - TInt retryCount = KMaxRetryTimes; - TInt redFactor = KReduceFactor; - TInt result = KErrNone; - - for (; retryCount > 0; retryCount--) - { - result = iGlobalSharedHeap.CreateGlobal(KNullDesC, attemptedSize, attemptedSize); - - if (result == KErrNone) - { - // We have succesfully allocated a GSH - break; - } - else - { - // Reduce the size of the GSH by a scale factor - attemptedSize = attemptedSize / redFactor; - } - } - - User::LeaveIfError(result); - iAllocated = ETrue; - } - - __FLOG(_L8("CMediaSyncServerSession::AllocateGlobalSharedHeapL - Exit")); - } - -TInt CMediaSyncServerSession::GetChangesL(const RMessage2& aMessage) - { - __FLOG(_L8("CMediaSyncServerSession::GetChangesL - Entry")); - - TInt maxFetchCount = aMessage.Int0(); - CMediaSyncDataWriter* writer = CMediaSyncDataWriter::NewLC(iGlobalSharedHeap); - TBool finished = EFalse; - - iServer->MediaSyncDatabase()->FetchNotificationsL(*writer, maxFetchCount, finished); - TPtr8 finishPtr((TUint8*)&finished, sizeof(TBool), sizeof(TBool)); - - aMessage.Write(1, finishPtr); - - CleanupStack::PopAndDestroy(writer); - - __FLOG(_L8("CMediaSyncServerSession::GetChangesL - Exit")); - - return KErrNone; - } - -TInt CMediaSyncServerSession::GetFullSyncFlag(const RMessage2& aMessage) - { - __FLOG(_L8("CMediaSyncServerSession::GetFullSyncFlagL - Entry")); - - TBool needFullSync = iServer->NeedFullSync(); - TPtr8 finishPtr((TUint8*)&needFullSync, sizeof(TBool), sizeof(TBool)); - aMessage.Write(0, finishPtr); - - __FLOG(_L8("CMediaSyncServerSession::GetFullSyncFlagL - Exit")); - - return KErrNone; - } diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/src/main.cpp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/src/main.cpp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,43 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include -#include "cmediasyncserver.h" - - -// Global Functions -/** -Process entry point -*/ -TInt E32Main() - { - // Create cleanup stack - __UHEAP_MARK; - CTrapCleanup* cleanup = CTrapCleanup::New(); - TInt ret = KErrNoMemory; - if (cleanup) - { - // Run application code inside TRAP harness, wait keypress when terminated - TRAP(ret, CMediaSyncServer::RunServerL()); - delete cleanup; - } - __UHEAP_MARKEND; - return ret; - } diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpdataproviders/mtpimagedp/mediasyncserver/src/rmediasyncserver.cpp --- a/mtpdataproviders/mtpimagedp/mediasyncserver/src/rmediasyncserver.cpp Fri Sep 17 08:34:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,262 +0,0 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @internalTechnology -*/ - -#include - -#include "rmediasyncserver.h" - -const TInt KDefGlobalSharedHeapSize = 64 * 1024;//64K byte memory - -//----------------------------------------------------------------------------- -// -//----------------------------------------------------------------------------- -// -EXPORT_C RMediaSyncServer::RMediaSyncServer() : - iHasSharedHeap(EFalse) - { - } - -EXPORT_C TInt RMediaSyncServer::Startup() - { - const TUidType serverUid(KNullUid, KNullUid, KMediaSyncServerUid3); - - // Create the server process. - RProcess server; - TInt err(server.Create(KMediaSyncServerName, KNullDesC, serverUid)); - - // Loading failed. - if ( err != KErrNone ) - { - return err; - } - - TRequestStatus status; - server.Rendezvous(status); - - if (status != KRequestPending) - { - server.Kill(0); // abort startup - server.Close(); - return KErrGeneral; - } - else - { - server.Resume(); // Logon OK - start the server. - } - - User::WaitForRequest(status); - server.Close(); - - return status.Int(); - } - -EXPORT_C void RMediaSyncServer::Shutdown() - { - SendReceive(EMediaSyncClientShutdown); - } - -EXPORT_C TInt RMediaSyncServer::Connect() - { - TFindProcess findMdEServer(KFinderMSSName); - TFullName name; - TInt result = findMdEServer.Next(name); - if(result == KErrNotFound) - { - // Server is not running - result = Startup(); - } - else if(KErrNone == result) - { - RProcess mss; - result = mss.Open(findMdEServer, EOwnerProcess); - if((result != KErrNone) && (mss.ExitReason() != KErrNone)) - { - result = Startup(); - } - mss.Close(); - } - - if(KErrNone == result) - { - TVersion version(KMediaSyncServerVersionMajor, KMediaSyncServerVersionMinor, 0); - result = CreateSession( KMediaSyncServerName, version ); - } - - return result; - } - -EXPORT_C void RMediaSyncServer::Close() - { - RSessionBase::Close(); - - if (iHasSharedHeap) - { - iGlobalSharedHeap.Close(); - iHasSharedHeap = EFalse; - } - } - -EXPORT_C TInt RMediaSyncServer::NeedFullSync(TBool& aNeedFullSync) - { - TPtr8 finishPtr((TUint8*)&aNeedFullSync, sizeof(TBool), sizeof(TBool)); - - TIpcArgs args; - args.Set(0, &finishPtr); - - return SendReceive(EMediaSyncClientNeedFullSync, args); - } - -EXPORT_C TInt RMediaSyncServer::ClearFullSync() - { - return SendReceive(EMediaSyncClientClearFullSync); - } - -EXPORT_C void RMediaSyncServer::GetChangesL(CMediaSyncDataReader*& aDataReader, TBool& aIsFinished, TRequestStatus& aStatus, TInt aMaxFetchCount) - { - if (!iHasSharedHeap) - { - User::LeaveIfError(GetGlobalSharedHeapHandle()); - iHasSharedHeap = ETrue; - } - - TPtr8 finishPtr((TUint8*)&aIsFinished, sizeof(TBool), sizeof(TBool)); - - TIpcArgs args; - args.Set(0, aMaxFetchCount); - args.Set(1, &finishPtr); - - TInt ret = SendReceive(EMediaSyncClientGetChanges, args); - User::LeaveIfError(ret); - - aDataReader = CMediaSyncDataReader::NewL(iGlobalSharedHeap); - - TRequestStatus* pClient = &aStatus; - User::RequestComplete(pClient, ret); - } - -EXPORT_C void RMediaSyncServer::RemoveAllRecords() - { - SendReceive(EMediaSyncClientRemoveAllRecords); - RelaseGlobalSharedHeap(); - return; - } - -EXPORT_C TInt RMediaSyncServer::EnableMonitor() - { - return SendReceive(EMediaSyncClientEnableMonitor); - } - -EXPORT_C TInt RMediaSyncServer::DisableMonitor() - { - return SendReceive(EMediaSyncClientDisableMonitor); - } - -TInt RMediaSyncServer::GetGlobalSharedHeapHandle() - { - TIpcArgs args; - args.Set(0, KDefGlobalSharedHeapSize); - - TInt ret = SendReceive(EMediaSyncClientGetGSHHandle, args); - ret = iGlobalSharedHeap.SetReturnedHandle(ret); - - return ret; - } - -void RMediaSyncServer::RelaseGlobalSharedHeap() - { - iGlobalSharedHeap.Close(); - iHasSharedHeap = EFalse; - } - -CMediaSyncDataReader* CMediaSyncDataReader::NewL(const RChunk& aChunk) - { - CMediaSyncDataReader* self = new(ELeave) CMediaSyncDataReader(); - CleanupStack::PushL(self); - self->ConstructL(aChunk); - CleanupStack::Pop(self); - return self; - } - -EXPORT_C CMediaSyncDataReader::~CMediaSyncDataReader() - { - - } - -CMediaSyncDataReader::CMediaSyncDataReader() : - iOffset(0), - iCurrentIdx(0) - { - - } - -void CMediaSyncDataReader::ConstructL(const RChunk& aChunk) - { - TUint8* base = aChunk.Base(); - User::LeaveIfNull(base); - - iHeaderInfo = reinterpret_cast(base); - iReadBase = base + sizeof(TDataHeaderInfo); - } - -EXPORT_C TInt CMediaSyncDataReader::Count() - { - return iHeaderInfo->iCount; - } - -EXPORT_C TBool CMediaSyncDataReader::HasNext() - { - return (iCurrentIdx < iHeaderInfo->iCount); - } - -EXPORT_C void CMediaSyncDataReader::GetNextL(TUint32& aObjectId, TUint8& aType, TPtr16& aUri) - { - if (iCurrentIdx < iHeaderInfo->iCount) - { - //read object id - Mem::Copy(&aObjectId, (iReadBase + iOffset), sizeof(TUint32)); - iOffset += sizeof(TUint32); - - //read notification type - Mem::Copy(&aType, (iReadBase + iOffset), sizeof(TUint8)); - iOffset += sizeof(TUint8); - - //read uri length - TUint8 uriLen = 0; - Mem::Copy(&uriLen, (iReadBase + iOffset), sizeof(TUint8)); - iOffset += sizeof(TUint8); - if (uriLen > 0) - { - //read uri content - TUint16* ptr = (TUint16*)(iReadBase + iOffset); - aUri.Set(ptr, uriLen, uriLen); - iOffset += (uriLen * sizeof(TUint16)); - } - else - { - aUri.Set(NULL, 0, 0); - } - - ++iCurrentIdx; - } - else - { - User::Leave(KErrOverflow); - } - } diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpfws/mtpfw/inc/cmtpobjectstore.h --- a/mtpfws/mtpfw/inc/cmtpobjectstore.h Fri Sep 17 08:34:51 2010 +0300 +++ b/mtpfws/mtpfw/inc/cmtpobjectstore.h Mon Oct 04 01:38:39 2010 +0300 @@ -368,6 +368,7 @@ CSnapshotWorker* iSnapshotWorker; mutable TFileName iSuidBuf; TBool iCleanUndefined; + TBool iDbOpened; }; #endif // CMTPOBJECTSTORE_H diff -r 63cf70d3ecd8 -r 62b719e049f4 mtpfws/mtpfw/src/cmtpobjectstore.cpp --- a/mtpfws/mtpfw/src/cmtpobjectstore.cpp Fri Sep 17 08:34:51 2010 +0300 +++ b/mtpfws/mtpfw/src/cmtpobjectstore.cpp Mon Oct 04 01:38:39 2010 +0300 @@ -140,8 +140,11 @@ delete iPkgIDStore; delete iSentinal; delete iSnapshotWorker; - TRAP_IGNORE(CommitTransactionL()); - iDatabase.Compact(); + if (iDbOpened) + { + TRAP_IGNORE(CommitTransactionL()); + iDatabase.Compact(); + } iBatched.Close(); iBatched_SuidHashID.Close(); CloseDb(); @@ -1004,9 +1007,19 @@ { BaflUtils::EnsurePathExistsL(iSingletons.Fs(), aFileName); - LEAVEIFERROR(iDatabase.Replace(iSingletons.Fs(), aFileName, KMTPFormat), - OstTrace0( TRACE_ERROR, CMTPOBJECTSTORE_CREATEDBL, " a new non-secure database create error!" )); - + iDbOpened = EFalse; + TInt err = iDatabase.Replace(iSingletons.Fs(), aFileName, KMTPFormat); + if ( KErrNone == err ) + { + iDbOpened = ETrue; + } + else + { + OstTrace0( TRACE_ERROR, CMTPOBJECTSTORE_CREATEDBL, + " a new non-secure database create error!" ); + User::Leave(err); + } + // Create table and index CreateHandleTableL(); CreateHandleIndexL(); diff -r 63cf70d3ecd8 -r 62b719e049f4 package_definition.xml --- a/package_definition.xml Fri Sep 17 08:34:51 2010 +0300 +++ b/package_definition.xml Mon Oct 04 01:38:39 2010 +0300 @@ -38,13 +38,13 @@ - + - + - + @@ -52,22 +52,22 @@ - + - + - + - + - + @@ -79,18 +79,18 @@ - + - + - + - +