MNcdNode Class Reference

class MNcdNode : public MCatalogsBase

Node contains the basic information about the content. The interface also provides a load function that must be used to initialize the node, before accessing other information.

When the UI gets the node, the node may not contain any information except from the node state. The state may be checked by calling MNcdNode::State(). MNcdNode::LoadL() can then be called to load the content for the node, if the state is uninitialized or expired.

Note:

The actual content information, such as name, description etc. are available through the MNcdNodeMetadata interface that can be queried from node objects. There are various other additional node interfaces as well that all offer different functionality and information about the node. The interfaces are not available at all times, they have different criteria for becoming available. For example, the MNcdNodeMetadata interface becomes available for a node when its metadata is loaded, so if it is not available at first, it can be made available by calling the node's MNcdNode::LoadL() method.

MNcdNodeMetadata MNcdNodeContainer MNcdNodeContent MNcdNodeDependency MNcdNodeDownload MNcdNodeIcon MNcdNodeInstall MNcdNodePreview MNcdNodePurchase MNcdNodeScreenshot MNcdNodeSearch MNcdNodeSkin MNcdNodeSubscribe MNcdNodeUpgrade MNcdNodeUriContent MNcdNodeUserData

Inherits from

Constructor & Destructor Documentation

~MNcdNode()

~MNcdNode()[protected, inline, virtual]

Member Functions Documentation

AddToFavoritesL()

voidAddToFavoritesL()[pure virtual]

Adds the node to favorite nodes. If the node is already a favorite node, does nothing.

Exceptions
Leave

System wide error code

CatalogSourceName()

const TDesC &CatalogSourceName()const [pure virtual]

Gets the name of the catalog source for the node.

Id()

const TDesC &Id()const [pure virtual]

Gets the node id.

LoadL(MNcdLoadNodeOperationObserver &)

MNcdLoadNodeOperation *LoadL(MNcdLoadNodeOperationObserver &aObserver)[pure virtual]

Loads node information from the content provider.

Note:

Should be called when a folder node needs to be refreshed, clears all child nodes for folders!

Exceptions
Leave

System wide error code. KNcdErrorParallelOperationNotAllowed if a parallel client is running an operation for the same metadata. See MNcdOperation for full explanation.

Parameters

MNcdLoadNodeOperationObserver & aObserverObserver for the operation.

Namespace()

const TDesC &Namespace()const [pure virtual]

All nodes and their content are part of a namespace. Within the namespace, node identifiers are unique. This function returns the namespace of this node and its contents.

OperationsL()

RCatalogsArray< MNcdOperation >OperationsL()const [pure virtual]

Returns a list of currently active operations of this node for progress monitoring and operation management.

Note:

Operations may also be other than just MNcdLoadNodeOperations.

Exceptions
Leave

System wide error code

ParentL()

MNcdNodeContainer *ParentL()const [pure virtual]

Retrieves the reference to the parent of this node.

Exceptions
Leave

System wide error code, KErrNotFound if the parent node is not loaded.

State()

TState State()const [pure virtual]

Gives information about the state of the node. This information can be used to check whether the item data has been loaded or if the data is expired.

Member Enumerations Documentation

Enum TState

TNcdNode::TState gives information in what state the node is at the moment. This information can be used to check if the node information should be loaded over network or from local cache.

Enumerators

EStateNotInitialized

Node is not initialized and the data should be loaded from either local cache, or over network.

EStateInitialized

Node data is up to date.

EStateExpired

Node data is expired and should be reloaded over network.