/xmlbench/trunk

To get this branch, use:
bzr branch http://darksoft.org/webbzr/xmlbench/trunk

« back to all changes in this revision

Viewing changes to validate/xerces-dom.cpp

  • Committer: Suren A. Chilingaryan
  • Date: 2009-09-23 17:13:04 UTC
  • Revision ID: csa@dside.dyndns.org-20090923171304-osvtr4zqb29h11kd
Intel, Tango, Phobos, and RapidXML parsers; Memory benchmark scripts

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#include <stdio.h>
2
2
#include <sys/time.h>
3
3
#include <xercesc/util/PlatformUtils.hpp>
 
4
#include <xercesc/framework/XMLGrammarPool.hpp>
4
5
#include <xercesc/framework/MemBufInputSource.hpp>
5
6
#include <xercesc/parsers/XercesDOMParser.hpp>
6
7
#include <iostream>
8
9
#include "DOMTreeErrorReporter.hpp"
9
10
#include "tools2.h"
10
11
 
11
 
DOMTreeErrorReporter *errReporter;
12
 
XercesDOMParser *simple_parser;
13
 
XercesDOMParser *parser;
 
12
DOMTreeErrorReporter *errReporter = NULL;
 
13
XercesDOMParser *simple_parser = NULL;
 
14
XercesDOMParser *parser = NULL;
14
15
 
15
16
 
16
17
void initXML(struct TestData *td) {
24
25
}
25
26
 
26
27
void initXML_Validation(struct TestData *td) {
 
28
    if (simple_parser) {
 
29
        delete simple_parser;
 
30
        simple_parser = NULL;
 
31
    }
 
32
    
 
33
//    parser->loadGrammar(td->scfn, Grammar::SchemaGrammarType, true);
 
34
    parser->cacheGrammarFromParse(true);
 
35
    parser->useCachedGrammarInParse(true);
27
36
    parser->setDoSchema(1);
28
37
    parser->setDoNamespaces(1);
29
38
    parser->setValidationScheme(XercesDOMParser::Val_Always);
32
41
}
33
42
 
34
43
void releaseXML(struct TestData *td) {
35
 
    delete parser;
36
 
    delete simple_parser;
37
 
    delete errReporter;
 
44
    if (parser) {
 
45
        delete parser;
 
46
        parser = NULL;
 
47
    }
 
48
 
 
49
    if (simple_parser) {
 
50
        delete simple_parser;
 
51
        simple_parser = NULL;
 
52
    }
 
53
    
 
54
    if (errReporter) {
 
55
        delete errReporter;
 
56
        errReporter = NULL;
 
57
    }
 
58
    
38
59
    XMLPlatformUtils::Terminate();
39
60
}
40
61