Mercurial > hg > easaier-soundaccess
diff sv/main/EasaierSessionManager.cpp @ 90:87495ac7710a
support audio source info from boca
author | lbajardsilogic |
---|---|
date | Thu, 28 Jun 2007 16:57:29 +0000 |
parents | 4fd3274908a5 |
children | dd06af61a4ff |
line wrap: on
line diff
--- a/sv/main/EasaierSessionManager.cpp Thu Jun 28 16:19:29 2007 +0000 +++ b/sv/main/EasaierSessionManager.cpp Thu Jun 28 16:57:29 2007 +0000 @@ -19,10 +19,10 @@ #include <iostream> #include <QStatusBar> #include <vector> + #include <QApplication> #include <Qt> - #include "layer/Layer.h" #include "base/TempDirectory.h" #include "data/fileio/AudioSourceInfoReader.h" @@ -57,7 +57,9 @@ m_queryModel = new QueryModel(); QString filename = "http://" + m_httpClient->getHost() + "/data/query/queryfield.xml"; - loadFile(filename, LoadedFile::QUERY_CONFIG); + QString query = "http://" + m_httpClient->getHost() + "/data/query/queryfield.xml"; + + loadFile(query, filename, LoadedFile::QUERY_CONFIG); return true; } @@ -69,8 +71,17 @@ m_fileName = document->getAudioSourceInfoFileName(); m_document = document; - loadFile(m_fileName, LoadedFile::AUDIO_SOURCE_INFO ); + QString params = "&identification=" + m_fileName; + + QString query = "http://"+ m_httpClient->getHost() + ":" + QString::number(m_httpClient->getHostPort())+ + "/easaier/servlet/MOQueryServlet?theme=infoFile"+params; + + QString filename = "http://"+ m_httpClient->getHost() + ":" + QString::number(m_httpClient->getHostPort())+ + "/easaier/servlet/infoFile"; + + loadFile(query, filename, LoadedFile::AUDIO_SOURCE_INFO); + return true; } @@ -81,7 +92,16 @@ m_fileName = document->getAudioSourceInfoFileName(); m_document = document; - loadFile(m_fileName, LoadedFile::AUDIO_SOURCE_INFO); + QString params = "&identification=" + m_fileName; + + QString query = "http://"+ m_httpClient->getHost() + ":" + QString::number(m_httpClient->getHostPort())+ + "/easaier/servlet/MOQueryServlet?theme=infoFile"+params; + + QString filename = "http://"+ m_httpClient->getHost() + ":" + QString::number(m_httpClient->getHostPort())+ + "/easaier/servlet/infoFile"; + + + loadFile(query, filename, LoadedFile::AUDIO_SOURCE_INFO); return true; } @@ -114,20 +134,18 @@ } } -void EasaierSessionManager::loadFile(const QString& uri, LoadedFile::FileType type) +void EasaierSessionManager::loadFile(const QString& query, const QString& filename, LoadedFile::FileType type) { - if (uri == 0) + if ((query == 0) || (filename == 0)) return; if (m_httpClient->getHost() == "") - { return; - } - QUrl url(uri); + QUrl url(filename); QString path = url.path(); QString directory = path.left(path.lastIndexOf("/")); - QString filename = path.right(path.length() - path.lastIndexOf("/")); + QString file = path.right(path.length() - path.lastIndexOf("/")); if (directory.left(1) == "/") { @@ -136,14 +154,13 @@ //create the subdirectory in local QString localPath = TempDirectory::getInstance()->getSubDirectoryPath(directory); - localPath.append(filename); + localPath.append(file); LoadedFile* newFile = new LoadedFile(localPath); - newFile->setFileType(type); - newFile->setUri(uri); + newFile->setFileType(type); + newFile->setUri(query); - int index = m_httpClient->get(uri, newFile); - //connect(m_httpClient,SIGNAL(requestFinished ( int, bool)),this, SLOT(getFinished(int, bool))); + int index = m_httpClient->get(query, newFile); std::cerr << "Ask for file : GET " << path.toStdString() << " - index : " << index << std::endl; @@ -285,27 +302,30 @@ if (modelName != "") { QString modelId = QString::number(layer->getModelId()); - modelName.append(modelId); + //modelName.append(modelId); } else if (layer->getLayerPresentationName() == "Waveform") { - modelName = "audiofile"; + modelName = "http://purl.org/dc/elements/1.1/source"; int modelId = 1; layer->setModelName(modelName); layer->setModelId(modelId); - modelName.append(QString::number(modelId)); + //modelName.append(QString::number(modelId)); } if (modelName != "") { QString uri = m_audioSourceInfoModel->getInfo(modelName); - + + uri = "http://" + m_httpClient->getHost() + uri; + m_audioSourceInfoModel->addInfo(modelName, uri); + std::set<QString>::iterator iterModel = m_modelLoaded.find(uri); if (iterModel == m_modelLoaded.end()) { m_modelLoaded.insert(uri); - loadFile(uri, LoadedFile::MODEL); + loadFile(uri, uri, LoadedFile::MODEL); } } } @@ -327,7 +347,7 @@ QString modelName = layer->getModelName(); QString modelId = QString::number(layer->getModelId()); - modelName.append(modelId); + //modelName.append(modelId); modelName = modelName.toLower(); if (modelName == name) @@ -364,7 +384,10 @@ void EasaierSessionManager::importMetadata(const QString& filename, Pane* pane) { - loadFile(filename, LoadedFile::METADATA); + QString file = "http://" + m_httpClient->getHost() + filename; + + loadFile(file, file, LoadedFile::METADATA); + m_currentPane = pane; } @@ -380,9 +403,10 @@ } } - QString filename = "http://"+ m_httpClient->getHost() + ":" + QString::number(m_httpClient->getHostPort())+ "/easaier/servlet/MOQueryServlet?theme="+themeName+""+params; - + QString query = "http://"+ m_httpClient->getHost() + ":" + QString::number(m_httpClient->getHostPort())+ "/easaier/servlet/MOQueryServlet?theme="+themeName+""+params; + QString filename = "http://"+ m_httpClient->getHost() + ":" + QString::number(m_httpClient->getHostPort())+ "/easaier/servlet/"+themeName; QApplication::setOverrideCursor( Qt::WaitCursor ); - loadFile(filename, LoadedFile::QUERY_RESULTS); + loadFile(query, filename, LoadedFile::QUERY_RESULTS); + }