Download NHK English news podcast automatically. XML Parser "spxml" is used. This application requires mpod mother board. See also http://mbed.org/users/geodenx/notebook/mpod/
Dependencies: BlinkLed HTTPClient EthernetInterface FatFileSystemCpp MSCFileSystem spxml mbed-rtos mbed
Fork of mpod_nhk_english by
Download NHK English news podcast automatically.
XML Parser "spxml" is used.
This application requires mpod mother board.
See also http://mbed.org/users/geodenx/notebook/mpod/
spxml/spxmlevent.cpp@4:7dae52cf560f, 2012-08-20 (annotated)
- Committer:
- togayan
- Date:
- Mon Aug 20 13:27:17 2012 +0000
- Revision:
- 4:7dae52cf560f
1st revision
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
togayan | 4:7dae52cf560f | 1 | /* |
togayan | 4:7dae52cf560f | 2 | * Copyright 2007 Stephen Liu |
togayan | 4:7dae52cf560f | 3 | * For license terms, see the file COPYING along with this library. |
togayan | 4:7dae52cf560f | 4 | */ |
togayan | 4:7dae52cf560f | 5 | |
togayan | 4:7dae52cf560f | 6 | #include <string.h> |
togayan | 4:7dae52cf560f | 7 | #include <stdlib.h> |
togayan | 4:7dae52cf560f | 8 | #include "strdup.h" |
togayan | 4:7dae52cf560f | 9 | |
togayan | 4:7dae52cf560f | 10 | #include "spxmlevent.hpp" |
togayan | 4:7dae52cf560f | 11 | #include "spxmlutils.hpp" |
togayan | 4:7dae52cf560f | 12 | |
togayan | 4:7dae52cf560f | 13 | SP_XmlPullEvent :: SP_XmlPullEvent( int eventType ) |
togayan | 4:7dae52cf560f | 14 | : mEventType( eventType ) |
togayan | 4:7dae52cf560f | 15 | { |
togayan | 4:7dae52cf560f | 16 | } |
togayan | 4:7dae52cf560f | 17 | |
togayan | 4:7dae52cf560f | 18 | SP_XmlPullEvent :: ~SP_XmlPullEvent() |
togayan | 4:7dae52cf560f | 19 | { |
togayan | 4:7dae52cf560f | 20 | } |
togayan | 4:7dae52cf560f | 21 | |
togayan | 4:7dae52cf560f | 22 | int SP_XmlPullEvent :: getEventType() |
togayan | 4:7dae52cf560f | 23 | { |
togayan | 4:7dae52cf560f | 24 | return mEventType; |
togayan | 4:7dae52cf560f | 25 | } |
togayan | 4:7dae52cf560f | 26 | |
togayan | 4:7dae52cf560f | 27 | //========================================================= |
togayan | 4:7dae52cf560f | 28 | |
togayan | 4:7dae52cf560f | 29 | SP_XmlPullEventQueue :: SP_XmlPullEventQueue() |
togayan | 4:7dae52cf560f | 30 | { |
togayan | 4:7dae52cf560f | 31 | mQueue = new SP_XmlQueue(); |
togayan | 4:7dae52cf560f | 32 | } |
togayan | 4:7dae52cf560f | 33 | |
togayan | 4:7dae52cf560f | 34 | SP_XmlPullEventQueue :: ~SP_XmlPullEventQueue() |
togayan | 4:7dae52cf560f | 35 | { |
togayan | 4:7dae52cf560f | 36 | for( void * item = mQueue->pop(); NULL != item; item = mQueue->pop() ) { |
togayan | 4:7dae52cf560f | 37 | delete (SP_XmlPullEvent*)item; |
togayan | 4:7dae52cf560f | 38 | } |
togayan | 4:7dae52cf560f | 39 | |
togayan | 4:7dae52cf560f | 40 | delete mQueue; |
togayan | 4:7dae52cf560f | 41 | } |
togayan | 4:7dae52cf560f | 42 | |
togayan | 4:7dae52cf560f | 43 | void SP_XmlPullEventQueue :: enqueue( SP_XmlPullEvent * event ) |
togayan | 4:7dae52cf560f | 44 | { |
togayan | 4:7dae52cf560f | 45 | mQueue->push( event ); |
togayan | 4:7dae52cf560f | 46 | } |
togayan | 4:7dae52cf560f | 47 | |
togayan | 4:7dae52cf560f | 48 | SP_XmlPullEvent * SP_XmlPullEventQueue :: dequeue() |
togayan | 4:7dae52cf560f | 49 | { |
togayan | 4:7dae52cf560f | 50 | SP_XmlPullEvent * event = (SP_XmlPullEvent*)mQueue->pop(); |
togayan | 4:7dae52cf560f | 51 | return event; |
togayan | 4:7dae52cf560f | 52 | } |
togayan | 4:7dae52cf560f | 53 | |
togayan | 4:7dae52cf560f | 54 | //========================================================= |
togayan | 4:7dae52cf560f | 55 | |
togayan | 4:7dae52cf560f | 56 | SP_XmlStartDocEvent :: SP_XmlStartDocEvent() |
togayan | 4:7dae52cf560f | 57 | : SP_XmlPullEvent( eStartDocument ) |
togayan | 4:7dae52cf560f | 58 | { |
togayan | 4:7dae52cf560f | 59 | } |
togayan | 4:7dae52cf560f | 60 | |
togayan | 4:7dae52cf560f | 61 | SP_XmlStartDocEvent :: ~SP_XmlStartDocEvent() |
togayan | 4:7dae52cf560f | 62 | { |
togayan | 4:7dae52cf560f | 63 | } |
togayan | 4:7dae52cf560f | 64 | |
togayan | 4:7dae52cf560f | 65 | //========================================================= |
togayan | 4:7dae52cf560f | 66 | |
togayan | 4:7dae52cf560f | 67 | SP_XmlEndDocEvent :: SP_XmlEndDocEvent() |
togayan | 4:7dae52cf560f | 68 | : SP_XmlPullEvent( eEndDocument ) |
togayan | 4:7dae52cf560f | 69 | { |
togayan | 4:7dae52cf560f | 70 | } |
togayan | 4:7dae52cf560f | 71 | |
togayan | 4:7dae52cf560f | 72 | SP_XmlEndDocEvent :: ~SP_XmlEndDocEvent() |
togayan | 4:7dae52cf560f | 73 | { |
togayan | 4:7dae52cf560f | 74 | } |
togayan | 4:7dae52cf560f | 75 | |
togayan | 4:7dae52cf560f | 76 | //========================================================= |
togayan | 4:7dae52cf560f | 77 | |
togayan | 4:7dae52cf560f | 78 | SP_XmlDocTypeEvent :: SP_XmlDocTypeEvent() |
togayan | 4:7dae52cf560f | 79 | : SP_XmlPullEvent( eDocType ) |
togayan | 4:7dae52cf560f | 80 | { |
togayan | 4:7dae52cf560f | 81 | memset( mName, 0, sizeof( mName ) ); |
togayan | 4:7dae52cf560f | 82 | memset( mSystemID, 0, sizeof( mSystemID ) ); |
togayan | 4:7dae52cf560f | 83 | memset( mPublicID, 0, sizeof( mPublicID ) ); |
togayan | 4:7dae52cf560f | 84 | memset( mDTD, 0, sizeof( mDTD ) ); |
togayan | 4:7dae52cf560f | 85 | } |
togayan | 4:7dae52cf560f | 86 | |
togayan | 4:7dae52cf560f | 87 | SP_XmlDocTypeEvent :: ~SP_XmlDocTypeEvent() |
togayan | 4:7dae52cf560f | 88 | { |
togayan | 4:7dae52cf560f | 89 | } |
togayan | 4:7dae52cf560f | 90 | |
togayan | 4:7dae52cf560f | 91 | void SP_XmlDocTypeEvent :: setName( const char * name ) |
togayan | 4:7dae52cf560f | 92 | { |
togayan | 4:7dae52cf560f | 93 | strncpy( mName, name, sizeof( mName ) - 1 ); |
togayan | 4:7dae52cf560f | 94 | } |
togayan | 4:7dae52cf560f | 95 | |
togayan | 4:7dae52cf560f | 96 | const char * SP_XmlDocTypeEvent :: getName() const |
togayan | 4:7dae52cf560f | 97 | { |
togayan | 4:7dae52cf560f | 98 | return mName; |
togayan | 4:7dae52cf560f | 99 | } |
togayan | 4:7dae52cf560f | 100 | |
togayan | 4:7dae52cf560f | 101 | void SP_XmlDocTypeEvent :: setSystemID( const char * systemID ) |
togayan | 4:7dae52cf560f | 102 | { |
togayan | 4:7dae52cf560f | 103 | strncpy( mSystemID, systemID, sizeof( mSystemID ) - 1 ); |
togayan | 4:7dae52cf560f | 104 | } |
togayan | 4:7dae52cf560f | 105 | |
togayan | 4:7dae52cf560f | 106 | const char * SP_XmlDocTypeEvent :: getSystemID() const |
togayan | 4:7dae52cf560f | 107 | { |
togayan | 4:7dae52cf560f | 108 | return mSystemID; |
togayan | 4:7dae52cf560f | 109 | } |
togayan | 4:7dae52cf560f | 110 | |
togayan | 4:7dae52cf560f | 111 | void SP_XmlDocTypeEvent :: setPublicID( const char * publicID ) |
togayan | 4:7dae52cf560f | 112 | { |
togayan | 4:7dae52cf560f | 113 | strncpy( mPublicID, publicID, sizeof( mPublicID ) - 1 ); |
togayan | 4:7dae52cf560f | 114 | } |
togayan | 4:7dae52cf560f | 115 | |
togayan | 4:7dae52cf560f | 116 | const char * SP_XmlDocTypeEvent :: getPublicID() const |
togayan | 4:7dae52cf560f | 117 | { |
togayan | 4:7dae52cf560f | 118 | return mPublicID; |
togayan | 4:7dae52cf560f | 119 | } |
togayan | 4:7dae52cf560f | 120 | |
togayan | 4:7dae52cf560f | 121 | void SP_XmlDocTypeEvent :: setDTD( const char * dtd ) |
togayan | 4:7dae52cf560f | 122 | { |
togayan | 4:7dae52cf560f | 123 | strncpy( mDTD, dtd, sizeof( mDTD ) - 1 ); |
togayan | 4:7dae52cf560f | 124 | } |
togayan | 4:7dae52cf560f | 125 | |
togayan | 4:7dae52cf560f | 126 | const char * SP_XmlDocTypeEvent :: getDTD() const |
togayan | 4:7dae52cf560f | 127 | { |
togayan | 4:7dae52cf560f | 128 | return mDTD; |
togayan | 4:7dae52cf560f | 129 | } |
togayan | 4:7dae52cf560f | 130 | |
togayan | 4:7dae52cf560f | 131 | //========================================================= |
togayan | 4:7dae52cf560f | 132 | |
togayan | 4:7dae52cf560f | 133 | SP_XmlPIEvent :: SP_XmlPIEvent() |
togayan | 4:7dae52cf560f | 134 | : SP_XmlPullEvent( ePI ) |
togayan | 4:7dae52cf560f | 135 | { |
togayan | 4:7dae52cf560f | 136 | memset( mTarget, 0, sizeof( mTarget ) ); |
togayan | 4:7dae52cf560f | 137 | mData = NULL; |
togayan | 4:7dae52cf560f | 138 | } |
togayan | 4:7dae52cf560f | 139 | |
togayan | 4:7dae52cf560f | 140 | SP_XmlPIEvent :: ~SP_XmlPIEvent() |
togayan | 4:7dae52cf560f | 141 | { |
togayan | 4:7dae52cf560f | 142 | if( NULL != mData ) free( mData ); |
togayan | 4:7dae52cf560f | 143 | mData = NULL; |
togayan | 4:7dae52cf560f | 144 | } |
togayan | 4:7dae52cf560f | 145 | |
togayan | 4:7dae52cf560f | 146 | void SP_XmlPIEvent :: setTarget( const char * target ) |
togayan | 4:7dae52cf560f | 147 | { |
togayan | 4:7dae52cf560f | 148 | snprintf( mTarget, sizeof( mTarget ), "%s", target ); |
togayan | 4:7dae52cf560f | 149 | } |
togayan | 4:7dae52cf560f | 150 | |
togayan | 4:7dae52cf560f | 151 | const char * SP_XmlPIEvent :: getTarget() |
togayan | 4:7dae52cf560f | 152 | { |
togayan | 4:7dae52cf560f | 153 | return mTarget; |
togayan | 4:7dae52cf560f | 154 | } |
togayan | 4:7dae52cf560f | 155 | |
togayan | 4:7dae52cf560f | 156 | void SP_XmlPIEvent :: setData( const char * data, int len ) |
togayan | 4:7dae52cf560f | 157 | { |
togayan | 4:7dae52cf560f | 158 | if( NULL != data ) { |
togayan | 4:7dae52cf560f | 159 | if( NULL != mData ) free( mData ); |
togayan | 4:7dae52cf560f | 160 | mData = (char*)malloc( len + 1 ); |
togayan | 4:7dae52cf560f | 161 | memcpy( mData, data, len ); |
togayan | 4:7dae52cf560f | 162 | mData[ len ] = '\0'; |
togayan | 4:7dae52cf560f | 163 | } |
togayan | 4:7dae52cf560f | 164 | } |
togayan | 4:7dae52cf560f | 165 | |
togayan | 4:7dae52cf560f | 166 | const char * SP_XmlPIEvent :: getData() |
togayan | 4:7dae52cf560f | 167 | { |
togayan | 4:7dae52cf560f | 168 | return mData; |
togayan | 4:7dae52cf560f | 169 | } |
togayan | 4:7dae52cf560f | 170 | |
togayan | 4:7dae52cf560f | 171 | //========================================================= |
togayan | 4:7dae52cf560f | 172 | |
togayan | 4:7dae52cf560f | 173 | SP_XmlDocDeclEvent :: SP_XmlDocDeclEvent() |
togayan | 4:7dae52cf560f | 174 | : SP_XmlPullEvent( eDocDecl ) |
togayan | 4:7dae52cf560f | 175 | { |
togayan | 4:7dae52cf560f | 176 | memset( mVersion, 0, sizeof( mVersion ) ); |
togayan | 4:7dae52cf560f | 177 | memset( mEncoding, 0, sizeof( mEncoding ) ); |
togayan | 4:7dae52cf560f | 178 | mStandalone = -1; |
togayan | 4:7dae52cf560f | 179 | } |
togayan | 4:7dae52cf560f | 180 | |
togayan | 4:7dae52cf560f | 181 | SP_XmlDocDeclEvent :: ~SP_XmlDocDeclEvent() |
togayan | 4:7dae52cf560f | 182 | { |
togayan | 4:7dae52cf560f | 183 | } |
togayan | 4:7dae52cf560f | 184 | |
togayan | 4:7dae52cf560f | 185 | void SP_XmlDocDeclEvent :: setVersion( const char * version ) |
togayan | 4:7dae52cf560f | 186 | { |
togayan | 4:7dae52cf560f | 187 | strncpy( mVersion, version, sizeof( mVersion ) -1 ); |
togayan | 4:7dae52cf560f | 188 | } |
togayan | 4:7dae52cf560f | 189 | |
togayan | 4:7dae52cf560f | 190 | const char * SP_XmlDocDeclEvent :: getVersion() const |
togayan | 4:7dae52cf560f | 191 | { |
togayan | 4:7dae52cf560f | 192 | return mVersion; |
togayan | 4:7dae52cf560f | 193 | } |
togayan | 4:7dae52cf560f | 194 | |
togayan | 4:7dae52cf560f | 195 | void SP_XmlDocDeclEvent :: setEncoding( const char * encoding ) |
togayan | 4:7dae52cf560f | 196 | { |
togayan | 4:7dae52cf560f | 197 | strncpy( mEncoding, encoding, sizeof( mEncoding ) -1 ); |
togayan | 4:7dae52cf560f | 198 | } |
togayan | 4:7dae52cf560f | 199 | |
togayan | 4:7dae52cf560f | 200 | const char * SP_XmlDocDeclEvent :: getEncoding() const |
togayan | 4:7dae52cf560f | 201 | { |
togayan | 4:7dae52cf560f | 202 | return mEncoding; |
togayan | 4:7dae52cf560f | 203 | } |
togayan | 4:7dae52cf560f | 204 | |
togayan | 4:7dae52cf560f | 205 | void SP_XmlDocDeclEvent :: setStandalone( int standalone ) |
togayan | 4:7dae52cf560f | 206 | { |
togayan | 4:7dae52cf560f | 207 | mStandalone = standalone; |
togayan | 4:7dae52cf560f | 208 | } |
togayan | 4:7dae52cf560f | 209 | |
togayan | 4:7dae52cf560f | 210 | int SP_XmlDocDeclEvent :: getStandalone() const |
togayan | 4:7dae52cf560f | 211 | { |
togayan | 4:7dae52cf560f | 212 | return mStandalone; |
togayan | 4:7dae52cf560f | 213 | } |
togayan | 4:7dae52cf560f | 214 | |
togayan | 4:7dae52cf560f | 215 | //========================================================= |
togayan | 4:7dae52cf560f | 216 | |
togayan | 4:7dae52cf560f | 217 | SP_XmlStartTagEvent :: SP_XmlStartTagEvent() |
togayan | 4:7dae52cf560f | 218 | : SP_XmlPullEvent( eStartTag ) |
togayan | 4:7dae52cf560f | 219 | { |
togayan | 4:7dae52cf560f | 220 | mName = NULL; |
togayan | 4:7dae52cf560f | 221 | mAttrNameList = new SP_XmlArrayList(); |
togayan | 4:7dae52cf560f | 222 | mAttrValueList = new SP_XmlArrayList(); |
togayan | 4:7dae52cf560f | 223 | } |
togayan | 4:7dae52cf560f | 224 | |
togayan | 4:7dae52cf560f | 225 | SP_XmlStartTagEvent :: ~SP_XmlStartTagEvent() |
togayan | 4:7dae52cf560f | 226 | { |
togayan | 4:7dae52cf560f | 227 | if( NULL != mName ) free( mName ); |
togayan | 4:7dae52cf560f | 228 | mName = NULL; |
togayan | 4:7dae52cf560f | 229 | |
togayan | 4:7dae52cf560f | 230 | int i = 0; |
togayan | 4:7dae52cf560f | 231 | |
togayan | 4:7dae52cf560f | 232 | for( i = 0; i < mAttrNameList->getCount(); i++ ) { |
togayan | 4:7dae52cf560f | 233 | free( (char*)mAttrNameList->getItem( i ) ); |
togayan | 4:7dae52cf560f | 234 | } |
togayan | 4:7dae52cf560f | 235 | |
togayan | 4:7dae52cf560f | 236 | delete mAttrNameList; |
togayan | 4:7dae52cf560f | 237 | mAttrNameList = NULL; |
togayan | 4:7dae52cf560f | 238 | |
togayan | 4:7dae52cf560f | 239 | for( i = 0; i < mAttrValueList->getCount(); i++ ) { |
togayan | 4:7dae52cf560f | 240 | free( (char*)mAttrValueList->getItem( i ) ); |
togayan | 4:7dae52cf560f | 241 | } |
togayan | 4:7dae52cf560f | 242 | delete mAttrValueList; |
togayan | 4:7dae52cf560f | 243 | mAttrValueList = NULL; |
togayan | 4:7dae52cf560f | 244 | } |
togayan | 4:7dae52cf560f | 245 | |
togayan | 4:7dae52cf560f | 246 | void SP_XmlStartTagEvent :: setName( const char * name ) |
togayan | 4:7dae52cf560f | 247 | { |
togayan | 4:7dae52cf560f | 248 | if( NULL != name ) { |
togayan | 4:7dae52cf560f | 249 | if( NULL != mName ) free( mName ); |
togayan | 4:7dae52cf560f | 250 | mName = strdup( name ); |
togayan | 4:7dae52cf560f | 251 | } |
togayan | 4:7dae52cf560f | 252 | } |
togayan | 4:7dae52cf560f | 253 | |
togayan | 4:7dae52cf560f | 254 | const char * SP_XmlStartTagEvent :: getName() const |
togayan | 4:7dae52cf560f | 255 | { |
togayan | 4:7dae52cf560f | 256 | return mName; |
togayan | 4:7dae52cf560f | 257 | } |
togayan | 4:7dae52cf560f | 258 | |
togayan | 4:7dae52cf560f | 259 | void SP_XmlStartTagEvent :: addAttr( const char * name, const char * value ) |
togayan | 4:7dae52cf560f | 260 | { |
togayan | 4:7dae52cf560f | 261 | if( NULL != name ) mAttrNameList->append( strdup( name ) ); |
togayan | 4:7dae52cf560f | 262 | if( NULL != value ) mAttrValueList->append( strdup( value ) ); |
togayan | 4:7dae52cf560f | 263 | } |
togayan | 4:7dae52cf560f | 264 | |
togayan | 4:7dae52cf560f | 265 | const char * SP_XmlStartTagEvent :: getAttrValue( const char * name ) const |
togayan | 4:7dae52cf560f | 266 | { |
togayan | 4:7dae52cf560f | 267 | const char * ret = NULL; |
togayan | 4:7dae52cf560f | 268 | |
togayan | 4:7dae52cf560f | 269 | for( int i = 0; i < mAttrNameList->getCount(); i++ ) { |
togayan | 4:7dae52cf560f | 270 | if( 0 == strcmp( name, (char*)mAttrNameList->getItem( i ) ) ) { |
togayan | 4:7dae52cf560f | 271 | ret = (char*)mAttrValueList->getItem( i ); |
togayan | 4:7dae52cf560f | 272 | break; |
togayan | 4:7dae52cf560f | 273 | } |
togayan | 4:7dae52cf560f | 274 | } |
togayan | 4:7dae52cf560f | 275 | |
togayan | 4:7dae52cf560f | 276 | return ret; |
togayan | 4:7dae52cf560f | 277 | } |
togayan | 4:7dae52cf560f | 278 | |
togayan | 4:7dae52cf560f | 279 | int SP_XmlStartTagEvent :: getAttrCount() const |
togayan | 4:7dae52cf560f | 280 | { |
togayan | 4:7dae52cf560f | 281 | return mAttrNameList->getCount(); |
togayan | 4:7dae52cf560f | 282 | } |
togayan | 4:7dae52cf560f | 283 | |
togayan | 4:7dae52cf560f | 284 | const char * SP_XmlStartTagEvent :: getAttr( int index, const char ** value ) const |
togayan | 4:7dae52cf560f | 285 | { |
togayan | 4:7dae52cf560f | 286 | const char * name = (char*)mAttrNameList->getItem( index ); |
togayan | 4:7dae52cf560f | 287 | if( NULL != name && NULL != value ) *value = (char*)mAttrValueList->getItem( index ); |
togayan | 4:7dae52cf560f | 288 | |
togayan | 4:7dae52cf560f | 289 | return name; |
togayan | 4:7dae52cf560f | 290 | } |
togayan | 4:7dae52cf560f | 291 | |
togayan | 4:7dae52cf560f | 292 | void SP_XmlStartTagEvent :: removeAttr( const char * name ) |
togayan | 4:7dae52cf560f | 293 | { |
togayan | 4:7dae52cf560f | 294 | int index = -1; |
togayan | 4:7dae52cf560f | 295 | |
togayan | 4:7dae52cf560f | 296 | for( int i = 0; i < mAttrNameList->getCount(); i++ ) { |
togayan | 4:7dae52cf560f | 297 | if( 0 == strcmp( name, (char*)mAttrNameList->getItem( i ) ) ) { |
togayan | 4:7dae52cf560f | 298 | index = i; |
togayan | 4:7dae52cf560f | 299 | break; |
togayan | 4:7dae52cf560f | 300 | } |
togayan | 4:7dae52cf560f | 301 | } |
togayan | 4:7dae52cf560f | 302 | |
togayan | 4:7dae52cf560f | 303 | if( index >= 0 ) { |
togayan | 4:7dae52cf560f | 304 | free( mAttrNameList->takeItem( index ) ); |
togayan | 4:7dae52cf560f | 305 | free( mAttrValueList->takeItem( index ) ); |
togayan | 4:7dae52cf560f | 306 | } |
togayan | 4:7dae52cf560f | 307 | } |
togayan | 4:7dae52cf560f | 308 | |
togayan | 4:7dae52cf560f | 309 | //========================================================= |
togayan | 4:7dae52cf560f | 310 | |
togayan | 4:7dae52cf560f | 311 | SP_XmlTextEvent :: SP_XmlTextEvent( int eventType ) |
togayan | 4:7dae52cf560f | 312 | : SP_XmlPullEvent( eventType ) |
togayan | 4:7dae52cf560f | 313 | { |
togayan | 4:7dae52cf560f | 314 | mText = NULL; |
togayan | 4:7dae52cf560f | 315 | } |
togayan | 4:7dae52cf560f | 316 | |
togayan | 4:7dae52cf560f | 317 | SP_XmlTextEvent :: ~SP_XmlTextEvent() |
togayan | 4:7dae52cf560f | 318 | { |
togayan | 4:7dae52cf560f | 319 | if( NULL != mText ) free( mText ); |
togayan | 4:7dae52cf560f | 320 | mText = NULL; |
togayan | 4:7dae52cf560f | 321 | } |
togayan | 4:7dae52cf560f | 322 | |
togayan | 4:7dae52cf560f | 323 | void SP_XmlTextEvent :: setText( const char * text, int len ) |
togayan | 4:7dae52cf560f | 324 | { |
togayan | 4:7dae52cf560f | 325 | if( NULL != text ) { |
togayan | 4:7dae52cf560f | 326 | if( NULL != mText ) free( mText ); |
togayan | 4:7dae52cf560f | 327 | mText = (char*)malloc( len + 1 ); |
togayan | 4:7dae52cf560f | 328 | memcpy( mText, text, len ); |
togayan | 4:7dae52cf560f | 329 | mText[ len ] = '\0'; |
togayan | 4:7dae52cf560f | 330 | } |
togayan | 4:7dae52cf560f | 331 | } |
togayan | 4:7dae52cf560f | 332 | |
togayan | 4:7dae52cf560f | 333 | const char * SP_XmlTextEvent :: getText() const |
togayan | 4:7dae52cf560f | 334 | { |
togayan | 4:7dae52cf560f | 335 | return mText; |
togayan | 4:7dae52cf560f | 336 | } |
togayan | 4:7dae52cf560f | 337 | |
togayan | 4:7dae52cf560f | 338 | //========================================================= |
togayan | 4:7dae52cf560f | 339 | |
togayan | 4:7dae52cf560f | 340 | SP_XmlEndTagEvent :: SP_XmlEndTagEvent() |
togayan | 4:7dae52cf560f | 341 | : SP_XmlTextEvent( eEndTag ) |
togayan | 4:7dae52cf560f | 342 | { |
togayan | 4:7dae52cf560f | 343 | } |
togayan | 4:7dae52cf560f | 344 | |
togayan | 4:7dae52cf560f | 345 | SP_XmlEndTagEvent :: ~SP_XmlEndTagEvent() |
togayan | 4:7dae52cf560f | 346 | { |
togayan | 4:7dae52cf560f | 347 | } |
togayan | 4:7dae52cf560f | 348 | |
togayan | 4:7dae52cf560f | 349 | //========================================================= |
togayan | 4:7dae52cf560f | 350 | |
togayan | 4:7dae52cf560f | 351 | SP_XmlCDataEvent :: SP_XmlCDataEvent() |
togayan | 4:7dae52cf560f | 352 | : SP_XmlTextEvent( eCData ) |
togayan | 4:7dae52cf560f | 353 | { |
togayan | 4:7dae52cf560f | 354 | } |
togayan | 4:7dae52cf560f | 355 | |
togayan | 4:7dae52cf560f | 356 | SP_XmlCDataEvent :: ~SP_XmlCDataEvent() |
togayan | 4:7dae52cf560f | 357 | { |
togayan | 4:7dae52cf560f | 358 | } |
togayan | 4:7dae52cf560f | 359 | |
togayan | 4:7dae52cf560f | 360 | //========================================================= |
togayan | 4:7dae52cf560f | 361 | |
togayan | 4:7dae52cf560f | 362 | SP_XmlCommentEvent :: SP_XmlCommentEvent() |
togayan | 4:7dae52cf560f | 363 | : SP_XmlTextEvent( eComment ) |
togayan | 4:7dae52cf560f | 364 | { |
togayan | 4:7dae52cf560f | 365 | } |
togayan | 4:7dae52cf560f | 366 | |
togayan | 4:7dae52cf560f | 367 | SP_XmlCommentEvent :: ~SP_XmlCommentEvent() |
togayan | 4:7dae52cf560f | 368 | { |
togayan | 4:7dae52cf560f | 369 | } |