xmlsrv_plat/xml_parser_api/inc/mxmlcontenthandler.h
author hgs
Mon, 13 Sep 2010 13:16:40 +0530
changeset 34 c7e9f1c97567
parent 24 xmlsrv_plat/xml_parser_api/inc/MXMLContentHandler.h@74f0b3eb154c
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
/**
hgs
parents:
diff changeset
    25
 * DO NOT USE THIS API. DEPRECATED AND REMOVED IN S60 5.0. USE SYMBIAN XML FRAMEWORK INSTEAD.
hgs
parents:
diff changeset
    26
 */
hgs
parents:
diff changeset
    27
hgs
parents:
diff changeset
    28
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
hgs
parents:
diff changeset
    33
hgs
parents:
diff changeset
    34
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
hgs
parents:
diff changeset
    37
hgs
parents:
diff changeset
    38
#ifndef __MXMLCONTENTHANDLER_H
hgs
parents:
diff changeset
    39
#define __MXMLCONTENTHANDLER_H
hgs
parents:
diff changeset
    40
hgs
parents:
diff changeset
    41
#warning The XML API will be removed wk25. Please see http://wikis.in.nokia.com/Browser/APIMigration for more information
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
//  INCLUDES
hgs
parents:
diff changeset
    45
#include <xml/MXMLAttributes.h>
hgs
parents:
diff changeset
    46
#include <xml/cxml/cxml_nw2cxmltypes.h>
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
// CLASS DECLARATION
hgs
parents:
diff changeset
    49
hgs
parents:
diff changeset
    50
/**
hgs
parents:
diff changeset
    51
*  Interface for SAX Parser Callback events.
hgs
parents:
diff changeset
    52
*  If an application (client) needs to be informed of basic parsing events, 
hgs
parents:
diff changeset
    53
*  it implements this interface and registers an instance with the SAX parser using the SetContentHandler() method.
hgs
parents:
diff changeset
    54
*  The parser uses the instance to report basic document-related events like the start and end of elements.
hgs
parents:
diff changeset
    55
*
hgs
parents:
diff changeset
    56
*  @lib XMLInterface.dll
hgs
parents:
diff changeset
    57
*  @since ?Series60_version
hgs
parents:
diff changeset
    58
*/
hgs
parents:
diff changeset
    59
class MXMLContentHandler
hgs
parents:
diff changeset
    60
{
hgs
parents:
diff changeset
    61
public:
hgs
parents:
diff changeset
    62
/**
hgs
parents:
diff changeset
    63
* Receive notification of the beginning of a document.
hgs
parents:
diff changeset
    64
* @since ?Series60_version
hgs
parents:
diff changeset
    65
* @param none
hgs
parents:
diff changeset
    66
* @return none
hgs
parents:
diff changeset
    67
*/		
hgs
parents:
diff changeset
    68
    virtual TInt StartDocument() = 0;
hgs
parents:
diff changeset
    69
hgs
parents:
diff changeset
    70
/**
hgs
parents:
diff changeset
    71
* Receive notification of the end of a document.
hgs
parents:
diff changeset
    72
* @since ?Series60_version
hgs
parents:
diff changeset
    73
* @param none
hgs
parents:
diff changeset
    74
* @return none
hgs
parents:
diff changeset
    75
*/
hgs
parents:
diff changeset
    76
	virtual TInt EndDocument() = 0;
hgs
parents:
diff changeset
    77
hgs
parents:
diff changeset
    78
/**
hgs
parents:
diff changeset
    79
* Receive notification of the beginning of an element.
hgs
parents:
diff changeset
    80
* @since ?Series60_version
hgs
parents:
diff changeset
    81
* @param aURI: The Namespace URI, or the empty string if the element has no Namespace URI or if Namespace
hgs
parents:
diff changeset
    82
*              processing is not being performed.
hgs
parents:
diff changeset
    83
* @param aLocalName: The local name (without prefix), or the empty string if Namespace processing is not being
hgs
parents:
diff changeset
    84
*                    performed.
hgs
parents:
diff changeset
    85
* @param aName: The qualified name, or the empty string if qualified names are not available.
hgs
parents:
diff changeset
    86
* @param aAttributeList: The attributes attached to the element. If there are no attributes, it shall be an 
hgs
parents:
diff changeset
    87
*                        empty Attributes object. 
hgs
parents:
diff changeset
    88
*        
hgs
parents:
diff changeset
    89
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
    90
*/
hgs
parents:
diff changeset
    91
	inline virtual TInt StartElement(TDesC& /*aURI*/, TDesC& /*aLocalName*/, TDesC& /*aName*/, MXMLAttributes* /*aAttributeList*/){return 1;}
hgs
parents:
diff changeset
    92
hgs
parents:
diff changeset
    93
/**
hgs
parents:
diff changeset
    94
* Receive notification of the end of an element.
hgs
parents:
diff changeset
    95
* @since ?Series60_version
hgs
parents:
diff changeset
    96
* @param aURI: The Namespace URI, or the empty string if the element has no Namespace URI or if Namespace
hgs
parents:
diff changeset
    97
*              processing is not being performed.
hgs
parents:
diff changeset
    98
* @param aLocalName: The local name (without prefix), or the empty string if Namespace processing is not being
hgs
parents:
diff changeset
    99
*                    performed.
hgs
parents:
diff changeset
   100
* @param aName: The qualified name, or the empty string if qualified names are not available.
hgs
parents:
diff changeset
   101
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   102
*/
hgs
parents:
diff changeset
   103
	inline virtual TInt EndElement(TDesC& /*aURI*/, TDesC& /*aLocalName*/, TDesC& /*aName*/){return 1;}
hgs
parents:
diff changeset
   104
hgs
parents:
diff changeset
   105
/**
hgs
parents:
diff changeset
   106
* Receive notification of character data inside an element.
hgs
parents:
diff changeset
   107
* @since ?Series60_version
hgs
parents:
diff changeset
   108
* @param aBuff: The characters.
hgs
parents:
diff changeset
   109
* @param aStart: The start position in the character buffer.
hgs
parents:
diff changeset
   110
* @param aLength: The number of characters to use from the character buffer.
hgs
parents:
diff changeset
   111
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   112
*/
hgs
parents:
diff changeset
   113
	inline virtual TInt Charecters(TDesC& /*aBuf*/, TInt /*aStart*/, TInt /*aLength*/){return 1;}
hgs
parents:
diff changeset
   114
hgs
parents:
diff changeset
   115
/**
hgs
parents:
diff changeset
   116
* Receive notification of XML comment.
hgs
parents:
diff changeset
   117
* @since ?Series60_version
hgs
parents:
diff changeset
   118
* @param aComment: Buffer containing the comment.
hgs
parents:
diff changeset
   119
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   120
*/
hgs
parents:
diff changeset
   121
	inline virtual TInt Comment(TDesC& /*aComment*/){return 1;}
hgs
parents:
diff changeset
   122
hgs
parents:
diff changeset
   123
/**
hgs
parents:
diff changeset
   124
* Receive notification of a processing instruction
hgs
parents:
diff changeset
   125
* @since ?Series60_version
hgs
parents:
diff changeset
   126
* @param aTarget: The processing instruction target.
hgs
parents:
diff changeset
   127
* @param aData: The processing instruction data, or null if none is supplied.
hgs
parents:
diff changeset
   128
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   129
*/
hgs
parents:
diff changeset
   130
    inline virtual TInt ProcessingInstructions(TDesC& /*aTarget*/, TDesC& /*aData*/){return 1;}
hgs
parents:
diff changeset
   131
hgs
parents:
diff changeset
   132
/**
hgs
parents:
diff changeset
   133
* Receive notification of ignorable whitespace in element content.
hgs
parents:
diff changeset
   134
* @since ?Series60_version
hgs
parents:
diff changeset
   135
* @param aString: The whitespace characters.
hgs
parents:
diff changeset
   136
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   137
*/
hgs
parents:
diff changeset
   138
	// R&D: Feature: IgnoreWhiteSpace missing from XMLInterface
hgs
parents:
diff changeset
   139
	inline virtual TInt IgnoreWhiteSpace(TDesC& /*aString*/){return 1;}; 
hgs
parents:
diff changeset
   140
hgs
parents:
diff changeset
   141
/**
hgs
parents:
diff changeset
   142
* Receive notification of beginning of some internal and external XML entities.
hgs
parents:
diff changeset
   143
* @since ?Series60_version
hgs
parents:
diff changeset
   144
* @param aName: The name of the entity.
hgs
parents:
diff changeset
   145
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   146
*/
hgs
parents:
diff changeset
   147
hgs
parents:
diff changeset
   148
	inline virtual TInt StartEntity(TDesC& /*aName*/){return 1;};  
hgs
parents:
diff changeset
   149
hgs
parents:
diff changeset
   150
/**
hgs
parents:
diff changeset
   151
* Receive notification of end of XML entities.
hgs
parents:
diff changeset
   152
* @since ?Series60_version
hgs
parents:
diff changeset
   153
* @param aName: The name of the entity.
hgs
parents:
diff changeset
   154
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   155
*/
hgs
parents:
diff changeset
   156
hgs
parents:
diff changeset
   157
	inline virtual TInt EndEntity(TDesC& /*aName*/){return 1;}  
hgs
parents:
diff changeset
   158
hgs
parents:
diff changeset
   159
/**
hgs
parents:
diff changeset
   160
* Receive notification of a skipped entity.
hgs
parents:
diff changeset
   161
* @since ?Series60_version
hgs
parents:
diff changeset
   162
* @param aName: The name of the skipped entity.
hgs
parents:
diff changeset
   163
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   164
*/
hgs
parents:
diff changeset
   165
	// R&D: Feature: SkippedEntity missing from XMLInterface
hgs
parents:
diff changeset
   166
	inline virtual TInt SkippedEntity(TDesC& /*aName*/){return 1;} 
hgs
parents:
diff changeset
   167
hgs
parents:
diff changeset
   168
/**
hgs
parents:
diff changeset
   169
* Receive notification of beginning of CData section.
hgs
parents:
diff changeset
   170
* @since ?Series60_version
hgs
parents:
diff changeset
   171
* @param none
hgs
parents:
diff changeset
   172
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   173
*/
hgs
parents:
diff changeset
   174
	inline virtual TInt StartCDATA(){return 1;}
hgs
parents:
diff changeset
   175
hgs
parents:
diff changeset
   176
/**
hgs
parents:
diff changeset
   177
* Receive notification of end of CData section.
hgs
parents:
diff changeset
   178
* @since ?Series60_version
hgs
parents:
diff changeset
   179
* @param aName: none.
hgs
parents:
diff changeset
   180
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   181
*/
hgs
parents:
diff changeset
   182
	inline virtual TInt EndCDATA(){return 1;}
hgs
parents:
diff changeset
   183
hgs
parents:
diff changeset
   184
/**
hgs
parents:
diff changeset
   185
* Receive notification of error situation during parsing.
hgs
parents:
diff changeset
   186
* @since ?Series60_version
hgs
parents:
diff changeset
   187
* @param aErrorCode: Error status code.
hgs
parents:
diff changeset
   188
* @param aSeverity: Error Severity.
hgs
parents:
diff changeset
   189
* @return 1 if success 0 if failure.
hgs
parents:
diff changeset
   190
*/
hgs
parents:
diff changeset
   191
	inline virtual TInt Error(TInt /*aErrorCode*/, TInt /*aSeverity*/){return 1;}
hgs
parents:
diff changeset
   192
    
hgs
parents:
diff changeset
   193
/**
hgs
parents:
diff changeset
   194
* Returns parsed buffer to client.
hgs
parents:
diff changeset
   195
* @since Series60 3.1
hgs
parents:
diff changeset
   196
* @param aBuf Buffer with parsed data.
hgs
parents:
diff changeset
   197
*/
hgs
parents:
diff changeset
   198
	inline virtual void DataBuffer(const TDesC16& /*aBuf*/){return;}
hgs
parents:
diff changeset
   199
hgs
parents:
diff changeset
   200
/**
hgs
parents:
diff changeset
   201
* Returns reader index
hgs
parents:
diff changeset
   202
* @since Series60 3.1
hgs
parents:
diff changeset
   203
* @param aIndex - reader index
hgs
parents:
diff changeset
   204
*/
hgs
parents:
diff changeset
   205
	inline virtual void ReaderIndex(NW_Uint32 /*aIndex*/){return;}
hgs
parents:
diff changeset
   206
hgs
parents:
diff changeset
   207
hgs
parents:
diff changeset
   208
};
hgs
parents:
diff changeset
   209
hgs
parents:
diff changeset
   210
hgs
parents:
diff changeset
   211
#endif      // __MXMLCONTENTHANDLER_H   
hgs
parents:
diff changeset
   212
            
hgs
parents:
diff changeset
   213
// End of File