Swi::RSisRegistrySession Class Reference

class Swi::RSisRegistrySession : public RSessionBase

External client registry session interface

Inherits from

Public Member Functions
IMPORT_C TInt Connect ()
IMPORT_C CHashContainer * HashL (const TDesC &)
IMPORT_C void InstalledPackagesL ( RPointerArray < CSisRegistryPackage > &)
IMPORT_C void InstalledUidsL ( RArray < TUid > &)
IMPORT_C TBool IsInstalledL ( TUid )
IMPORT_C TBool IsInstalledL ( TDesC8 &)
IMPORT_C TBool IsSidPresentL ( TUid )
IMPORT_C TBool ModifiableL (const TDesC &)
IMPORT_C void RecoverL ()
IMPORT_C void RemovablePackagesL ( RPointerArray < CSisRegistryPackage > &)
IMPORT_C void RetrieveLogFileL ( RPointerArray < CLogEntry > &)
IMPORT_C void SidToFileNameL ( TUid , TDes &)
IMPORT_C void SidToFileNameL ( TUid , TDes &, TDriveUnit )
IMPORT_C CSisRegistryPackage * SidToPackageL ( TUid )
Protected Member Functions
HBufC8 * SendReceiveBufferLC ( TInt )
HBufC8 * SendReceiveBufferLC ( TInt , TPtrC8 )
HBufC8 * SendReceiveBufferLC ( TInt , const TDesC &)
HBufC8 * SendReceiveBufferLC ( TInt , TPtrC8 , TInt )
Inherited Functions
RHandleBase::Attributes()const
RHandleBase::BTraceId()const
RHandleBase::Close()
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)
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()
Inherited Enumerations
RHandleBase:TAttributes
RSessionBase:TAttachMode
Inherited Attributes
RHandleBase::iHandle

Member Functions Documentation

Connect()

IMPORT_C TInt Connect ( )

Connect to the server, attempt to start it if it is not yet running

HashL(const TDesC &)

IMPORT_C CHashContainer * HashL ( const TDesC & aFileName )

Returns a pointer to the hash for this file

Parameters

const TDesC & aFileName The filename (incl full path) to be searched for

InstalledPackagesL(RPointerArray< CSisRegistryPackage > &)

IMPORT_C void InstalledPackagesL ( RPointerArray < CSisRegistryPackage > & aPackages )

Returns an array of the curently installed packages (including augmentations).

capability
ReadUserData

Parameters

RPointerArray < CSisRegistryPackage > & aPackages The array of installed packages

InstalledUidsL(RArray< TUid > &)

IMPORT_C void InstalledUidsL ( RArray < TUid > & aUids )

Returns an array of installed uids (excludes augmentations). The array is supplied by the client which is then populated. There should be no assumption about the order in which the uids are put in it as it is implementation dependent.

capability
ReadUserData

Parameters

RArray < TUid > & aUids The array object to be populated.

IsInstalledL(TUid)

IMPORT_C TBool IsInstalledL ( TUid aUid )

Checks whether or not the package identified by this UID is installed.

Parameters

TUid aUid The uid to search for

IsInstalledL(TDesC8 &)

IMPORT_C TBool IsInstalledL ( TDesC8 & aController )

Checks whether or not the package, identified by this controller is installed.

Parameters

TDesC8 & aController The controller (as raw binary representation) to search for

IsSidPresentL(TUid)

IMPORT_C TBool IsSidPresentL ( TUid aSid )

Queries whether the supplied SID is associated with any package on the device.

Parameters

TUid aSid The executable's SID.

ModifiableL(const TDesC &)

IMPORT_C TBool ModifiableL ( const TDesC & aFileName )
Query whether or not a file is tagged as modifiable.
Note:

The hash value for non-modifiable content should stay the same.

Parameters

const TDesC & aFileName The filename (incl full path) to be used to search the entries

RecoverL()

IMPORT_C void RecoverL ( )

Checks to see if a recovery needs to take place. If so, failed transactions are rolled back, and the cache regenerated.

RemovablePackagesL(RPointerArray< CSisRegistryPackage > &)

IMPORT_C void RemovablePackagesL ( RPointerArray < CSisRegistryPackage > & aPackages )

Returns an array of the currently installed packages which can be removed (including augmentations).

capability
ReadUserData

Parameters

RPointerArray < CSisRegistryPackage > & aPackages The array of installed packages which are removable

RetrieveLogFileL(RPointerArray< CLogEntry > &)

IMPORT_C void RetrieveLogFileL ( RPointerArray < CLogEntry > & aLogFile )

Retrieve the enteries in log file

capability
ReadUserData

Parameters

RPointerArray < CLogEntry > & aLogFile The caller supplies an empty array of CLogEntry which is loaded with a enteries in log file. If Log file is not present then array count will be zero. The caller is responsible for deleting all memory.

SendReceiveBufferLC(TInt)

HBufC8 * SendReceiveBufferLC ( TInt aMessage ) [protected]

Parameters

TInt aMessage

SendReceiveBufferLC(TInt, TPtrC8)

HBufC8 * SendReceiveBufferLC ( TInt aMessage,
TPtrC8 aInputBuffer
) [protected]

Parameters

TInt aMessage
TPtrC8 aInputBuffer

SendReceiveBufferLC(TInt, const TDesC &)

HBufC8 * SendReceiveBufferLC ( TInt aMessage,
const TDesC & aInputDescriptor
) [protected]

Parameters

TInt aMessage
const TDesC & aInputDescriptor

SendReceiveBufferLC(TInt, TPtrC8, TInt)

HBufC8 * SendReceiveBufferLC ( TInt aMessage,
TPtrC8 aInputBuffer,
TInt aThirdArgument
) [protected]

Parameters

TInt aMessage
TPtrC8 aInputBuffer
TInt aThirdArgument

SidToFileNameL(TUid, TDes &)

IMPORT_C void SidToFileNameL ( TUid aSid,
TDes & aFileName
)

Queries the registry for an installed filename relating to a specific sid

Parameters

TUid aSid the sid of a file that was installed
TDes & aFileName on return the filename found

SidToFileNameL(TUid, TDes &, TDriveUnit)

IMPORT_C void SidToFileNameL ( TUid aSid,
TDes & aFileName,
TDriveUnit aDrive
)

Queries the registry for an installed filename relating to a specific sid This function will return only a sid that is associated to a specific drive. This function leaves with KErrNotFound if not exact macth is found ( Sid associated to drive)

Parameters

TUid aSid the sid of a file that was installed
TDes & aFileName on return the filename found
TDriveUnit aDrive specifies on which drive the sid is expected to be found.

SidToPackageL(TUid)

IMPORT_C CSisRegistryPackage * SidToPackageL ( TUid aSid )

Returns a pointer to package containing this Sid

Parameters

TUid aSid The Sid of an application for which the package is requested