CWimJavaUtils Class Reference

class CWimJavaUtils : public CActive

Reads Java provisioning information from Smart Card

WimClient.lib
Since
S60 3.2

Inherits from

Public Member Functions
~CWimJavaUtils()
IMPORT_C voidCancelGetACFSize()
IMPORT_C voidCancelGetACIFSize()
IMPORT_C voidCancelGetAuthObjsInfo()
IMPORT_C voidCancelInitialize()
IMPORT_C voidCancelRetrieveACFContent()
IMPORT_C voidCancelRetrieveACIFContent()
IMPORT_C voidCancelRetrieveWimLabelAndPath()
IMPORT_C voidGetACFSize(TInt &, const TDesC8 &, TRequestStatus &)
IMPORT_C voidGetACIFSize(TInt &, TRequestStatus &)
IMPORT_C voidGetAuthObjsInfo(const RArray< TInt > &, RArray< TJavaPINParams > &, TRequestStatus &)
IMPORT_C voidInitialize(TRequestStatus &)
IMPORT_C CWimJavaUtils *NewL()
IMPORT_C voidRetrieveACFContent(TDes8 &, const TDesC8 &, TRequestStatus &)
IMPORT_C voidRetrieveACIFContent(TDes8 &, TRequestStatus &)
IMPORT_C voidRetrieveWimLabelAndPath(TDes8 &, TDes8 &, TRequestStatus &)
Private Member Functions
CWimJavaUtils()
voidAllocMemoryForJavaProvStructL(const TInt)
voidAllocMemoryForPathAndLabelL()
voidConstructL()
voidDeallocMemoryFromJavaProvStruct()
voidDeallocMemoryFromPathAndLabel()
voidDoCancel()
TInt RunError(TInt)
voidRunL()
voidSignalOwnStatusAndComplete()
Inherited Functions
CActive::CActive(TInt)
CActive::Cancel()
CActive::Deque()
CActive::Extension_(TUint,TAny *&,TAny *)
CActive::IsActive()const
CActive::IsAdded()const
CActive::Priority()const
CActive::SetActive()
CActive::SetPriority(TInt)
CActive::~CActive()
CBase::CBase()
CBase::Delete(CBase *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Private Member Enumerations
enumTJavaUtilPhase {
EInitialize, EConnectClientSession, EInitializeWim, EInitializeDone, EGetACIFSize, EGetACIFSizeDone, ERetrieveACIFContent, ERetrieveACIFContentDone, EGetACFSize, EGetACFSizeDone, ERetrieveACFContent, ERetrieveACFContentDone, EGetAuthObjsInfo, EGetAuthObjsInfoDone, ERetrieveWimLabelAndPath, ERetrieveWimLabelAndPathDone
}
Inherited Enumerations
CActive:TPriority
Private Attributes
TBuf8< KPathMaxLength >iACFPath
RArray< TInt > *iAuthIdList
RArray< TJavaPINParams > *iAuthObjsInfoList
RWimMgmt *iClientSession
TRequestStatus *iClientStatus
RArray< TJavaPINParams > *iClientsAuthObjsInfoList
RWimCertMgmt *iConnectionHandle
TDes8 *iData
HBufC8 *iJavaProvBuf
TPtr8 *iJavaProvBufPtr
TDes8 *iLabel
HBufC8 *iLabelBuf
TPtr8 *iLabelBufPtr
TDes8 *iPath
HBufC8 *iPathBuf
TPtr8 *iPathBufPtr
TJavaUtilPhase iPhase
TInt *iSize
TInt iWimStartErr
Inherited Attributes
CActive::iStatus

Constructor & Destructor Documentation

CWimJavaUtils()

CWimJavaUtils()[private]

C++ default constructor.

~CWimJavaUtils()

IMPORT_C~CWimJavaUtils()[virtual]

Destructor

Member Functions Documentation

AllocMemoryForJavaProvStructL(const TInt)

voidAllocMemoryForJavaProvStructL(const TIntaDataLength)[private]

Allocates memory for member variables, which are needed in Java Provisioning struct.

Parameters

const TInt aDataLength-The length of the data to be allocated

AllocMemoryForPathAndLabelL()

voidAllocMemoryForPathAndLabelL()[private]

Allocates memory for path and label

CancelGetACFSize()

IMPORT_C voidCancelGetACFSize()

Cancels outgoing GetACFSize operation.

CancelGetACIFSize()

IMPORT_C voidCancelGetACIFSize()

Cancels outgoing GetACIFSize operation.

CancelGetAuthObjsInfo()

IMPORT_C voidCancelGetAuthObjsInfo()

Cancel outgoing GetAuthObjsInfo

CancelInitialize()

IMPORT_C voidCancelInitialize()

Cancels outgoing Initialize operation.

CancelRetrieveACFContent()

IMPORT_C voidCancelRetrieveACFContent()

Cancels outgoing Retrieve operation.

CancelRetrieveACIFContent()

IMPORT_C voidCancelRetrieveACIFContent()

Cancels outgoing Retrieve operation.

CancelRetrieveWimLabelAndPath()

IMPORT_C voidCancelRetrieveWimLabelAndPath()

Cancel outgoing Retrieve operation

ConstructL()

voidConstructL()[private]

Symbian constructor

DeallocMemoryFromJavaProvStruct()

voidDeallocMemoryFromJavaProvStruct()[private]

Deallocates memory from member variables

DeallocMemoryFromPathAndLabel()

voidDeallocMemoryFromPathAndLabel()[private]

Deallocates memory from path and label

DoCancel()

voidDoCancel()[private, virtual]

Cancellation function Deallocates member variables and completes client status with KErrCancel error code.

GetACFSize(TInt &, const TDesC8 &, TRequestStatus &)

IMPORT_C voidGetACFSize(TInt &aSize,
const TDesC8 &aACFPath,
TRequestStatus &aStatus
)

Fetches the size of ACF

Parameters

TInt & aSizeThe lenght of ACF
const TDesC8 & aACFPathThe path of ACF on smart card
TRequestStatus & aStatusIndicates the result of this call.

GetACIFSize(TInt &, TRequestStatus &)

IMPORT_C voidGetACIFSize(TInt &aSize,
TRequestStatus &aStatus
)

Fetches the size of ACIF. This information can be used as a notification of existing of provisioning information. If the size is not included in Smart Card's DODF-JavaPROV file then the full length of the file containing the provisioning information is returned.

Parameters

TInt & aSizeThe length of ACIF
TRequestStatus & aStatusIndicates the result of this call. KErrNone, no errors. NOTE: size can still be 0 indicating that no provisioning information was found. If aSize > 0 it means that provisioning information was found. KErrNoMemory, No memory KErrGeneral, any other error

GetAuthObjsInfo(const RArray< TInt > &, RArray< TJavaPINParams > &, TRequestStatus &)

IMPORT_C voidGetAuthObjsInfo(const RArray< TInt > &aAuthIdList,
RArray< TJavaPINParams > &aAuthObjsInfoList,
TRequestStatus &aStatus
)

Get the Authobj information

Parameters

const RArray< TInt > & aAuthIdListList of AuthObject ID
RArray< TJavaPINParams > & aAuthObjsInfoListList of AuthObject Info
TRequestStatus & aStatusIndicates the result of this call.

Initialize(TRequestStatus &)

IMPORT_C voidInitialize(TRequestStatus &aStatus)

Initializes the WIM Server cache. This is the most time consuming call.

Parameters

TRequestStatus & aStatusIndicates the result of this call. Values: KErrNone, call was successull KErrNotFound, no WIM was found KErrNoMemory, no memory KErrGeneral, any other error

NewL()

IMPORT_C CWimJavaUtils *NewL()[static]

Two-phased constructor.

RetrieveACFContent(TDes8 &, const TDesC8 &, TRequestStatus &)

IMPORT_C voidRetrieveACFContent(TDes8 &aACFData,
const TDesC8 &aACFPath,
TRequestStatus &aStatus
)

Fetches the whole data of ACF file

Parameters

TDes8 & aACFDataACF binary data from smart card
const TDesC8 & aACFPathACF file path on smart card
TRequestStatus & aStatusIndicates the result of this call.

RetrieveACIFContent(TDes8 &, TRequestStatus &)

IMPORT_C voidRetrieveACIFContent(TDes8 &aACIFData,
TRequestStatus &aStatus
)

Fetches the whole data of ACIF file.

Parameters

TDes8 & aACIFDataACIF binary data from smart card
TRequestStatus & aStatusIndicates the result of this call. KErrNone, no errors. KErrNoMemory, No memory KErrGeneral, any other error

RetrieveWimLabelAndPath(TDes8 &, TDes8 &, TRequestStatus &)

IMPORT_C voidRetrieveWimLabelAndPath(TDes8 &aWimLabel,
TDes8 &aPath,
TRequestStatus &aStatus
)

Fetches the wim label and path

Parameters

TDes8 & aWimLabel
TDes8 & aPath
TRequestStatus & aStatusIndicates the result of this call.

RunError(TInt)

TInt RunError(TIntaError)[private, virtual]

The active scheduler calls this function if this active object's RunL() function leaves. Handles necessary cleanup and completes request with received error code.

Parameters

TInt aError-The error code which caused this function call.

RunL()

voidRunL()[private, virtual]

Different phases are handled here.

SignalOwnStatusAndComplete()

voidSignalOwnStatusAndComplete()[private]

Sets own iStatus to KRequestPending, and signals it with User::RequestComplete() -request. This gives chance active scheduler to run other active objects. After a quick visit in active scheduler, signal returns to RunL() and starts next phase of operation.

Member Enumerations Documentation

Enum TJavaUtilPhase

Enumerators

EInitialize
EConnectClientSession
EInitializeWim
EInitializeDone
EGetACIFSize
EGetACIFSizeDone
ERetrieveACIFContent
ERetrieveACIFContentDone
EGetACFSize
EGetACFSizeDone
ERetrieveACFContent
ERetrieveACFContentDone
EGetAuthObjsInfo
EGetAuthObjsInfoDone
ERetrieveWimLabelAndPath
ERetrieveWimLabelAndPathDone

Member Data Documentation

TBuf8< KPathMaxLength > iACFPath

TBuf8< KPathMaxLength >iACFPath[private]

RArray< TInt > * iAuthIdList

RArray< TInt > *iAuthIdList[private]

RArray< TJavaPINParams > * iAuthObjsInfoList

RArray< TJavaPINParams > *iAuthObjsInfoList[private]

RWimMgmt * iClientSession

RWimMgmt *iClientSession[private]

TRequestStatus * iClientStatus

TRequestStatus *iClientStatus[private]

RArray< TJavaPINParams > * iClientsAuthObjsInfoList

RArray< TJavaPINParams > *iClientsAuthObjsInfoList[private]

RWimCertMgmt * iConnectionHandle

RWimCertMgmt *iConnectionHandle[private]

TDes8 * iData

TDes8 *iData[private]

HBufC8 * iJavaProvBuf

HBufC8 *iJavaProvBuf[private]

TPtr8 * iJavaProvBufPtr

TPtr8 *iJavaProvBufPtr[private]

TDes8 * iLabel

TDes8 *iLabel[private]

HBufC8 * iLabelBuf

HBufC8 *iLabelBuf[private]

TPtr8 * iLabelBufPtr

TPtr8 *iLabelBufPtr[private]

TDes8 * iPath

TDes8 *iPath[private]

HBufC8 * iPathBuf

HBufC8 *iPathBuf[private]

TPtr8 * iPathBufPtr

TPtr8 *iPathBufPtr[private]

TJavaUtilPhase iPhase

TJavaUtilPhase iPhase[private]

TInt * iSize

TInt *iSize[private]

TInt iWimStartErr

TInt iWimStartErr[private]