Mercurial > hg > easaier-soundaccess
comparison data/fileio/AudioSourceInfoReader.cpp @ 90:87495ac7710a
support audio source info from boca
author | lbajardsilogic |
---|---|
date | Thu, 28 Jun 2007 16:57:29 +0000 |
parents | 11e298cdb9e7 |
children | ec2ca3fbd957 |
comparison
equal
deleted
inserted
replaced
89:4fd3274908a5 | 90:87495ac7710a |
---|---|
41 } | 41 } |
42 | 42 |
43 return false; | 43 return false; |
44 } | 44 } |
45 | 45 |
46 AudioSourceInfoHandler::AudioSourceInfoHandler(AudioSourceInfoModel* model) : QXmlDefaultHandler() | 46 AudioSourceInfoHandler::AudioSourceInfoHandler(AudioSourceInfoModel* model) : QXmlDefaultHandler(), |
47 { | 47 m_model(model), |
48 m_model = model; | 48 m_inBinding(false), |
49 } | 49 m_curBindingName("") |
50 {} | |
50 | 51 |
51 bool AudioSourceInfoHandler::startElement(const QString &namespaceURI, const QString &localName, | 52 bool AudioSourceInfoHandler::startElement(const QString &namespaceURI, const QString &localName, |
52 const QString &qName, const QXmlAttributes &attributes) | 53 const QString &qName, const QXmlAttributes &attributes) |
53 { | 54 { |
54 QString name = qName.toLower(); | 55 /*QString name = qName.toLower(); |
55 bool ok = false; | 56 bool ok = false; |
56 | 57 |
57 // Valid element names: | 58 // Valid element names: |
58 // easaierResource | 59 // easaierResource |
59 // dc:identifier | 60 // dc:identifier |
75 if (!ok) { | 76 if (!ok) { |
76 std::cerr << "WARNING: connexion config-XML: Failed to completely process element \"" | 77 std::cerr << "WARNING: connexion config-XML: Failed to completely process element \"" |
77 << name.toLocal8Bit().data() << "\"" << std::endl; | 78 << name.toLocal8Bit().data() << "\"" << std::endl; |
78 } | 79 } |
79 | 80 |
81 return true;*/ | |
82 QString name = qName.toLower(); | |
83 | |
84 bool ok = false; | |
85 | |
86 // Valid element names: | |
87 // | |
88 // sparql | |
89 // head | |
90 // variable | |
91 // results | |
92 // result | |
93 // binding | |
94 | |
95 if (name == "sparql") { | |
96 | |
97 // nothing needed | |
98 ok = true; | |
99 | |
100 } else if (name == "head") { | |
101 | |
102 // nothing needed | |
103 ok = true; | |
104 | |
105 } else if (name == "variable") { | |
106 | |
107 // nothing needed | |
108 ok = true; | |
109 | |
110 } else if (name == "results") { | |
111 | |
112 // nothing needed | |
113 ok = true; | |
114 | |
115 } else if (name == "result") { | |
116 | |
117 ok = true; | |
118 | |
119 } else if (name == "binding") { | |
120 | |
121 m_curBindingName = attributes.value("name"); | |
122 ok = true; | |
123 | |
124 } else if ( (name == "uri") || (name == "literal") ) { | |
125 m_inBinding = true; | |
126 ok = true; | |
127 } | |
128 | |
129 if (!ok) { | |
130 std::cerr << "WARNING: SparqlResultsHandler-XML: Failed to completely process element \"" | |
131 << name.toLocal8Bit().data() << "\"" << std::endl; | |
132 } | |
133 | |
80 return true; | 134 return true; |
81 } | 135 } |
82 | 136 |
83 bool AudioSourceInfoHandler::endElement(const QString &namespaceURI, const QString &localName, | 137 bool AudioSourceInfoHandler::endElement(const QString &namespaceURI, const QString &localName, |
84 const QString &qName) | 138 const QString &qName) |
85 { | 139 { |
140 QString name = qName.toLower(); | |
141 | |
142 if ( (name == "uri") || (name == "literal") ) | |
143 { | |
144 m_inBinding = false; | |
145 m_curBindingName = ""; | |
146 | |
147 } else if (name == "result") | |
148 { | |
149 m_model->addInfo(m_property, m_value); | |
150 } | |
151 | |
86 return true; | 152 return true; |
87 } | 153 } |
88 | 154 |
89 bool AudioSourceInfoHandler::characters(const QString &str) | 155 bool AudioSourceInfoHandler::characters(const QString &str) |
90 { | 156 { |
91 return true; | 157 if (m_inBinding) |
158 { | |
159 if (m_curBindingName == "value") | |
160 { | |
161 m_value = str; | |
162 } | |
163 else if (m_curBindingName == "property") | |
164 { | |
165 m_property = str; | |
166 } | |
167 else | |
168 { | |
169 m_model->addInfo(m_curBindingName, str); | |
170 } | |
171 } | |
172 | |
173 return true; | |
92 } | 174 } |
93 | 175 |
94 bool AudioSourceInfoHandler::error(const QXmlParseException &exception) | 176 bool AudioSourceInfoHandler::error(const QXmlParseException &exception) |
95 { | 177 { |
96 QString errorString; | 178 QString errorString; |