equal
deleted
inserted
replaced
40 #include <data_caging_path_literals.hrh> // KDC_MTM_RESOURCE_DIR |
40 #include <data_caging_path_literals.hrh> // KDC_MTM_RESOURCE_DIR |
41 #include <uriutils.h> // UriUtils and so on |
41 #include <uriutils.h> // UriUtils and so on |
42 #include <PushMtmUi.rsg> // for R_PUSHMISC_UNK_SENDER |
42 #include <PushMtmUi.rsg> // for R_PUSHMISC_UNK_SENDER |
43 #include <RoHandler.rsg> // for R_QTN_DRM_MGR_INB_TITLE |
43 #include <RoHandler.rsg> // for R_QTN_DRM_MGR_INB_TITLE |
44 #include <sysutil.h> // Disk space checking |
44 #include <sysutil.h> // Disk space checking |
|
45 #include <featmgr.h> // Feature Manager |
45 |
46 |
46 #include "CRoHandler.h" |
47 #include "CRoHandler.h" |
47 #include "RoMtmCli.h" // for CRightsObjectMtmClient |
48 #include "RoMtmCli.h" // for CRightsObjectMtmClient |
48 #include "RoapSyncWrapper.h" |
49 #include "RoapSyncWrapper.h" |
49 |
50 |
396 ( |
397 ( |
397 //None. |
398 //None. |
398 ) |
399 ) |
399 : CPushHandlerBase(), |
400 : CPushHandlerBase(), |
400 iFirstTime( ETrue ), iPushMsg( NULL ), iMsvId( NULL ), |
401 iFirstTime( ETrue ), iPushMsg( NULL ), iMsvId( NULL ), |
401 iPutRightsToInbox( ETrue ) |
402 iPutRightsToInbox( ETrue ), iFeatureManagerFound( EFalse ) |
402 { |
403 { |
403 } |
404 } |
404 |
405 |
405 /* |
406 /* |
406 ----------------------------------------------------------------------------- |
407 ----------------------------------------------------------------------------- |
426 TRAPD( r, WriteL( _L8( "ConstructL" ) ) ); |
427 TRAPD( r, WriteL( _L8( "ConstructL" ) ) ); |
427 #endif |
428 #endif |
428 |
429 |
429 CRepository* repository( NULL ); |
430 CRepository* repository( NULL ); |
430 TInt err( KErrNone ); |
431 TInt err( KErrNone ); |
431 |
432 TInt ret( KErrNone ); |
|
433 |
|
434 TRAP( ret, FeatureManager::InitializeLibL() ); |
|
435 if ( !ret ) |
|
436 { |
|
437 iFeatureManagerFound = ETrue; |
|
438 } |
|
439 |
432 User::LeaveIfError( iFs.Connect() ); |
440 User::LeaveIfError( iFs.Connect() ); |
433 |
441 |
434 // create drm |
442 // create drm |
435 iMessageParser = CDRMMessageParser::NewL(); |
443 iMessageParser = CDRMMessageParser::NewL(); |
436 |
444 |
508 |
516 |
509 iMsvId = NULL; |
517 iMsvId = NULL; |
510 |
518 |
511 // session must be deleted last (and constructed first) |
519 // session must be deleted last (and constructed first) |
512 delete iSession; |
520 delete iSession; |
513 |
521 |
|
522 if ( iFeatureManagerFound ) |
|
523 { |
|
524 FeatureManager::UnInitializeLib(); |
|
525 } |
|
526 |
514 #ifdef _DRM_TESTING |
527 #ifdef _DRM_TESTING |
515 TRAP( r, WriteL( _L8( "~CRoHandler-End" ) ) ); |
528 TRAP( r, WriteL( _L8( "~CRoHandler-End" ) ) ); |
516 #endif |
529 #endif |
517 } |
530 } |
518 |
531 |
655 iMsgType = CheckMessageTypeL(); |
668 iMsgType = CheckMessageTypeL(); |
656 switch( iMsgType ) |
669 switch( iMsgType ) |
657 { |
670 { |
658 case EOma1Ro: |
671 case EOma1Ro: |
659 { |
672 { |
660 HandleRightsMessageL(); |
673 if ( iFeatureManagerFound && FeatureManager::FeatureSupported( |
|
674 KFeatureIdFfOmadrm1FullSupport ) ) |
|
675 { |
|
676 HandleRightsMessageL(); |
|
677 } |
661 break; |
678 break; |
662 } |
679 } |
663 #ifdef __DRM_OMA2 |
680 #ifdef __DRM_OMA2 |
664 case EOma2RoapTrigger: |
681 case EOma2RoapTrigger: |
665 case EOma2RoapTriggerRoAcquisition: |
682 case EOma2RoapTriggerRoAcquisition: |
666 { |
683 if ( iFeatureManagerFound && FeatureManager::FeatureSupported( |
667 HandleRoapTriggerL(); |
684 KFeatureIdFfOmadrm2Support ) ) |
|
685 { |
|
686 HandleRoapTriggerL(); |
|
687 } |
|
688 break; |
|
689 case EOma2RoapTriggerMetering: |
|
690 if ( iFeatureManagerFound && FeatureManager::FeatureSupported( |
|
691 KFeatureIdFfOmadrm2Support ) ) |
|
692 { |
|
693 HandleMeteringTriggerSilentlyL(); |
|
694 } |
668 break; |
695 break; |
669 } |
696 case EOma2RoapPdu: |
670 case EOma2RoapTriggerMetering: |
697 if ( iFeatureManagerFound && FeatureManager::FeatureSupported( |
671 { |
698 KFeatureIdFfOmadrm2Support ) ) |
672 HandleMeteringTriggerSilentlyL(); |
699 { |
|
700 HandleRoapPduL(); |
|
701 } |
673 break; |
702 break; |
674 } |
|
675 case EOma2RoapPdu: |
|
676 { |
|
677 HandleRoapPduL(); |
|
678 break; |
|
679 } |
|
680 #endif |
703 #endif |
681 default: |
704 default: |
682 { |
705 { |
683 User::Leave( KErrNotSupported ); |
706 User::Leave( KErrNotSupported ); |
684 } |
707 } |
1398 } |
1421 } |
1399 |
1422 |
1400 switch( iMsgType ) |
1423 switch( iMsgType ) |
1401 { |
1424 { |
1402 case EOma1Ro: |
1425 case EOma1Ro: |
1403 { |
1426 { |
1404 HandleRightsMessageL(); |
1427 if ( iFeatureManagerFound && FeatureManager::FeatureSupported( |
|
1428 KFeatureIdFfOmadrm1FullSupport ) ) |
|
1429 { |
|
1430 HandleRightsMessageL(); |
|
1431 } |
1405 break; |
1432 break; |
1406 } |
1433 } |
1407 #ifdef __DRM_OMA2 |
1434 #ifdef __DRM_OMA2 |
1408 case EOma2RoapTrigger: |
1435 case EOma2RoapTrigger: |
1409 case EOma2RoapTriggerRoAcquisition: |
1436 case EOma2RoapTriggerRoAcquisition: |
1410 { |
1437 if ( iFeatureManagerFound && FeatureManager::FeatureSupported( |
1411 HandleRoapTriggerL(); |
1438 KFeatureIdFfOmadrm2Support ) ) |
|
1439 { |
|
1440 HandleRoapTriggerL(); |
|
1441 } |
1412 break; |
1442 break; |
1413 } |
|
1414 case EOma2RoapPdu: |
1443 case EOma2RoapPdu: |
1415 { |
1444 if ( iFeatureManagerFound && FeatureManager::FeatureSupported( |
1416 HandleRoapPduL(); |
1445 KFeatureIdFfOmadrm2Support ) ) |
|
1446 { |
|
1447 HandleRoapPduL(); |
|
1448 } |
1417 break; |
1449 break; |
1418 } |
|
1419 #endif |
1450 #endif |
1420 default: |
1451 default: |
1421 { |
1452 { |
1422 User::Leave( KErrNotSupported ); |
1453 User::Leave( KErrNotSupported ); |
1423 } |
1454 } |