Mercurial > hg > easaier-soundaccess
changeset 244:ec2ca3fbd957
update AudioSourceInfoReader and SparqlResultsReader according to new sparql query
author | lbajardsilogic |
---|---|
date | Fri, 28 Mar 2008 12:22:56 +0000 |
parents | e977d4abea8a |
children | 87ccc62d9ea5 |
files | data/fileio/AudioSourceInfoReader.cpp data/fileio/AudioSourceInfoReader.h data/fileio/SparqlResultsReader.cpp data/fileio/SparqlResultsReader.h data/model/AudioSourceInfoModel.cpp data/model/AudioSourceInfoModel.h sv/main/EasaierSessionManager.cpp widgets/InfoWidget.cpp widgets/QueryResultsWidget.cpp |
diffstat | 9 files changed, 79 insertions(+), 31 deletions(-) [+] |
line wrap: on
line diff
--- a/data/fileio/AudioSourceInfoReader.cpp Fri Mar 28 11:15:59 2008 +0000 +++ b/data/fileio/AudioSourceInfoReader.cpp Fri Mar 28 12:22:56 2008 +0000 @@ -127,7 +127,7 @@ } if (!ok) { - std::cerr << "WARNING: SparqlResultsHandler-XML: Failed to completely process element \"" + std::cerr << "WARNING: AudioSourceInfoHandler-XML: Failed to completely process element \"" << name.toLocal8Bit().data() << "\"" << std::endl; } @@ -146,7 +146,12 @@ } else if (name == "result") { - m_model->addInfo(m_property, m_value); + m_model->addInfo("composer", m_composer); + m_model->addInfo("arranger", m_arranger); + m_composer.clear(); + m_arranger.clear(); + m_composer.append(" -"); + m_arranger.append(" -"); } return true; @@ -156,13 +161,13 @@ { if (m_inBinding) { - if (m_curBindingName == "value") + if (m_curBindingName.contains("composer")) { - m_value = str; + m_composer.append(" " + str); } - else if (m_curBindingName == "property") + else if (m_curBindingName.contains("arranger")) { - m_property = str; + m_arranger.append(" " + str); } else { @@ -176,7 +181,7 @@ bool AudioSourceInfoHandler::error(const QXmlParseException &exception) { QString errorString; - errorString += QString("ERROR: connexion config-XML: %1 at line %2, column %3") + errorString += QString("ERROR: connexion AudioSourceInfoHandler-XML: %1 at line %2, column %3") .arg(exception.message()) .arg(exception.lineNumber()) .arg(exception.columnNumber()); @@ -187,7 +192,7 @@ bool AudioSourceInfoHandler::fatalError(const QXmlParseException &exception) { QString errorString; - errorString += QString("FATAL ERROR: connexion config-XML: %1 at line %2, column %3") + errorString += QString("FATAL ERROR: connexion AudioSourceInfoHandler-XML: %1 at line %2, column %3") .arg(exception.message()) .arg(exception.lineNumber()) .arg(exception.columnNumber());
--- a/data/fileio/AudioSourceInfoReader.h Fri Mar 28 11:15:59 2008 +0000 +++ b/data/fileio/AudioSourceInfoReader.h Fri Mar 28 12:22:56 2008 +0000 @@ -52,8 +52,8 @@ QString m_curBindingName; - QString m_property; - QString m_value; + QString m_composer; + QString m_arranger; };
--- a/data/fileio/SparqlResultsReader.cpp Fri Mar 28 11:15:59 2008 +0000 +++ b/data/fileio/SparqlResultsReader.cpp Fri Mar 28 12:22:56 2008 +0000 @@ -120,6 +120,13 @@ } else if (name == "result") { + m_resultsWidget->addInfo("composer", m_composer); + m_resultsWidget->addInfo("arranger", m_arranger); + m_composer.clear(); + m_arranger.clear(); + m_composer.append(" -"); + m_arranger.append(" -"); + m_resultsWidget->saveCurResult(); } @@ -130,7 +137,18 @@ { if (m_inBinding) { - m_resultsWidget->addInfo(m_curBindingName, str); + if (m_curBindingName.contains("composer")) + { + m_composer.append(" " + str); + } + else if (m_curBindingName.contains("arranger")) + { + m_arranger.append(" " + str); + } + else + { + m_resultsWidget->addInfo(m_curBindingName, str); + } } return true;
--- a/data/fileio/SparqlResultsReader.h Fri Mar 28 11:15:59 2008 +0000 +++ b/data/fileio/SparqlResultsReader.h Fri Mar 28 12:22:56 2008 +0000 @@ -51,6 +51,9 @@ bool m_inBinding; QString m_curBindingName; + + QString m_composer; + QString m_arranger; }; #endif
--- a/data/model/AudioSourceInfoModel.cpp Fri Mar 28 11:15:59 2008 +0000 +++ b/data/model/AudioSourceInfoModel.cpp Fri Mar 28 12:22:56 2008 +0000 @@ -23,17 +23,29 @@ void AudioSourceInfoModel::addInfo(QString proper, QString value) { - m_info[proper.toLower()] = value; + std::map<QString, QStringList*>::iterator info = m_info.find(proper.toLower()); + if (info != m_info.end()) + { + QStringList* infolist = info->second; + if (!(infolist->contains(value))) + infolist->push_back(value); + } + else + { + QStringList* infolist = new QStringList(value); + m_info[proper.toLower()] = infolist; + } + } -QString AudioSourceInfoModel::getInfo(const QString& proper) +QStringList* AudioSourceInfoModel::getInfo(const QString& proper) { - std::map<QString, QString>::iterator info; + std::map<QString, QStringList*>::iterator info; info = m_info.find(proper.toLower()); if (info == m_info.end()) - return ""; + return 0; return (info->second); } @@ -42,12 +54,12 @@ { QString proper = ""; - std::map<QString, QString>::iterator iter; + std::map<QString, QStringList*>::iterator iter; for (iter = m_info.begin(); iter != m_info.end(); iter++) { - QString infoValue = iter->second; - if (infoValue == value) + QStringList* infoValue = iter->second; + if (infoValue->contains(value)) { proper = iter->first; return proper;
--- a/data/model/AudioSourceInfoModel.h Fri Mar 28 11:15:59 2008 +0000 +++ b/data/model/AudioSourceInfoModel.h Fri Mar 28 12:22:56 2008 +0000 @@ -14,7 +14,7 @@ #ifndef _AUDIO_SOURCE_INFO_MODEL_H_ #define _AUDIO_SOURCE_INFO_MODEL_H_ -#include <QString> +#include <QStringList> #include <map> @@ -26,15 +26,15 @@ void addInfo(QString proper, QString value); - QString getInfo(const QString& proper); + QStringList* getInfo(const QString& proper); - inline std::map<QString, QString>& getInfo(){return m_info;} + inline std::map<QString, QStringList*>& getInfo(){return m_info;} QString getKey(const QString& value) ; private: - std::map<QString, QString> m_info; + std::map<QString, QStringList*> m_info; };
--- a/sv/main/EasaierSessionManager.cpp Fri Mar 28 11:15:59 2008 +0000 +++ b/sv/main/EasaierSessionManager.cpp Fri Mar 28 12:22:56 2008 +0000 @@ -331,7 +331,8 @@ } else if (layer->getLayerPresentationName() == "Waveform") { - modelName = "http://purl.org/dc/elements/1.1/source"; + //modelName = "http://purl.org/dc/elements/1.1/source"; + modelName = "available_as"; int modelId = 1; layer->setModelName(modelName); layer->setModelId(modelId); @@ -340,7 +341,7 @@ if (modelName != "") { - QString uri = m_audioSourceInfoModel->getInfo(modelName); + QString uri = m_audioSourceInfoModel->getInfo(modelName)->at(0); QString query = m_httpClient->getServletName() + "?theme=getFile&fileName="+uri;
--- a/widgets/InfoWidget.cpp Fri Mar 28 11:15:59 2008 +0000 +++ b/widgets/InfoWidget.cpp Fri Mar 28 12:22:56 2008 +0000 @@ -57,8 +57,8 @@ { reset(); - std::map<QString, QString> info = model->getInfo(); - std::map<QString, QString>::iterator iterInfo; + std::map<QString, QStringList*> info = model->getInfo(); + std::map<QString, QStringList*>::iterator iterInfo; QLabel* proper; QLabel* icon; QLabel* value; @@ -69,7 +69,7 @@ m_infoLayout->setColumnMinimumWidth(3,20); //display author and title at first - iterInfo = info.find("title"); +/* iterInfo = info.find("performance_title"); if (iterInfo!= info.end()) { proper = new QLabel(iterInfo->first.toUpper()); @@ -89,12 +89,12 @@ } m_infoLayout->setRowMinimumHeight(row,25); row++; - + */ //display other info for (iterInfo = info.begin(); iterInfo != info.end(); iterInfo++) { - if ((iterInfo->first != "title") && (iterInfo->first != "author") && (iterInfo->first.contains("http://purl.org/ontology/mo"))) + /*if ((iterInfo->first != "title") && (iterInfo->first != "author") && (iterInfo->first.contains("http://purl.org/ontology/mo"))) { QString properName; properName = iterInfo->first.split("#").last(); @@ -130,7 +130,16 @@ m_infoLayout->addWidget(value, row, 4,1,1); row++; } - } + }*/ + + proper = new QLabel(iterInfo->first); + value = new QLabel(iterInfo->second->join(" ")); + //connect the main window to the linkActivated signal + //connect(value, SIGNAL(linkActivated(QString)), MainWindow::instance(), SLOT(importEasaierLayer(QString))); + + m_infoLayout->addWidget(proper, row, 2,1,1); + m_infoLayout->addWidget(value, row, 4,1,1); + row++; } m_infoLayout->setColumnStretch( 4, 1);
--- a/widgets/QueryResultsWidget.cpp Fri Mar 28 11:15:59 2008 +0000 +++ b/widgets/QueryResultsWidget.cpp Fri Mar 28 12:22:56 2008 +0000 @@ -142,7 +142,7 @@ { if ((*iterOnInfo).name != "signal") { - if((*iterOnInfo).name == "composer_given_name"){ + if((*iterOnInfo).name == "composer"){ author = (*iterOnInfo).value; } if ((*iterOnInfo).name == "performance_title")