os/security/contentmgmt/contentaccessfwfordrm/engineering/dox/HowToAgentConfiguration.dox
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 // <hr>
    15 // The \c default_data section of an CA Agent or CA Agent proxy's resource file is 
    16 // used to specify three pieces of information:
    17 // The buffer size section is separated from the supplier MIME types by a '<code>|</code>' character 
    18 // and the supplier MIME types are separated from the consumer MIME types by a '<code>:</code>' character.
    19 // Below is an example for an OMA DRM agent. 
    20 // default_data="100|application/vnd.oma.drm.message,application/vnd.oma.drm.rights+xml:application/vnd.oma.drm.content";
    21 // <hr>
    22 // The \c opaque_data section is used to specify the agent's private directory under <code>c:\\private\\</code>. This will be the 
    23 // SID (SecureId) of the server who owns the directory, e.g.
    24 // opaque_data="12345678";
    25 // If the agent does not have a corresponding private directory or does not wish to provide access to that directory, it
    26 // should just leave the \c opaque_data section as an empty string.
    27 // <hr>
    28 // // 101FE8F1.rss
    29 // // UIDs quick-ref
    30 // // ECOM DLL UID:		0x101FE8F1
    31 // // CA Agent interface UID:	0x10204740
    32 // // Test CAA Implementation:	0x101FE8F2
    33 //
    34 
    35 // #include <ecom/registryinfo.rh>
    36 // RESOURCE REGISTRY_INFO theInfo
    37 // dll_uid = 0x101FE8F1;
    38 // interfaces =
    39 // INTERFACE_INFO
    40 // interface_uid = 0x10204740;
    41 // implementations = 
    42 // IMPLEMENTATION_INFO
    43 // implementation_uid = 0x101FE8F2;
    44 // version_no = 1;
    45 // display_name = "Test Agent";
    46 // default_data = "255|application/vnd.oma.drm.message,application/vnd.oma.drm.content:application/vnd.oma.drm.content"; // Sample CAF types
    47 // opaque_data = "12345678";
    48 // <hr>
    49 // When writing a new CA Agent, all other UIDs used in the above examples should 
    50 // be replaced by new UIDs from the Symbian UID generator. 
    51 //
    52 
    53 /**
    54  @page CAA_Configuration Content Access Agent ECOM Resource File
    55  - @ref default_data
    56  - @ref opaque_data
    57  - @ref RSSExample
    58  - @ref UIDs
    59  @section default_data default_data
    60  @li The buffer size required by this agent to recognize a file when <code>ContentAccess::CAgentManager::RecognizeFileL()</code> is called
    61  @li A list of supplier MIME types supported by this agent
    62  @li A list of consumer MIME types supported by this agent.
    63  @code
    64  @endcode
    65  @li It requires at least the first 100 bytes of a file in order to do recognition
    66  @li It supports a supplier MIME types of <code>application/vnd.oma.drm.message</code> and <code>application/vnd.oma.drm.rights+xml</code>
    67  @li It supports a consumer MIME type of <code>application/vnd.oma.drm.content</code>.
    68  @section opaque_data opaque_data
    69  @code
    70  @endcode
    71  @section RSSExample An Example Agent Resource File
    72  @code
    73  @endcode
    74  @section UIDs Important UIDs for CA Agents
    75  @li \c 0x10009D8D - the ECOM DLL UID. Identifies a DLL as an ECOM plugin
    76  @li \c 0x101FC2CE - The Content Access Agent v1.0 interface, an implementation of <code>ContentAccess::CAgentFactory::NewL()</code>.
    77  @li \c 0x10204740 - The Content Access Agent v2.0 interface, an implementation of <code>ContentAccess::CAgentFactory::NewL()</code>.
    78 */