omadrm/drmplugins/drmfilter/inc/HTTPFilterDRMDataSupplier.h
changeset 23 493788a4a8a4
parent 0 95b198f216e5
equal deleted inserted replaced
5:79d62d1d7957 23:493788a4a8a4
    19 #define _HTTPFILTERDRMDATASUPPLIER_H_
    19 #define _HTTPFILTERDRMDATASUPPLIER_H_
    20 //-----------------------------------------------------------------------------
    20 //-----------------------------------------------------------------------------
    21 
    21 
    22 #include <s32mem.h>
    22 #include <s32mem.h>
    23 #include <http/mhttpdatasupplier.h>
    23 #include <http/mhttpdatasupplier.h>
    24 #include <oma1dcfcreator.h>
    24 #include <Oma1DcfCreator.h>
    25 //-----------------------------------------------------------------------------
    25 //-----------------------------------------------------------------------------
    26 
    26 
    27 class CDRMMessageParser;
    27 class CDRMMessageParser;
    28 class RMemWriteStream;
    28 class RMemWriteStream;
    29 class CHTTPFilterDRMDataSupplier;
    29 class CHTTPFilterDRMDataSupplier;
    44 
    44 
    45 /**
    45 /**
    46  * HeapArray8 - the helper class for memory re-allocation
    46  * HeapArray8 - the helper class for memory re-allocation
    47  *
    47  *
    48  * @lib DRMFilter.lib
    48  * @lib DRMFilter.lib
    49  * @since 2.6 
    49  * @since 2.6
    50  */
    50  */
    51 class HeapArray8
    51 class HeapArray8
    52     {
    52     {
    53 public:
    53 public:
    54     static HeapArray8* NewMaxL( TInt max_ );
    54     static HeapArray8* NewMaxL( TInt max_ );
    75 
    75 
    76 /**
    76 /**
    77  * TDRMMemBuf - the helper class for memory re-allocation
    77  * TDRMMemBuf - the helper class for memory re-allocation
    78  *
    78  *
    79  * @lib DRMFilter.lib
    79  * @lib DRMFilter.lib
    80  * @since 2.6 
    80  * @since 2.6
    81  */
    81  */
    82 class TDRMMemBuf : public TMemBuf
    82 class TDRMMemBuf : public TMemBuf
    83     {
    83     {
    84 public:
    84 public:
    85     static TDRMMemBuf* NewL( TInt aLength );
    85     static TDRMMemBuf* NewL( TInt aLength );
   100 
   100 
   101 /**
   101 /**
   102  * a data supplier used for replace the default supplier in response data
   102  * a data supplier used for replace the default supplier in response data
   103  *
   103  *
   104  * @lib DRMFilter.lib
   104  * @lib DRMFilter.lib
   105  * @since 2.6 
   105  * @since 2.6
   106  */
   106  */
   107 class CHTTPFilterDRMDataSupplier : public CBase,
   107 class CHTTPFilterDRMDataSupplier : public CBase,
   108     public MHTTPDataSupplier,
   108     public MHTTPDataSupplier,
   109     public RMemWriteStream
   109     public RMemWriteStream
   110     {
   110     {
   111 public:
   111 public:
   112     // ctor & dtor
   112     // ctor & dtor
   113     static CHTTPFilterDRMDataSupplier* NewL( TInt,
   113     static CHTTPFilterDRMDataSupplier* NewL( TInt,
   114         MHTTPDataSupplier* iDataBody, CHTTPFilterDRM* aOwner );
   114         MHTTPDataSupplier* iDataBody, CHTTPFilterDRM* aOwner );
   115     /** Support for Hutchinson's content protection scheme, CFM
   115     /** Support for Hutchinson's content protection scheme, CFM
   116      *  
   116      *
   117      */
   117      */
   118     static CHTTPFilterDRMDataSupplier* NewL( TInt,
   118     static CHTTPFilterDRMDataSupplier* NewL( TInt,
   119         MHTTPDataSupplier* iDataBody, TProcessedContentType aType,
   119         MHTTPDataSupplier* iDataBody, TProcessedContentType aType,
   120         CHTTPFilterDRM* aOwner );
   120         CHTTPFilterDRM* aOwner );
   121     /*
   121     /*
   148     ContentAccess::CManager* GetCafDataL( TAgent& aAgent );
   148     ContentAccess::CManager* GetCafDataL( TAgent& aAgent );
   149     //-------------------------------------------------------------------------
   149     //-------------------------------------------------------------------------
   150 
   150 
   151     void ConstructL( TInt aSize );
   151     void ConstructL( TInt aSize );
   152     /** Support for Hutchinson's content protection scheme, CFM
   152     /** Support for Hutchinson's content protection scheme, CFM
   153      *  
   153      *
   154      */
   154      */
   155     void ConstructL( TInt aSize, TProcessedContentType /*aType*/);
   155     void ConstructL( TInt aSize, TProcessedContentType /*aType*/);
   156     /**
   156     /**
   157      *
   157      *
   158      */
   158      */
   162     TInt iTransId;
   162     TInt iTransId;
   163     HBufC8* iBuf;
   163     HBufC8* iBuf;
   164     TPtr8 iBufPtr;
   164     TPtr8 iBufPtr;
   165     MHTTPDataSupplier *iPHData; // data supplier from protocol handler
   165     MHTTPDataSupplier *iPHData; // data supplier from protocol handler
   166     TBool iSendReady; // ready for sending?
   166     TBool iSendReady; // ready for sending?
       
   167     TBool iLastPart; // should last part info be sent
   167 
   168 
   168     CDRMMessageParser* iDRMMessageParser;
   169     CDRMMessageParser* iDRMMessageParser;
   169     TInt iPrevPos;
   170     TInt iPrevPos;
   170     TDRMMemBuf* iMemBuf;
   171     TDRMMemBuf* iMemBuf;
   171     /** Support for Hutchinson's content protection scheme, CFM
   172     /** Support for Hutchinson's content protection scheme, CFM
   185         iProcessedContentType = aType;
   186         iProcessedContentType = aType;
   186         }
   187         }
   187     //-------------------------------------------------------------------------
   188     //-------------------------------------------------------------------------
   188     };
   189     };
   189 //-----------------------------------------------------------------------------
   190 //-----------------------------------------------------------------------------
   190 #endif // !_HTTPFILTERDRMDATASUPPLIER_H_ 
   191 #endif // !_HTTPFILTERDRMDATASUPPLIER_H_