diff --git a/src/output/proticdbml.cpp b/src/output/proticdbml.cpp index 962e31624e056d5c0edfa77a7b26dc7397bbc743..cf80947e1c02e408c610cbf42005bc9c06c45f93 100644 --- a/src/output/proticdbml.cpp +++ b/src/output/proticdbml.cpp @@ -220,30 +220,27 @@ void ProticdbMl::writeSamples() { _output_stream->writeEndElement();// samples } -private void writeMsRuns() throws Exception { - try { - writer.writeStartElement("msRuns"); - - for (Identification ident : arrayIdentifications) { - for (MsRun samp : ident.getMsRunSet()) { +void ProticdbMl::writeMsRuns() { + + _output_stream->writeStartElement("msRuns"); + for (std::vector<MsRunSp> msrun_sp : _sp_project.get()->getMsRunStore().getMsRunList()) { - String name = samp.getSampleName(); - name = name.replaceAll(".xml", ""); + QString name = msrun_sp.get()->getSampleName(); - String id_samp = sample_to_id.get(samp.getSampleName()); + QString id_samp = _sample_to_id.at(name); // Element spectrumList = doc.createElement("spectrumList"); // msRun.appendChild(spectrumList); - String id_msrun = msrun_to_id.get(samp.getSampleName()); + QString id_msrun = msrun_sp.get()->getXmlId(); // balise MsRun - writer.writeStartElement("msRun"); - writer.writeAttribute("sample_id", id_samp); - writer.writeAttribute("id", id_msrun); + _output_stream->writeStartElement("msRun"); + _output_stream->writeAttribute("sample_id", id_samp); + _output_stream->writeAttribute("id", id_msrun); - writer.writeStartElement("description"); - writer.writeStartElement("admin"); + _output_stream->writeStartElement("description"); + _output_stream->writeStartElement("admin"); // writer.writeStartElement("contact"); // writer.writeStartElement("email"); // writer.writeCharacters("valot@moulon.inra.fr"); @@ -254,34 +251,26 @@ private void writeMsRuns() throws Exception { // writer.writeEndElement();// name // writer.writeEndElement();// contact - writer.writeStartElement("sourceFile"); - writer.writeStartElement("nameOfFile"); - writer.writeCharacters(name + ".RAW"); - writer.writeEndElement();// nameOfFile - writer.writeEndElement();// sourceFile + _output_stream->writeStartElement("sourceFile"); + _output_stream->writeStartElement("nameOfFile"); + _output_stream->writeCharacters(name + ".RAW"); + _output_stream->writeEndElement();// nameOfFile + _output_stream->writeEndElement();// sourceFile - writer.writeStartElement("sampleName"); - writer.writeCharacters(name); - writer.writeEndElement();// sampleName - writer.writeEndElement();// admin - writer.writeEndElement();// description + _output_stream->writeStartElement("sampleName"); + _output_stream->writeCharacters(name); + _output_stream->writeEndElement();// sampleName + _output_stream->writeEndElement();// admin + _output_stream->writeEndElement();// description - writer.writeEndElement();// msRun - } + _output_stream->writeEndElement();// msRun + } - writer.writeEndElement();// msRuns - } catch (Exception e) { - String message = "error writing MS runs in ProticDbMl \n" - + e.getMessage(); - logger.error(message); - throw new Exception(message); - } + _output_stream->writeEndElement();// msRuns } -private void writeIdentificationRun(Identification identification) -throws Exception { - try { +void ProticdbMl::writeIdentificationRun(Identification identification) { writer.writeAttribute("ident_method_id", "m1"); writer.writeAttribute("customdb_id", "customdb0"); @@ -397,12 +386,6 @@ throws Exception { writer.writeEndElement();// dataProcessing writer.writeEndElement();// description - } catch (Exception e) { - String message = "error writing identificationRun in ProticDbMl \n" - + e.getMessage(); - logger.error(message); - throw new Exception(message); - } } private void writePeptideHit(Peptide pep, Group group, diff --git a/src/output/proticdbml.h b/src/output/proticdbml.h index 5a01d15793aa7f0d193b10c546def920f8311c05..f2b6837efeb37a623a343b57e9a9e275eeecd88a 100644 --- a/src/output/proticdbml.h +++ b/src/output/proticdbml.h @@ -54,6 +54,7 @@ private : void writeProject(); void writeIdentMethod(); void writeSamples(); + void writeMsRuns(); private : QFile * _output_file;