diff sv/main/EasaierSessionManager.cpp @ 261:ff8187498612

save/open a session support new SPARQL queries
author lbajardsilogic
date Fri, 20 Jun 2008 12:09:57 +0000
parents 6f798a3571b0
children 3f41cb822166
line wrap: on
line diff
--- a/sv/main/EasaierSessionManager.cpp	Fri Jun 20 07:29:17 2008 +0000
+++ b/sv/main/EasaierSessionManager.cpp	Fri Jun 20 12:09:57 2008 +0000
@@ -225,9 +225,6 @@
 	int index;
 
 	// build the header
-	/*QHttpRequestHeader header("POST", "/easaier/RetrieverService");
-    header.setValue("Host", "192.168.0.115"); //"easaier.silogic.fr");
-	header.setValue("Port", "8080"); //"9875");*/
 	QHttpRequestHeader header("POST", m_httpClient->getServletName());
 	header.setValue("Host", m_httpClient->getHost());
 	header.setValue("Port", QString::number(m_httpClient->getHostPort()));
@@ -276,7 +273,7 @@
 	LoadedFile::FileType type = loadedFile->getFileType();
 	QString filename = loadedFile->fileName();
 	QString uri = loadedFile->getUri();
-
+	
 	//delete de file and erase from the loaded file queue
 	delete loadedFile;
 	m_loadFile.erase(iter);
@@ -311,7 +308,16 @@
 		}
 		case LoadedFile::MODEL :
 		{
-			QString modelName = m_audioSourceInfoModel->getKey(uri);
+			QString modelName = "";
+			if (uri.left(5) == "/data")
+			{
+				modelName = m_audioSourceInfoModel->getKey("file:/" + uri);
+			}
+			else
+			{
+				modelName = uri.right(uri.length() - uri.lastIndexOf('/') -1);
+				modelName.remove(".txt");
+			}
 
 			read = addModelToLayers(modelName, filename);
 
@@ -392,23 +398,13 @@
 		Layer * layer = *iter;
 
 		QString modelName	= layer->getModelName();
-		if (modelName != "")
+		if (layer->getLayerPresentationName() == "Waveform")
 		{
-			QString modelId		= QString::number(layer->getModelId());
-			//modelName.append(modelId);
-
-		} else if (layer->getLayerPresentationName() == "Waveform")
-		{
-			//modelName = "http://purl.org/dc/elements/1.1/source";
 			modelName = "available_as";
 			int modelId = 1;
 			layer->setModelName(modelName);
 			layer->setModelId(modelId);
-			//modelName.append(QString::number(modelId));
-		} 
-		
-		if (modelName != "")
-		{
+			
 			QStringList* uriList = m_audioSourceInfoModel->getInfo(modelName);
 			if (!uriList)
 				return;
@@ -425,6 +421,18 @@
 				m_modelLoaded.insert(uri);	
 				loadFile(query, uri, LoadedFile::MODEL);
 			}
+		} else if (modelName != "")
+		{
+			std::set<QString>::iterator iterModel = m_modelLoaded.find(modelName);
+
+			if (iterModel == m_modelLoaded.end())
+			{
+				QString query = m_httpClient->getServletName() + "?theme=getTimeLine&signal="+m_document->getAudioSourceInfoFileName()+"&event_label="+modelName;
+				QString file = "metadata/" + modelName + ".txt";
+
+				m_modelLoaded.insert(modelName);	
+				loadFile(query, file, LoadedFile::MODEL);
+			}
 		}
 	}
 }
@@ -445,9 +453,6 @@
 		QString modelName	= layer->getModelName();
 		QString modelId		= QString::number(layer->getModelId());
 
-		//modelName.append(modelId);
-		modelName = modelName.toLower();
-
 		if (modelName == name)
 		{
 			std::map<QString, Model *>::iterator iterModel;
@@ -510,7 +515,7 @@
 	for (iter = relMediaList->begin(); iter != relMediaList->end(); iter++)
 	{
 		filename = iter->first;
-		filename.remove("file:");
+		filename.remove("file:/");
 
 		query = m_httpClient->getServletName() + "?theme=getFile&fileName=" + filename;