Swi::MSisDataProvider Class Reference

class Swi::MSisDataProvider

Interface that provides package file data to Software Install.

Public Member Functions
~MSisDataProvider ()
TInt ExecuteDrmIntent ( ContentAccess::TIntent )
void OpenDrmContentL ( ContentAccess::TIntent )
TInt Read ( TDes8 &)
TInt Read ( TDes8 &, TInt )
TInt Seek ( TSeek , TInt64 &)

Constructor & Destructor Documentation

~MSisDataProvider()

~MSisDataProvider ( ) [inline, virtual]

Empty virtual destructor allows us to delete implementations via an interface pointer.

Member Functions Documentation

ExecuteDrmIntent(ContentAccess::TIntent)

TInt ExecuteDrmIntent ( ContentAccess::TIntent aIntent ) [inline, virtual]

This function is called by Software Install, at the end of a successful installation, in order to update the rights of the installed SISX file. A DRM enabled implementation of this interface should execute the rights on the content using the intent provided. If DRM is not intended to be supported then this function does not need to be implemented.

Parameters

ContentAccess::TIntent aIntent The intent which the DRM enabled data provider should use when executing the rights of the content.

OpenDrmContentL(ContentAccess::TIntent)

void OpenDrmContentL ( ContentAccess::TIntent aIntent ) [inline, virtual]

This function is called by Software Install in order to open any DRM content. A DRM enabled implementation of this interface should open the content, using the intent provided, and evaluate the rights. This function should leave with an error if the rights evaluation fails. An implementation of this interface that does not support DRM does not need to implement this function.

Parameters

ContentAccess::TIntent aIntent The intent which the DRM enabled data provider should use when evaluating the rights of the content.

Read(TDes8 &)

TInt Read ( TDes8 & aDes ) [pure virtual]

Reads as much data as fits into the supplied descriptor. Note, that if descriptor is larger than the data available, no error is returned. The descriptor's length is set according to the number of bytes read into it.

Parameters

TDes8 & aDes Descriptor that receives the data

Read(TDes8 &, TInt)

TInt Read ( TDes8 & aDes,
TInt aLength
) [pure virtual]

Reads the specified amount of data into a descriptor. Note, that if aLength is larger than the data available, no error is returned. The descriptor's length is set according to the number of bytes read into it.

Parameters

TDes8 & aDes Descriptor that receives the data
TInt aLength Amount of data to read in bytes

Seek(TSeek, TInt64 &)

TInt Seek ( TSeek aMode,
TInt64 & aPos
) [pure virtual]

Seeks to the specified position in the data stream. RFile::Seek

Parameters

TSeek aMode Seek mode: ESeekCurrent Seek from the current position ESeekStart Seek from the beginning of the file ESeekEnd Seek from the end of the file ESeekAddress Not supported
TInt64 & aPos The offset relative to aMode to which to seek. On return, this is set to the offset relative to the start of the file.