MSmlDmAdapter Class Reference
#include
<smldmadapter.h>
Link against: nsmldmhostserver.lib
Public Member Functions |
---|
pure virtual void | AddNodeObjectL(const TDesC8 &, const TDesC8 &, TInt) |
pure virtual void | ChildURIListL(const TDesC8 &, const TDesC8 &, const CArrayFix< TSmlDmMappingInfo > &, TInt, TInt) |
pure virtual void | CommitAtomicL() |
pure virtual void | CompleteOutstandingCmdsL() |
pure virtual void | CopyCommandL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt) |
pure virtual void | DDFStructureL(MSmlDmDDFObject &) |
pure virtual void | DDFVersionL(CBufBase &) |
pure virtual void | DeleteObjectL(const TDesC8 &, const TDesC8 &, TInt) |
pure virtual void | ExecuteCommandL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt) |
pure virtual void | ExecuteCommandL(const TDesC8 &, const TDesC8 &, RWriteStream *&, const TDesC8 &, TInt) |
pure virtual void | FetchLeafObjectL(const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt, TInt) |
pure virtual void | FetchLeafObjectSizeL(const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt, TInt) |
pure virtual void | RollbackAtomicL() |
pure virtual void | StartAtomicL() |
pure virtual void | StreamCommittedL() |
pure virtual
TBool
| StreamingSupport(TInt &) |
pure virtual void | UpdateLeafObjectL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt) |
pure virtual void | UpdateLeafObjectL(const TDesC8 &, const TDesC8 &, RWriteStream *&, const TDesC8 &, TInt) |
Detailed Description
Abstract Device Management adapter. Implementations of this interface are able to map settings in device stores to portions of the Device Management Tree.
Member Enumeration Documentation
Enum TError
An enumeration of the error codes which may be returned by DM adapters.
Enumerator | Value | Description |
---|
EOk | 0 |
The command was successful
|
ENotFound | |
The command failed because no setting exists in the store which corresponds to the URI or LUID passed to the adapter
|
EInvalidObject | |
The command failed because the setting can't take the value being passed to the adapter
|
EAlreadyExists | |
The command failed because the setting already exists in the store
|
ETooLargeObject | |
The command failed because the setting value is too large to be accommodated in the store
|
EDiskFull | |
The command failed because the disk on which the device store resides is full
|
EError | |
The command failed for an unspecified reason
|
ERollbackFailed | |
The command could not be rolled back successfully
|
EObjectInUse | |
The command failed because the setting is being used by another client
|
ENoMemory | |
The command failed because no memory could be allocated
|
ECommitOK | |
The command succesfully committed
|
ERollbackOK | |
The command rolled back succesfully
|
ECommitFailed | |
The commit of command failed
|
ENotAllowed | | |
EAcceptedForProcessing | | |
EExecSuccess | | |
EExecClientError | | |
EExecUserCancelled | | |
EExecDownloadFailed | | |
EExecAltDwnldAuthFail | | |
EExecDownFailOOM | | |
EExecInstallFailed | | |
EExecInstallOOM | | |
EExecPkgValidationFail | | |
EExecRemoveFailed | | |
EExecActivateFailed | | |
EExecDeactivateFailed | | |
EExecNotImplemented | | |
EExecUndefError | | |
EExecOperationReject | | |
EExecAltDwnldSrvError | | |
EExecAltDwnldSrvUnavailable | | |
Member Function Documentation
AddNodeObjectL ( const TDesC8 &, const TDesC8 &, TInt )
void | AddNodeObjectL | ( | const TDesC8 & | aURI, |
| const TDesC8 & | aParentLUID, |
| TInt | aStatusRef |
| ) | [pure virtual] |
The function adds node object. In some cases an implementation of the function may be 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 UpdateLeafObjectL()
Parameter | Description | aURI | URI of the object |
aParentLUID | LUID of the parent object (if the adapter have earlier returned LUID to the DM Module). |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
ChildURIListL ( const TDesC8 &, const TDesC8 &, const CArrayFix< TSmlDmMappingInfo > &, TInt, TInt )
The function fetches URI list. An adapter returns the list of URI segments under the given URI be 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.
Parameter | Description | aPreviousURISegmentList | URI list with mapping LUID information, which is known by DM engine. An adapter can use this information when verifying if old objects still exists. An adapter also knows what objects are new to DM engine and can provide LUID mapping for them. aPreviousURISegmentList parameter (see above) helps to recognise new objects. |
aResultsRef | Reference to correct results, i.e. this reference must be used when returning the result by calling the SetResultsL. |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
CommitAtomicL ( )
void | CommitAtomicL | ( | ) | [pure virtual] |
CompleteOutstandingCmdsL ( )
void | CompleteOutstandingCmdsL | ( | ) | [pure virtual] |
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.
CopyCommandL ( const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt )
void | CopyCommandL | ( | const TDesC8 & | aTargetURI, |
| const TDesC8 & | aTargetLUID, |
| const TDesC8 & | aSourceURI, |
| const TDesC8 & | aSourceLUID, |
| const TDesC8 & | aType, |
| TInt | aStatusRef |
| ) | [pure virtual] |
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 CompleteOutstandingCmdsL() of adapter is called.
Parameter | Description | aTargetURI | Target URI for the command |
aSourceURI | Source URI for the command |
aSourceLUID | LUID of the source object (if the adapter has earlier returned a LUID to the DM Module). |
aType | MIME type of the objects |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
DDFStructureL ( MSmlDmDDFObject & )
The function for filling the DDF structure of the adapter This function is only called once, immediately after the adapter is created.
DDFVersionL ( CBufBase & )
void | DDFVersionL | ( | CBufBase & | aVersion | ) | [pure virtual] |
The function returns current version of the DDF. By asking current DDF versions from adapters 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.
Parameter | Description | aVersion | DDF version of the adapter. (filled by the adapter) |
DeleteObjectL ( const TDesC8 &, const TDesC8 &, TInt )
void | DeleteObjectL | ( | const TDesC8 & | aURI, |
| const TDesC8 & | aLUID, |
| TInt | aStatusRef |
| ) | [pure virtual] |
The function deletes an object and its child objects. The SetStatusL should be used as described in UpdateLeafObjectL()
Parameter | Description | aURI | URI of the object |
aLUID | LUID of the object (if the adapter have earlier returned LUID to the DM Module). |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
ExecuteCommandL ( const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt )
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 CompleteOutstandingCmdsL() of adapter is called.
Parameter | Description | aURI | URI of the command |
aLUID | LUID of the object (if the adapter have earlier returned LUID to the DM Module). |
aArgument | Argument for the command |
aType | MIME type of the object |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
ExecuteCommandL ( const TDesC8 &, const TDesC8 &, RWriteStream *&, const TDesC8 &, TInt )
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 CompleteOutstandingCmdsL() of adapter is called.
Parameter | Description | aURI | URI of the command |
aLUID | LUID of the object (if the adapter have earlier returned LUID to the DM Module). |
aStream | Argument for the command. Adapter should create write stream and return, when data is written to stream by DM agent, StreamCommittedL() is called by DM engine |
aType | MIME type of the object |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
FetchLeafObjectL ( const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt, TInt )
void | FetchLeafObjectL | ( | const TDesC8 & | aURI, |
| const TDesC8 & | aLUID, |
| const TDesC8 & | aType, |
| TInt | aResultsRef, |
| TInt | aStatusRef |
| ) | [pure virtual] |
The function fetches data of a leaf object. The SetStatusL should be used as described in UpdateLeafObjectL(). The data is returned by using the SetResultsL function of MSmlCallback callback interface, and may be streamed.
Parameter | Description | aURI | URI of the object |
aLUID | LUID of the object (if the adapter have earlier returned LUID to the DM Module). |
aType | MIME type of the object |
aResultsRef | Reference to correct results, i.e. this reference must be used when returning the result by calling the SetResultsL. |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
FetchLeafObjectSizeL ( const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt, TInt )
void | FetchLeafObjectSizeL | ( | const TDesC8 & | aURI, |
| const TDesC8 & | aLUID, |
| const TDesC8 & | aType, |
| TInt | aResultsRef, |
| TInt | aStatusRef |
| ) | [pure virtual] |
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 FetchLeafObjectL(). 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.
Parameter | Description | aURI | URI of the object |
aLUID | LUID of the object (if the adapter have earlier returned LUID to the DM Module). |
aType | MIME type of the object |
aResultsRef | Reference to correct results, i.e. this reference must be used when returning the result by calling the SetResultsL. |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |
RollbackAtomicL ( )
void | RollbackAtomicL | ( | ) | [pure virtual] |
The function indicates unsuccessful end of Atomic command. The adapter should rollback all changes issued between StartAtomicL() and RollbackAtomicL(). If rollback fails for a command, adapter should use SetStatusL() to indicate it.
StartAtomicL ( )
void | StartAtomicL | ( | ) | [pure virtual] |
The function indicates start of Atomic command.
StreamCommittedL ( )
void | StreamCommittedL | ( | ) | [pure virtual] |
Called when stream returned from UpdateLeafObjectL or ExecuteCommandL has been written to and committed. Not called when fetching item.
StreamingSupport ( TInt & )
TBool
| StreamingSupport | ( | TInt & | aItemSize | ) | [pure virtual] |
Returns ETrue if adapter supports streaming otherwise EFalse.
Parameter | Description | aItemSize | size limit for stream usage |
Returns: TBool ETrue for streaming support
UpdateLeafObjectL ( const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, TInt )
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 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 adapter's CompleteOutstandingCmdsL() is called.
Parameter | Description | aURI | URI of the object |
aLUID | LUID of the object (if the adapter has earlier returned a LUID to the DM Module). For new objects, this is the LUID inherited through the parent node. |
aObject | Data of the object. |
aType | MIME type of the object |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command |
UpdateLeafObjectL ( const TDesC8 &, const TDesC8 &, RWriteStream *&, const TDesC8 &, TInt )
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 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 CompleteOutstandingCmdsL() of adapter is called.
Parameter | Description | aURI | URI of the object |
aLUID | LUID of the object (if the adapter has earlier returned a LUID to the DM Module). For new objects, this is the LUID inherited through the parent node. |
aStream | Data of the object. Adapter should create write stream and return, when data is written to stream by DM agent, StreamCommittedL() is called by DM engine |
aType | MIME type of the object |
aStatusRef | Reference to correct command, i.e. this reference must be used when calling the SetStatusL of this command. |