|
||
class MSmlDmAdapter;
Abstract Device Management adapter. Implementations of this interface are able to map settings in device stores to portions of the Device Management Tree.
Defined in MSmlDmAdapter
:
AddNodeObjectL(const TDesC8 &,const TDesC8 &,TInt)
The function adds node object. In some cases an implementation of the function m...ChildURIListL(const TDesC8 &,const TDesC8 &,const CArrayFix< TSmlDmMappingInfo > &,TInt,TInt)
The function fetches URI list. An adapter returns the list of URI segments under...CommitAtomicL()
The function indicates successful end of Atomic command. The adapter should comm...CompleteOutstandingCmdsL()
The function tells the adapter that all the commands of the message that can be ...CopyCommandL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt)
The function implements copy command. The information about the success of the c...DDFStructureL(MSmlDmDDFObject &)
The function for filling the DDF structure of the adapter This function is only ...DDFVersionL(CBufBase &)
The function returns the current version of the DDF. By asking for current DDF v...DeleteObjectL(const TDesC8 &,const TDesC8 &,TInt)
The function deletes an object and its child objects. The SetStatusL should be u...EAlreadyExists
The command failed because the setting already exists in the store ECommitFailed
The commit command failed ECommitOk
The commit command was completed successfully EDiskFull
The command failed because the disk on which the device store resides is full EError
The command failed for an unspecified reason EInvalidObject
The command failed because the setting can't take the value being passed to the ...ENoMemory
The command failed because no memory could be allocated ENotFound
The command failed because no setting exists in the store which corresponds to t...EObjectInUse
The command failed because the setting is being used by another client EOk
The command was successful ERollbackFailed
The command could not be rolled back successfully ERollbackOk
The rollback command was completed successfully ETooLargeObject
The command failed because the setting value is too large to be accommodated in ...ExecuteCommandL(const TDesC8 &,const TDesC8 &,RWriteStream *&,const TDesC8 &,TInt)
The function implements execute command. The information about the success of th...ExecuteCommandL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt)
The function implements execute command. The information about the success of th...ExtendedInterfaceL(TUid)
This function enables the adapter to instantiate any API extension to the adapte...FetchLeafObjectL(const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt,TInt)
The function fetches data of a leaf object. The SetStatusL should be used as des...FetchLeafObjectSizeL(const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt,TInt)
The function fetches the size of the data of a leaf object. The size is in bytes...RollbackAtomicL()
The function indicates unsuccessful end of Atomic command. The adapter should ro...StartAtomicL()
The function indicates start of Atomic command. StreamCommittedL(RWriteStream &)
Called when stream returned from UpdateLeafObjectL or ExecuteCommandL has been w...StreamingSupport(TInt &)
Returns ETrue if adapter supports streaming otherwise EFalse. TError
An enumeration of the error codes which may be returned by DM adapters. UpdateLeafObjectL(const TDesC8 &,const TDesC8 &,RWriteStream *&,const TDesC8 &,TInt)
The function creates new leaf objects, or replaces data in existing leaf objects...UpdateLeafObjectL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt)
The function creates new leaf objects, or replaces data in existing leaf objects...IMPORT_C virtual TAny* ExtendedInterfaceL(TUid aInterfaceUid);
This function enables the adapter to instantiate any API extension to the adapter that is necessary for that adapter to function prpoperly.
|
|
virtual void DDFVersionL(CBufBase &aVersion)=0;
The function returns the current version of the DDF. By asking for current DDF versions from adapters the DM Module can control possible changes in the data structure and send the changed DDF description to a management server. This function is always called after DDFStructureL.
|
virtual void DDFStructureL(MSmlDmDDFObject &aDDF)=0;
The function for filling the DDF structure of the adapter This function is only called once, immediately after the adapter is created.
|
virtual void UpdateLeafObjectL(const TDesC8 &aURI, const TDesC8 &aLUID, const TDesC8 &aObject, const TDesC8 &aType, TInt aStatusRef)=0;
The function creates new leaf objects, or replaces data in existing leaf objects. The information about the success of the
command should be returned by calling the SetStatusL function of the MSmlDmCallback
callback interface. This makes it possible to buffer the commands. However, all the status codes for buffered commands must
be returned at the latest when the adapter's MSmlDmAdapter::CompleteOutstandingCmdsL()
is called.
|
virtual void UpdateLeafObjectL(const TDesC8 &aURI, const TDesC8 &aLUID, RWriteStream *&aStream, const TDesC8 &aType, TInt
aStatusRef)=0;
The function creates new leaf objects, or replaces data in existing leaf objects, in the case where data is large enough to
be streamed. The information about the success of the command should be returned by calling the SetStatusL function of the
MSmlDmCallback
callback interface. This makes it possible to buffer the commands. However, all the status codes for buffered commands must
be returned at the latest when the MSmlDmAdapter::CompleteOutstandingCmdsL()
method of the adapter is called.
|
virtual void DeleteObjectL(const TDesC8 &aURI, const TDesC8 &aLUID, TInt aStatusRef)=0;
The function deletes an object and its child objects. The SetStatusL should be used as described in MSmlDmAdapter::UpdateLeafObjectL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt)
|
virtual void FetchLeafObjectL(const TDesC8 &aURI, const TDesC8 &aLUID, const TDesC8 &aType, TInt aResultsRef, TInt aStatusRef)=0;
The function fetches data of a leaf object. The SetStatusL should be used as described in MSmlDmAdapter::UpdateLeafObjectL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt)
. The data is returned by using the SetResultsL function of MSmlCallback callback interface, and may be streamed.
|
virtual void FetchLeafObjectSizeL(const TDesC8 &aURI, const TDesC8 &aLUID, const TDesC8 &aType, TInt aResultsRef, TInt aStatusRef)=0;
The function fetches the size of the data of a leaf object. The size is in bytes, and must reflect the number of bytes that
will be transferred when the framework calls FetchLeafObjectL. The SetStatusL should be used as described in MSmlDmAdapter::FetchLeafObjectL(const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt,TInt)
. The size value is returned by using the SetResultsL function of MSmlCallback callback interface, and must be a decimal integer
expressed as a string, eg. "1234". Results from this call MUST NOT be streamed.
|
virtual void ChildURIListL(const TDesC8 &aURI, const TDesC8 &aLUID, const CArrayFix< TSmlDmMappingInfo > &aPreviousURISegmentList,
TInt aResultsRef, TInt aStatusRef)=0;
The function fetches URI list. An adapter returns the list of URI segments under the given URI separated by slash ("/"). The URI segment names for new objects must be given by the adapter. The list is returned by calling the SetResultsL function of MSmlCallback callback interface. Results from this call MUST NOT be streamed.
|
virtual void AddNodeObjectL(const TDesC8 &aURI, const TDesC8 &aParentLUID, TInt aStatusRef)=0;
The function adds node object. In some cases an implementation of the function may be an empty function, if the node object
does not need concrete database update. Still this function may be helpful to an adapter, i.e. in passing mapping LUID of
the node to DM Module. The SetStatusL should be used as described in MSmlDmAdapter::UpdateLeafObjectL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const TDesC8 &,TInt)
|
virtual void ExecuteCommandL(const TDesC8 &aURI, const TDesC8 &aLUID, const TDesC8 &aArgument, const TDesC8 &aType, TInt aStatusRef)=0;
The function implements execute command. The information about the success of the command should be returned by calling SetStatusL
function of MSmlDmCallback
callback interface. This makes it possible to buffer the commands. However, all the status codes for buffered commands must
be returned at the latest when the MSmlDmAdapter::CompleteOutstandingCmdsL()
of adapter is called.
|
virtual void ExecuteCommandL(const TDesC8 &aURI, const TDesC8 &aLUID, RWriteStream *&aStream, const TDesC8 &aType, TInt aStatusRef)=0;
The function implements execute command. The information about the success of the command should be returned by calling SetStatusL
function of MSmlDmCallback
callback interface. This makes it possible to buffer the commands. However, all the status codes for buffered commands must
be returned at the latest when the MSmlDmAdapter::CompleteOutstandingCmdsL()
of the adapter is called.
|
virtual void CopyCommandL(const TDesC8 &aTargetURI, const TDesC8 &aTargetLUID, const TDesC8 &aSourceURI, const TDesC8 &aSourceLUID,
const TDesC8 &aType, TInt aStatusRef)=0;
The function implements copy command. The information about the success of the command should be returned by calling SetStatusL
function of MSmlDmCallback
callback interface. This makes it possible to buffer the commands. However, all the status codes for buffered commands must
be returned at the latest when the MSmlDmAdapter::CompleteOutstandingCmdsL()
of adapter is called.
|
virtual void CommitAtomicL()=0;
The function indicates successful end of Atomic command. The adapter should commit all changes issued between MSmlDmAdapter::StartAtomicL()
and MSmlDmAdapter::CommitAtomicL()
virtual void RollbackAtomicL()=0;
The function indicates unsuccessful end of Atomic command. The adapter should rollback all changes issued between MSmlDmAdapter::StartAtomicL()
and MSmlDmAdapter::RollbackAtomicL()
. If rollback fails for a command, adapter should use SetStatusL() to indicate it.
virtual TBool StreamingSupport(TInt &aItemSize)=0;
Returns ETrue if adapter supports streaming otherwise EFalse.
|
|
virtual void StreamCommittedL(RWriteStream &aStream)=0;
Called when stream returned from UpdateLeafObjectL or ExecuteCommandL has been written to and committed. Not called when fetching item.
|
virtual void CompleteOutstandingCmdsL()=0;
The function tells the adapter that all the commands of the message that can be passed to the adapter have now been passed. This indciates that the adapter must supply status codes and results to any buffered commands. This must be done at latest by the time this function returns. This function is used at the end of SyncML messages, and during processing of Atomic. In the case of Atomic processing, the function will be followed by a call to CommitAtomicL or RollbackAtomicL.
TError
An enumeration of the error codes which may be returned by DM adapters.
|