UserPromptService::RUpsManagement Class Reference

#include <ups/upsclient.h>

Link against: upsmanagement.lib

class UserPromptService::RUpsManagement : public RScsClientBase

Inherits from

Public Member Functions
RUpsManagement()
IMPORT_C voidCancelAndCloseView()
IMPORT_C voidCancelNotifyPolicyFilesChanged()
IMPORT_C voidCancelUpdateDecision()
IMPORT_C voidClose()
IMPORT_C TIntConnect()
IMPORT_C voidCreateView(const CDecisionFilter &, TRequestStatus &)
IMPORT_C voidDeleteDatabaseL()
IMPORT_C voidDeleteDecisionsForExeL(const TSecureId &)
IMPORT_C CDecisionRecord *NextMatchL()
IMPORT_C voidNotifyPluginsMayHaveChangedL()
IMPORT_C voidNotifyPolicyFilesChanged(TRequestStatus &)
IMPORT_C voidRemoveDecisionsL(const CDecisionFilter &)
IMPORT_C voidUpdateDecision(TUint32, TBool, TRequestStatus &)
Inherited Attributes
RHandleBase::iHandle
Inherited Enumerations
RHandleBase:TAttributes
RSessionBase:TAttachMode
Inherited Functions
RHandleBase::Attributes()const
RHandleBase::BTraceId()const
RHandleBase::DoExtendedClose()
RHandleBase::Duplicate(const RThread &,TOwnerType)
RHandleBase::FullName()const
RHandleBase::FullName(TDes &)const
RHandleBase::Handle()const
RHandleBase::HandleInfo(THandleInfo *)
RHandleBase::Name()const
RHandleBase::NotifyDestruction(TRequestStatus &)
RHandleBase::Open(const TFindHandleBase &,TOwnerType)
RHandleBase::OpenByName(const TDesC &,TOwnerType,TInt)
RHandleBase::RHandleBase()
RHandleBase::RHandleBase(TInt)
RHandleBase::SetHandle(TInt)
RHandleBase::SetHandleNC(TInt)
RScsClientBase::CallSessionFunction(TInt)const
RScsClientBase::CallSessionFunction(TInt,const TIpcArgs &)const
RScsClientBase::CallSessionFunction(TInt,const TIpcArgs &,TRequestStatus &)const
RScsClientBase::CancelSessionFunction(TInt)const
RScsClientBase::Connect(const TDesC &,const TVersion &,const TDesC &,const TUidType &)
RScsClientBase::RScsClientBase()
RScsClientBase::ResetServerHeapFail()
RScsClientBase::SetServerHeapFail(TInt)
RScsClientBase::ShutdownServer()
RSessionBase::CreateSession(RServer2,const TVersion &)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TRequestStatus *)
RSessionBase::Open(RMessagePtr2,TInt,TOwnerType)
RSessionBase::Open(RMessagePtr2,TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Open(TInt,TOwnerType)
RSessionBase::Open(TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Send(TInt)const
RSessionBase::Send(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt)const
RSessionBase::SendReceive(TInt,TRequestStatus &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const
RSessionBase::SetReturnedHandle(TInt)
RSessionBase::SetReturnedHandle(TInt,RHandleBase &)
RSessionBase::SetReturnedHandle(TInt,const TSecurityPolicy &)
RSessionBase::ShareAuto()
RSessionBase::ShareProtected()

Detailed Description

This class supports the management API for the UPS.

Constructor & Destructor Documentation

RUpsManagement ( )

IMPORT_CRUpsManagement()

This constructor provides a single point of definition from which the superclass constructor is called.

Member Function Documentation

CancelAndCloseView ( )

IMPORT_C voidCancelAndCloseView()

Close down a view. This can also be used to cancel an outstanding CreateView request.

Capability
ReadDeviceData

CancelNotifyPolicyFilesChanged ( )

IMPORT_C voidCancelNotifyPolicyFilesChanged()

Cancel a previous call to NotifyPolicyFilesChanged.

Normally this functions should not be used, it is only present for testing the handling of abnormal events.

Capability
SWIobserver plugin SID only

CancelUpdateDecision ( )

IMPORT_C voidCancelUpdateDecision()

Cancel an outstanding UpdateDecision request.

Normally this will not be used because an UpdateDecision call will complete very quickly, but internally the request is asynchronous and exposing the cancel API allows the cancel code path to be tested.

Capability
AllFiles

Close ( )

IMPORT_C voidClose()

Reimplemented from RScsClientBase::Close()

Cleanup and call RScsClientBase::Close

Connect ( )

IMPORT_C TIntConnect()

Connect to the UPS server.

Return Value
Symbian OS error code where KErrNone indicates success and any other value indicates failure.

CreateView ( const CDecisionFilter &, TRequestStatus & )

IMPORT_C voidCreateView(const CDecisionFilter &aFilter,
TRequestStatus &aStatus
)

Creates a view for records which match the supplied CDecisionFilter.

If the CDecisionFilter is created using the constructor which specifies all fields (or all fields are set), then an exact match will be searched for. If the CDecisionFilter is created without parameters, then any fields which are not set will match any record.

Only one view can be active in a single RUpsManagement session at any one time.

Simultaneous database updates, either from this management session, another session or the main UPS operation may cause the query to be aborted with KErrAbort.

When you are finished with the view you should call CancelAndCloseView (otherwise you will not be able to create a new view).

Parameters
aFilterSpecifies the filter to be matched.
Capability
ReadDeviceData

DeleteDatabaseL ( )

IMPORT_C voidDeleteDatabaseL()

Deletes all stored UPS decisions.

Capability
WriteDeviceData

DeleteDecisionsForExeL ( const TSecureId & )

IMPORT_C voidDeleteDecisionsForExeL(const TSecureId &aExeSid)

The following three APIs are only for use by the UPS swi observer plugin and are discouraged for general use

Delete all decisions in the database for the specified executable.

Parameters
aExeSidThe SID of the executable which has been deleted.
Capability
SWIobserver plugin SID only

NextMatchL ( )

IMPORT_C CDecisionRecord *NextMatchL()

Returns the next matching record in the view created with CreateViewL.

Simultaneous database updates, either from this management session, another session or the main UPS operation may cause the query to be aborted with KErrAbort.

When you are finished with the view you should call CancelAndCloseView.

Return Value
record ptr, or 0 if there are no more matching records. Leaves for other errors.
Capability
ReadDeviceData

NotifyPluginsMayHaveChangedL ( )

IMPORT_C voidNotifyPluginsMayHaveChangedL()

Notify the UPS that an ECOM plugin has been installed somewhere, which may be an evaluator. The UPS will reload all ECOM plugins ASAP.

Capability
SWIobserver plugin SID only

NotifyPolicyFilesChanged ( TRequestStatus & )

IMPORT_C voidNotifyPolicyFilesChanged(TRequestStatus &aStatus)

Policy files have been added, changed or deleted.

The UPS server will rebuild its policy file cache and delete decisions which relate to policy files which are no longer active (ie. have been deleted, or eclipsed by a policy file with a different major version number).

Capability
SWIobserver plugin SID only

RemoveDecisionsL ( const CDecisionFilter & )

IMPORT_C voidRemoveDecisionsL(const CDecisionFilter &aFilter)

Removes all records which match the supplied CDecisionFilter.

The filter can match/delete multiple records in one operation.

Parameters
aFilterSpecifies the records to be deleted.
Capability
WriteDeviceData

UpdateDecision ( TUint32, TBool, TRequestStatus & )

IMPORT_C voidUpdateDecision(TUint32aRecordId,
TBoolaAllow,
TRequestStatus &aStatus
)

Updates the single record which matches the unique record ID.

This API ONLY updates the CDecisionRecord result field. The only legal values are ETrue (always) or EFalse (never)

Parameters
aRecordIdSpecifies the single record to update.
aAllowAllow or reject the request.
Capability
AllFiles