IToiDlnaContentDirectoryService Interface Reference


Description

This interface provides access to content located in a DLNA media server. Instances are created by calling IToiDlnaService::CreateContentDirectoryInstance().

The media server hierarchy is built up by containers and items. A container can hold other containers or items, both of which may be virtual, i.e. not representing physical directories and files on the media server. For example, a media server may extract ID3 tag metadata from MP3 files and sort them in different logical containers by album name, artist or year.

The root container for a media server is obtained by calling GetRootContainerId() and can be traversed recursively with calls to Browse().

All DLNA operations are asynchronous to avoid blocking the application during operation execution. For example, in order to browse a container the application first need to create an operation by calling IToiOperationManager::CreateOperation() and then use this operation identifier when calling Browse(). The operation identifier can later be reused for another asynchronous operation, or it can also be destroyed and a new operation can be created instead.

Operation results are notified by callbacks and the result data can then be read from this interface.

The result data (TToiCdsObject) represents the XML response from the DLNA media server. Most of the data is dependent on which properties that have been requested when calling Browse() or Search().

For example if the following object is exposed by the media server:

      <item id="1" parentID="0">
        <dc:title>Item 1</dc:title>
        <dc:creator>Creator 1</dc:creator>
        <upnp:author>Author 1</upnp:author>
        <upnp:author>Author 2</upnp:author>
        <upnp:class>object.item.imageItem</upnp:class>
        <res protocolInfo="http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_TN">
          http://someurl1.com
        </res>
        <res protocolInfo="http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_SM">
          http://someurl2.com
        </res>
      </item>

After a Browse() operation where some properties (PROPERTY_CREATOR, PROPERTY_AUTHOR, PROPERTY_RES_ATTR_PROTOCOL_INFO, PROPERTY_PI_PROFILE_NAME, PROPERTY_RES_RENDER_SUPPORTED, PROPERTY_RES) where requested, the corresponding TToiCdsObject will have the following values:

      ObjectId:       "1"
      ParentId:       "0"
      ObjectClass:    "object.item.imageItem"
      IsContainer:    false
      Title:          "Item 1"

      Id                              |SubIndex| Value        
      --------------------------------+---+--------------------------------
      PROPERTY_CREATOR                |-1 |"Creator 1"
      PROPERTY_AUTHOR                 |0  |"Author 1"
      PROPERTY_AUTHOR                 |1  |"Author 2"
      PROPERTY_RES_ATTR_PROTOCOL_INFO |0  |"http-get:*:image/jpeg:DLNA"...
      PROPERTY_RES_PI_PROFILE_NAME    |0  |"JPEG_TN"
      PROPERTY_RES_RENDER_SUPPORTED   |0  |"1"
      PROPERTY_RES                    |0  |"http://someurl1.com"
      PROPERTY_RES_ATTR_PROTOCOL_INFO |1  |"http-get:*:image/jpeg:DLNA"...
      PROPERTY_RES_PI_PROFILE_NAME    |1  |"JPEG_SM"
      PROPERTY_RES_RENDER_SUPPORTED   |1  |"1"
      PROPERTY_RES                    |1  |"http://someurl2.com"
See also:
IToiOperationManager
IToiOperationObserver
IToiDlnaContentDirectoryObserver

import "IToiDlnaContentDirectoryService.idl";

List of all members.

Public Member Functions

void GetRootContainerId (out string objectId)
void GetCapabilities (in IToiOperationManager::TToiOperationId operationId) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)
void Browse (in IToiOperationManager::TToiOperationId operationId, in string containerId, in TToiPropertyIdSequence propertyFilter, in TToiSortIdSequence sortCriteria, in long startIndex, in long count) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)
void GetObjectById (in IToiOperationManager::TToiOperationId operationId, in string objectId, in TToiPropertyIdSequence propertyFilter) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)
void Search (in IToiOperationManager::TToiOperationId operationId, in string containerId, in string searchCriteria, in TToiPropertyIdSequence propertyFilter, in TToiSortIdSequence sortCriteria, in long startIndex, in long count) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)
void GetPropertyInfoById (in TToiPropertyId id, out string name, out TToiPropertyType type) raises (TToiInvalidArgumentException)
void GetPropertyIdByName (in string name, out TToiPropertyId id) raises (TToiInvalidArgumentException)
void GetOperationObjectResult (in IToiOperationManager::TToiOperationId operationId, in long maxCount, out TToiCdsObjectSequence objects, out boolean hasMore) raises (TToiInvalidArgumentException, TToiNoDataException)
void GetOperationCapabilityResult (in IToiOperationManager::TToiOperationId operationId, out TToiCdsCapabilities capabilities) raises (TToiInvalidArgumentException, TToiNoDataException)
void GetCdsOperationManager (out string address)
void GetServerUuid (out string uuid)
void ReleaseInstance ()
void RegisterObserver (in IToiApplicationService::TToiApplicationId applicationId, in string address) raises (TToiInvalidArgumentException)
void ReleaseObserver (in string address) raises (TToiInvalidArgumentException)

Public Attributes

Operation results

The result types defined for the CDS operations. See IToiOperationManager for generic result types.

const
IToiOperationManager::TToiOperationResult 
OP_RESULT_OBJECT = 1
const
IToiOperationManager::TToiOperationResult 
OP_RESULT_CAPABILITY = 2
Operation error codes

The error codes defined for the CDS operations. See IToiOperationManager for generic error codes.

const
IToiOperationManager::TToiOperationError 
OP_ERROR_INVALID_ARGUMENTS = -3
const
IToiOperationManager::TToiOperationError 
OP_ERROR_INVALID_ACTION = -4
const
IToiOperationManager::TToiOperationError 
OP_ERROR_UNSUPPORTED_SEARCH_CRITERIA = -5
const
IToiOperationManager::TToiOperationError 
OP_ERROR_UNSUPPORTED_SORT_CRITERIA = -6
const
IToiOperationManager::TToiOperationError 
OP_ERROR_NO_SUCH_CONTAINER = -7
const
IToiOperationManager::TToiOperationError 
OP_ERROR_RESTRICTED = -8
const
IToiOperationManager::TToiOperationError 
OP_ERROR_CAN_NOT_PROCESS_REQUEST = -9
DLNA properties

The properties that can be read for a TToiCdsObject if requested by for example a browse or search operation.

const TToiPropertyId PROPERTY_OBJECT_ATTR_CHILD_COUNT = 11
const TToiPropertyId PROPERTY_OBJECT_ATTR_SEARCHABLE = 12
const TToiPropertyId PROPERTY_OBJECT_ATTR_REF_ID = 13
const TToiPropertyId PROPERTY_OBJECT_ATTR_RESTRICTED = 14
const TToiPropertyId PROPERTY_CREATE_CLASS = 20
const TToiPropertyId PROPERTY_CREATE_CLASS_ATTR_INCLUDE_DERIVED = 21
const TToiPropertyId PROPERTY_CREATE_CLASS_ATTR_NAME = 22
const TToiPropertyId PROPERTY_CREATOR = 30
const TToiPropertyId PROPERTY_DATE = 40
const TToiPropertyId PROPERTY_DESCRIPTION = 50
const TToiPropertyId PROPERTY_LANGUAGE = 60
const TToiPropertyId PROPERTY_RES = 70
const TToiPropertyId PROPERTY_RES_ATTR_BITRATE = 71
const TToiPropertyId PROPERTY_RES_ATTR_BITS_PER_SAMPLE = 72
const TToiPropertyId PROPERTY_RES_ATTR_COLOR_DEPTH = 73
const TToiPropertyId PROPERTY_RES_ATTR_DURATION = 74
const TToiPropertyId PROPERTY_RES_ATTR_IMPORT_URI = 75
const TToiPropertyId PROPERTY_RES_ATTR_AUDIO_CHANNELS_COUNT = 76
const TToiPropertyId PROPERTY_RES_ATTR_PROTOCOL_INFO = 77
const TToiPropertyId PROPERTY_RES_ATTR_RESOLUTION = 78
const TToiPropertyId PROPERTY_RES_ATTR_SAMPLE_FREQUENCY = 79
const TToiPropertyId PROPERTY_RES_ATTR_SIZE = 80
const TToiPropertyId PROPERTY_RES_ATTR_PROTECTION = 81
const TToiPropertyId PROPERTY_RES_RENDER_SUPPORTED = 82
const TToiPropertyId PROPERTY_SEARCH_CLASS = 90
const TToiPropertyId PROPERTY_SEARCH_CLASS_ATTR_INCLUDE_DERIVED = 91
const TToiPropertyId PROPERTY_SEARCH_CLASS_ATTR_NAME = 92
const TToiPropertyId PROPERTY_ACTOR = 100
const TToiPropertyId PROPERTY_ALBUM = 110
const TToiPropertyId PROPERTY_ARTIST = 120
const TToiPropertyId PROPERTY_AUTHOR = 130
const TToiPropertyId PROPERTY_PRODUCER = 140
const TToiPropertyId PROPERTY_DIRECTOR = 150
const TToiPropertyId PROPERTY_PUBLISHER = 160
const TToiPropertyId PROPERTY_CONTRIBUTOR = 170
const TToiPropertyId PROPERTY_GENRE = 180
const TToiPropertyId PROPERTY_ICON = 190
const TToiPropertyId PROPERTY_ORIGINAL_TRACK_NUMBER = 200
const TToiPropertyId PROPERTY_PLAYLIST = 210
const TToiPropertyId PROPERTY_RATING = 220
const TToiPropertyId PROPERTY_SCHEDULED_START_TIME = 230
const TToiPropertyId PROPERTY_SCHEDULED_END_TIME = 240
const TToiPropertyId PROPERTY_CHANNEL_NAME = 250
const TToiPropertyId PROPERTY_CHANNEL_NR = 260
const TToiPropertyId PROPERTY_STORAGE_FREE = 270
const TToiPropertyId PROPERTY_STORAGE_MAX_PARTITION = 280
const TToiPropertyId PROPERTY_STORAGE_MEDIUM = 290
const TToiPropertyId PROPERTY_STORAGE_TOTAL = 300
const TToiPropertyId PROPERTY_STORAGE_USED = 310
const TToiPropertyId PROPERTY_WRITE_STATUS = 320
const TToiPropertyId PROPERTY_REGION = 330
const TToiPropertyId PROPERTY_LONG_DESCRIPTION = 340
const TToiPropertyId PROPERTY_RADIO_CALL_SIGN = 350
const TToiPropertyId PROPERTY_RADIO_STATION_ID = 360
const TToiPropertyId PROPERTY_RADIO_BAND = 370
const TToiPropertyId PROPERTY_USER_ANNOTATION = 380
const TToiPropertyId PROPERTY_CLASS = 390
const TToiPropertyId PROPERTY_TITLE = 400
const TToiPropertyId PROPERTY_RES_PI_PROTOCOL = 410
const TToiPropertyId PROPERTY_RES_PI_MIME_TYPE = 411
const TToiPropertyId PROPERTY_RES_PI_PROFILE_NAME = 412
const TToiPropertyId PROPERTY_RES_PI_OPERATIONS = 413
const TToiPropertyId PROPERTY_RES_PI_PLAY_SPEED = 414
const TToiPropertyId PROPERTY_RES_PI_CONVERSION_INDICATOR = 415
const TToiPropertyId PROPERTY_RES_PI_FLAGS = 416
const TToiPropertyId PROPERTY_RES_PI_MAX_RTSP_SPEED = 417

Classes

struct  TToiCdsCapabilities
struct  TToiCdsObject
struct  TToiProperty

Public Types

enum  TToiPropertyType {
  TYPE_STRING, TYPE_INTEGER, TYPE_BOOLEAN, TYPE_DATE,
  TYPE_RESOLUTION, TYPE_DURATION
}
enum  TToiCdsActionCapability {
  CDS_CAPABILITY_CREATE_OBJECT, CDS_CAPABILITY_DESTROY_OBJECT, CDS_CAPABILITY_SEARCH, CDS_CAPABILITY_IMPORT_RESOURCE,
  CDS_CAPABILITY_EXPORT_RESOURCE, CDS_CAPABILITY_STOP_TRANSFER_PROGRESS, CDS_CAPABILITY_GET_TRANSFER_PROGRESS, CDS_CAPABILITY_IMAGE_UPLOAD,
  CDS_CAPABILITY_AUDIO_UPLOAD, CDS_CAPABILITY_AV_UPLOAD, CDS_CAPABILITY_X_GET_DLNA_UPLOAD_PROFILES
}
typedef long TToiPropertyId
typedef sequence< TToiPropertyIdTToiPropertyIdSequence
typedef sequence< TToiPropertyTToiPropertySequence
typedef sequence< long > TToiSortIdSequence
typedef sequence< TToiCdsObjectTToiCdsObjectSequence

Member Typedef Documentation

Sequence of CDS objects.

Type for property identifier.

Sequence of property identifiers.

A sequence of properties.

Sequence of identifiers used to indicate object sort order. A property with identifier X is represented as follows: -X: descending sort order X: ascending sort order


Member Enumeration Documentation

Bit mask values indicating possible CDS actions.

Enumerator:
CDS_CAPABILITY_CREATE_OBJECT 

CreateObject action is supported.

CDS_CAPABILITY_DESTROY_OBJECT 

DestroyObject action is supported.

CDS_CAPABILITY_SEARCH 

Search action is supported.

CDS_CAPABILITY_IMPORT_RESOURCE 

ImportResource action is supported.

CDS_CAPABILITY_EXPORT_RESOURCE 

ExportResource action is supported.

CDS_CAPABILITY_STOP_TRANSFER_PROGRESS 

StopTransferProgress action is supported.

CDS_CAPABILITY_GET_TRANSFER_PROGRESS 

GetTransferProgress action is supported.

CDS_CAPABILITY_IMAGE_UPLOAD 

ContentDirectory service accepts images for upload.

CDS_CAPABILITY_AUDIO_UPLOAD 

ContentDirectory service accepts music for upload.

CDS_CAPABILITY_AV_UPLOAD 

ContentDirectory service accepts video for upload.

CDS_CAPABILITY_X_GET_DLNA_UPLOAD_PROFILES 

X_GetDLNAUploadProfiles action is supported.

Enumeration of property types.

Enumerator:
TYPE_STRING 

Type that represents string property.

TYPE_INTEGER 

Type that represents integer property.

TYPE_BOOLEAN 

Type that represents boolean property.

TYPE_DATE 

Type that represents date property.

TYPE_RESOLUTION 

Type that represents resolution property, WxY pixels. For example 640x480.

TYPE_DURATION 

Type that represents duration property.


Member Function Documentation

void IToiDlnaContentDirectoryService::Browse ( in IToiOperationManager::TToiOperationId  operationId,
in string  containerId,
in TToiPropertyIdSequence  propertyFilter,
in TToiSortIdSequence  sortCriteria,
in long  startIndex,
in long  count 
) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)

Starts an asynchronous operation to browse the direct children of a container. The objects to return are determined by giving a server side offset (startIndex) and number of objects to return (count). A startIndex value of 0 is used to retrieve objects from the very beginning of the container. The ServerIndex value of a returned TToiCdsObject can be used as offset in additional calls to Browse().

The @childCount attribute of the container may contain the total number of objects, but this is not mandatory.

The result is returned by an operation event with result type set to OP_RESULT_OBJECT.

Parameters:
operationId Operation identifier.
containerId The identifier of the container object to browse.
propertyFilter The properties to request. Only these properties will be included in the object data returned.
sortCriteria The sort criteria to be used for the results. A negative value indicates descending sort order for that property identifier, and a positive value (same as the property identifier) indicates ascending sort order. The properties that the CDS supports for sorting can be found in TToiCdsCapabilities.
startIndex Start index of first object to retrieve.
count The number of objects to be read (a value of 0 will return all objects).
Exceptions:
TToiInvalidArgumentException Raised if any of the parameters to the call are invalid.
TToiOperationNotSupportedException Raised if the service is unavailable.
See also:
GetOperationObjectResult()
void IToiDlnaContentDirectoryService::GetCapabilities ( in IToiOperationManager::TToiOperationId  operationId  )  raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)

Starts an asynchronous operation to find the capabilities of the CDS. The resulting TToiCdsCapabilities can be read after an operation event with result type set to OP_RESULT_CAPABILITY.

Parameters:
operationId Operation identifier.
Exceptions:
TToiInvalidArgumentException Raised if the operation identifier is invalid.
TToiOperationNotSupportedException Raised if the service is unavailable.
See also:
GetOperationCapabilityResult()
void IToiDlnaContentDirectoryService::GetCdsOperationManager ( out string  address  ) 

Returns the operation manager that handles asynchronous operations for this Content Directory Service. The procedure of executing asynchronous operations is generic and looks like this:

  • Get a handle to the operation manager.
  • Register an observer to get operation events from the operation manager.
  • Create an operation in order to get an operation identifier.
  • Call an asynchronous operation using the operation identifier.
  • Receive progress events for the asynchronous operation.
  • When the operation is completed, get result data (if any).
  • Release the operation or reuse the identifier for another asynchronous call.
Return values:
address The address to the operation manager.
void IToiDlnaContentDirectoryService::GetObjectById ( in IToiOperationManager::TToiOperationId  operationId,
in string  objectId,
in TToiPropertyIdSequence  propertyFilter 
) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)

Starts an asynchronous operation to read a single CDS object. The result is returned by an operation event with result type set to OP_RESULT_OBJECT.

Parameters:
operationId Operation identifier.
objectId The object identifier to read properties for.
propertyFilter The properties to request. Only these properties will be included in the object data returned.
Exceptions:
TToiInvalidArgumentException Raised if any of the parameters to the call are invalid.
TToiOperationNotSupportedException Raised if the service is unavailable.
See also:
GetOperationObjectResult()
void IToiDlnaContentDirectoryService::GetOperationCapabilityResult ( in IToiOperationManager::TToiOperationId  operationId,
out TToiCdsCapabilities  capabilities 
) raises (TToiInvalidArgumentException, TToiNoDataException)

Return media server capability result of an asynchronous DLNA operation that notified results of type OP_RESULT_CAPABILITY. The returned result is removed from the internal cache of the service and are not available in a second call to this method.

Parameters:
operationId Operation identifier.
Return values:
capabilities The CDS action capabilities.
Exceptions:
TToiInvalidArgumentException Raised if operation is unknown or does not support capability results.
TToiNoDataException Raised if no result is available.
void IToiDlnaContentDirectoryService::GetOperationObjectResult ( in IToiOperationManager::TToiOperationId  operationId,
in long  maxCount,
out TToiCdsObjectSequence  objects,
out boolean  hasMore 
) raises (TToiInvalidArgumentException, TToiNoDataException)

Return objects that are result of an asynchronous DLNA operation that notified results of type OP_RESULT_OBJECT. The returned result is removed from the internal cache of the service and are not available in a second call to this method.

Parameters:
operationId Operation identifier.
maxCount The maximum number of objects the user are interested in, 0 if as many as possible shall be returned.
Return values:
objects The resulting objects.
hasMore Set to true if not all objects (up to maxCount) could fit in sequence due to platform limitations. False otherwise.
Exceptions:
TToiInvalidArgumentException Raised if operation is unknown or does not support object results.
TToiNoDataException Raised if no result is available.
void IToiDlnaContentDirectoryService::GetPropertyIdByName ( in string  name,
out TToiPropertyId  id 
) raises (TToiInvalidArgumentException)

Returns the CDS property identifier used for given property name.

Parameters:
name Property name.
Return values:
id Property identifier.
Exceptions:
TToiInvalidArgumentException Raised if name is not a known property.
void IToiDlnaContentDirectoryService::GetPropertyInfoById ( in TToiPropertyId  id,
out string  name,
out TToiPropertyType  type 
) raises (TToiInvalidArgumentException)

Returns the CDS property name and type by property identifier.

Parameters:
id Property identifier.
Return values:
name Property name.
type Property type.
Exceptions:
TToiInvalidArgumentException Raised if the property identifier is unknown.
void IToiDlnaContentDirectoryService::GetRootContainerId ( out string  objectId  ) 

Returns the CDS root container identifier.

Return values:
ojbectId The root container identifier.
void IToiDlnaContentDirectoryService::GetServerUuid ( out string  uuid  ) 

Returns the uuid of the media server hosting this service.

Return values:
uuid The UUID of the media server.
void IToiDlnaContentDirectoryService::RegisterObserver ( in IToiApplicationService::TToiApplicationId  applicationId,
in string  address 
) raises (TToiInvalidArgumentException)

Register an observer of type IToiDlnaContentDirectoryObserver. The observer will receive events sent by this IToiDlnaContentDirectoryService instance.

Parameters:
applicationId The identifier of the observing application.
address The address where the IToiDlnaContentDirectoryService can find an IToiDlnaContentDirectoryObserver interface.
Exceptions:
TToiInvalidArgumentException Raised if the specified address is invalid or if the application has already registered itself as an observer with the same address.
See also:
IToiDlnaContentDirectoryObserver
void IToiDlnaContentDirectoryService::ReleaseInstance (  ) 

When an application is done using the Content Direcory Service it should gracefully release it by calling this function.

void IToiDlnaContentDirectoryService::ReleaseObserver ( in string  address  )  raises (TToiInvalidArgumentException)

Release an observer previously registered with RegisterObserver.

Parameters:
address The address where the IToiDlnaContentDirectoryService can find the registered IToiDlnaContentDirectoryObserver interface.
Exceptions:
TToiInvalidArgumentException Raised if the specified address is invalid.
See also:
IToiDlnaContentDirectoryObserver
void IToiDlnaContentDirectoryService::Search ( in IToiOperationManager::TToiOperationId  operationId,
in string  containerId,
in string  searchCriteria,
in TToiPropertyIdSequence  propertyFilter,
in TToiSortIdSequence  sortCriteria,
in long  startIndex,
in long  count 
) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException)

Starts an asynchronous operation to search for matching objects in a container. The objects to return are determined by giving a server side offset (startIndex) and number of objects to return (count). A startIndex value of 0 is used to retrieve objects from the very beginning of the container. The ServerIndex value of a returned TToiCdsObject can be used as offset in additional calls to Search(). The support for search operations in different media servers may vary, but examples and syntax can be found in public UPnP documents: http://upnp.org/specs/av/UPnP-av-ContentDirectory-v1-Service.pdf

The result is returned by an operation event with result type set to OP_RESULT_OBJECT.

Parameters:
operationId Operation identifier.
containerId The identifier of the container object to browse.
searchCriteria The search criteria to be used when querying the media server. The properties that the CDS supports for searching can be found in TToiCdsCapabilities.
propertyFilter The properties to request. Only these properties will be included in the object data returned.
sortCriteria The sort criteria to be used for the results. A negative value indicates descending sort order for that property identifier, and a positive value (same as the property identifier) indicates ascending sort order. The properties that the CDS supports for sorting can be found in TToiCdsCapabilities.
startIndex Start index of first object to retrieve.
count The number of objects to be read (a value of 0 will return all matching objects).
Exceptions:
TToiInvalidArgumentException Raised if any of the parameters to the call are invalid.
TToiOperationNotSupportedException Raised if the service is unavailable.
See also:
GetOperationObjectResult()

Member Data Documentation

Media server reported could not process request.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_ERROR_CAN_NOT_PROCESS_REQUEST.

Media server reported that action is not supported.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_ERROR_INVALID_ACTION.

Media server returned invalid arguments error.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_ERROR_INVALID_ARGUMENTS.

Media server reported that container identifier is no longer valid.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_ERROR_NO_SUCH_CONTAINER.

Media server reported that object is restricted.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_ERROR_RESTRICTED.

Search criteria passed to media server is not supported.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_ERROR_UNSUPPORTED_SEARCH_CRITERIA.

Sort criteria passed to media server is not supported.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_ERROR_UNSUPPORTED_SORT_CRITERIA.

The ascynchronous operation has media server capability as result. See GetOperationCapabilityResult().

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_RESULT_CAPABILITY.

The ascynchronous operation has object(s) as result. See GetOperationObjectResult().

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.OP_RESULT_OBJECT.

Type: TYPE_STRING; DLNA name: "upnp:actor".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_ACTOR.

Type: TYPE_STRING; DLNA name: "upnp:album".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_ALBUM.

Type: TYPE_STRING; DLNA name: "upnp:artist".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_ARTIST.

Type: TYPE_STRING; DLNA name: "upnp:author".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_AUTHOR.

Type: TYPE_STRING; DLNA name: "upnp:channelName".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CHANNEL_NAME.

Type: TYPE_INTEGER; DLNA name: "upnp:channelNr".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CHANNEL_NR.

Type: TYPE_STRING; DLNA name: "upnp:class".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CLASS.

Type: TYPE_STRING; DLNA name: "dc:contributor".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CONTRIBUTOR.

Type: TYPE_STRING; DLNA name: "upnp:createClass".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CREATE_CLASS.

Type: TYPE_BOOLEAN; DLNA name: "upnp:createClass\@includeDerived".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CREATE_CLASS_ATTR_INCLUDE_DERIVED.

Type: TYPE_STRING; DLNA name: "upnp:createClass\@name".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CREATE_CLASS_ATTR_NAME.

Type: TYPE_STRING; DLNA name: "dc:creator".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_CREATOR.

Type: TYPE_DATE; DLNA name: "dc:date".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_DATE.

Type: TYPE_STRING; DLNA name: "dc:description".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_DESCRIPTION.

Type: TYPE_STRING; DLNA name: "upnp:director".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_DIRECTOR.

Type: TYPE_STRING; DLNA name: "upnp:genre".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_GENRE.

Type: TYPE_STRING; DLNA name: "upnp:icon".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_ICON.

Type: TYPE_STRING; DLNA name: "dc:language".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_LANGUAGE.

Type: TYPE_STRING; DLNA name: "upnp:longDescription"

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_LONG_DESCRIPTION.

Type: TYPE_INTEGER; DLNA name: "container\@childCount".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_OBJECT_ATTR_CHILD_COUNT.

Type: TYPE_STRING; DLNA name: "\@refID".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_OBJECT_ATTR_REF_ID.

Type: TYPE_BOOLEAN; DLNA name: "\@restricted".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_OBJECT_ATTR_RESTRICTED.

Type: TYPE_BOOLEAN; DLNA name: "container\@searchable".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_OBJECT_ATTR_SEARCHABLE.

Type: TYPE_INTEGER; DLNA name: "upnp:originalTrackNumber".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_ORIGINAL_TRACK_NUMBER.

Type: TYPE_STRING; DLNA name: "upnp:playlist".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_PLAYLIST.

Type: TYPE_STRING; DLNA name: "upnp:producer".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_PRODUCER.

Type: TYPE_STRING; DLNA name: "dc:publisher".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_PUBLISHER.

Type: TYPE_STRING; DLNA name: "upnp:radioBand".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RADIO_BAND.

Type: TYPE_STRING; DLNA name: "upnp:radioCallSign".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RADIO_CALL_SIGN.

Type: TYPE_STRING; DLNA name: "upnp:radioStationID".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RADIO_STATION_ID.

Type: TYPE_STRING; DLNA name: "upnp:rating".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RATING.

Type: TYPE_STRING; DLNA name: "upnp:region".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_REGION.

Type: TYPE_STRING; DLNA name: "res".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES.

Type: TYPE_INTEGER; DLNA name: "res\@nrAudioChannels".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_AUDIO_CHANNELS_COUNT.

Type: TYPE_INTEGER; DLNA name: "res\@bitrate".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_BITRATE.

Type: TYPE_INTEGER; DLNA name: "res\@bitsPerSample".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_BITS_PER_SAMPLE.

Type: TYPE_INTEGER; DLNA name: "res\@colorDepth".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_COLOR_DEPTH.

Type: TYPE_DURATION; DLNA name: "res\@duration".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_DURATION.

Type: TYPE_STRING; DLNA name: "res\@importUri".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_IMPORT_URI.

Type: TYPE_STRING; DLNA name: "res\@protection".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_PROTECTION.

Type: TYPE_STRING; DLNA name: "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_PROTOCOL_INFO.

Type: TYPE_RESOLUTION; DLNA name: "res\@resolution".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_RESOLUTION.

Type: TYPE_INTEGER; DLNA name: "res\@sampleFrequency".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_SAMPLE_FREQUENCY.

Type: TYPE_INTEGER; DLNA name: "res\@size". Be aware that this property can be more than 32-bit integer.

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_ATTR_SIZE.

Type: TYPE_STRING; DLNA name: none. Represents DLNA.ORG_CI parameter in 4th part of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_CONVERSION_INDICATOR.

Type: TYPE_STRING; DLNA name: none. Represents DLNA.ORG_FLAGS parameter in 4th part of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_FLAGS.

Type: TYPE_STRING; DLNA name: none. Represents DLNA.ORG_MAXSP parameter in 4th part of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_MAX_RTSP_SPEED.

Type: TYPE_STRING; DLNA name: none. Represents MIME type part (3rd part) of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_MIME_TYPE.

Type: TYPE_STRING; DLNA name: none. Represents DLNA.ORG_OP parameter in 4th part of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_OPERATIONS.

Type: TYPE_STRING; DLNA name: none. Represents DLNA.ORG_PS parameter in 4th part of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_PLAY_SPEED.

Type: TYPE_STRING; DLNA name: none. Represents DLNA.ORG_PN parameter in 4th part of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_PROFILE_NAME.

Type: TYPE_STRING; DLNA name: none. Represents protocol part (1st part) of the "res\@protocolInfo".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_PI_PROTOCOL.

Type: TYPE_INTEGER; DLNA name: none. If the resource can be rendered the value is set to "1", and if not it is set to "0".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_RES_RENDER_SUPPORTED.

Type: TYPE_DATE; DLNA name: "upnp:scheduledEndTime".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_SCHEDULED_END_TIME.

Type: TYPE_DATE; DLNA name: "upnp:scheduledStartTime".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_SCHEDULED_START_TIME.

Type: TYPE_STRING; DLNA name: "upnp:searchClass".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_SEARCH_CLASS.

Type: TYPE_BOOLEAN; DLNA name: "upnp:searchClass\@includeDerived".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_SEARCH_CLASS_ATTR_INCLUDE_DERIVED.

Type: TYPE_STRING; DLNA name: "upnp:searchClass\@name".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_SEARCH_CLASS_ATTR_NAME.

Type: TYPE_INTEGER; DLNA name: "upnp:storageFree".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_STORAGE_FREE.

Type: TYPE_INTEGER; DLNA name: "upnp:storageMaxPartition".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_STORAGE_MAX_PARTITION.

Type: TYPE_STRING; DLNA name: "upnp:storageMedium".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_STORAGE_MEDIUM.

Type: TYPE_INTEGER; DLNA name: "upnp:storageTotal".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_STORAGE_TOTAL.

Type: TYPE_INTEGER; DLNA name: "upnp:storageUsed".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_STORAGE_USED.

Type: TYPE_STRING; DLNA name: "dc:title".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_TITLE.

Type: TYPE_STRING; DLNA name: "upnp:userAnnotation".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_USER_ANNOTATION.

Type: TYPE_STRING; DLNA name: "upnp:writeStatus".

This constant can also be accessed from toi.consts.IToiDlnaContentDirectoryService.PROPERTY_WRITE_STATUS.