Last update: 2011-06-23

org.proteios.io.mzdata
Class MzDataImpSpectrumBlock

java.lang.Object
  extended by org.proteios.io.mzdata.MzDataImpCommon
      extended by org.proteios.io.mzdata.MzDataImpCommonDc
          extended by org.proteios.io.mzdata.MzDataImpCommonAnnotation
              extended by org.proteios.io.mzdata.MzDataImpCommonPeakList
                  extended by org.proteios.io.mzdata.MzDataImpSpectrumBlock

public class MzDataImpSpectrumBlock
extends MzDataImpCommonPeakList

This class processes a "spectrum" XML block in an mzData file. An mzData file contains information on a mass spectrometry experiment. The mzData file is first vaildated against the XML Schema Definition file mzdata.xsd. If the file is valid, its content is parsed and selected information stored in Proteios. The mzData file is parsed using cursor-based XML stream parsing. The StAX (Stream API for XML) parser finds start and stop (end) tags, which are then processed. Element attributes are located in the start tag, and elements of simple types are stored directly after the start tag is read. For more complex elements, values of attributes and sub-elements are collected in temporary variables, until the end tag is reached, and the colelcted contents are stored. Example: XML tag tagData At start tag: Method thisTagElementStart() stores attribute values. Between tags: tagData is stored in temporary StringBuffer. At end tag: Method thisTagItem() processes collected data. Tag data may be exchanged for a start/end tag pair, etc.

Version:
2.0
Author:
Olle
Last modified
$Date: 2009-04-09 08:48:11 +0200 (Thu, 09 Apr 2009) $

Field Summary
 
Fields inherited from class org.proteios.io.mzdata.MzDataImpCommonDc
anna, dc, factory
 
Fields inherited from class org.proteios.io.mzdata.MzDataImpCommon
log
 
Constructor Summary
MzDataImpSpectrumBlock(SessionControl sc)
          Default constructor.
 
Method Summary
 void blockEnd(javax.xml.stream.XMLStreamReader parser)
          Processes end of XML block processed by this class.
 void blockStart(javax.xml.stream.XMLStreamReader parser)
          Processes start of XML block processed by this class.
 List<Peak> peakArrayListItem(PeakList peakList, List<Double> peakMassData, List<Double> peakIntensityData)
          Creates a PeakArrayList.
 Peak peakItem(int peakIndex, double massToChargeRatio, double intensity)
          Creates a peak item.
 void processInternalStartElement(javax.xml.stream.XMLStreamReader parser)
          Processes an Internal StartElement event.
 void storePeakListAnnotations(PeakList peakList)
          Stores variable values as annotations for peakList.
 
Methods inherited from class org.proteios.io.mzdata.MzDataImpCommonPeakList
getPeakList, parse, setPeakList
 
Methods inherited from class org.proteios.io.mzdata.MzDataImpCommonAnnotation
fetchCvLookupAnnotation, fetchCvLookupAnnotationList, fetchCvParamAnnotation, fetchCvParamAnnotationList, fetchUserParamAnnotation, fetchUserParamAnnotationList, storeAnnotation, storeCvLookupAnnotation, storeCvParamAnnotation, storeUserParamAnnotation
 
Methods inherited from class org.proteios.io.mzdata.MzDataImpCommonDc
enableDbControl, enableDbControl, getDbControl, getSessionControl, setDbControl
 
Methods inherited from class org.proteios.io.mzdata.MzDataImpCommon
getBlockTagName, getTempStrBuf, parse, processCData, processCharacters, processInternalEndElement, setBlockTagName, setTempStrBuf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MzDataImpSpectrumBlock

public MzDataImpSpectrumBlock(SessionControl sc)
Default constructor.

Parameters:
sc -
Method Detail

blockStart

public void blockStart(javax.xml.stream.XMLStreamReader parser)
                throws javax.xml.stream.XMLStreamException
Processes start of XML block processed by this class. Extracts data from attributes.

Overrides:
blockStart in class MzDataImpCommon
Parameters:
parser - XMLStreamReader instance.
Throws:
javax.xml.stream.XMLStreamException - If there is an XML Stream related error

processInternalStartElement

public void processInternalStartElement(javax.xml.stream.XMLStreamReader parser)
                                 throws javax.xml.stream.XMLStreamException
Processes an Internal StartElement event. The blocks in the if-else section are placed in the order of appearance of the start elements in the mzData XML file. This not essential for the functionality, but makes it easier to see if a specific element is handled or not. Elements that may be daughter elements to different types of parent elements, e.g. and , are placed at a suitable location.

Overrides:
processInternalStartElement in class MzDataImpCommon
Parameters:
parser - XMLStreamReader instance.
Throws:
javax.xml.stream.XMLStreamException - If there is an XML Stream related error

blockEnd

public void blockEnd(javax.xml.stream.XMLStreamReader parser)
              throws javax.xml.stream.XMLStreamException
Processes end of XML block processed by this class.

Overrides:
blockEnd in class MzDataImpCommon
Parameters:
parser - XMLStreamReader instance.
Throws:
javax.xml.stream.XMLStreamException - If there is an XML Stream related error

peakArrayListItem

public List<Peak> peakArrayListItem(PeakList peakList,
                                    List<Double> peakMassData,
                                    List<Double> peakIntensityData)
Creates a PeakArrayList.

Parameters:
peakList - PeakList peakList for Peak ownership
peakMassData - List list of double mass values
peakIntensityData - List list of double intensity values
Returns:
peakArrayList List peakArrayList

peakItem

public Peak peakItem(int peakIndex,
                     double massToChargeRatio,
                     double intensity)
Creates a peak item.

Parameters:
peakIndex - int index for peak, starting with 0
massToChargeRatio - double massToChargeRatio for peak
intensity - double intensity for peak
Returns:
peak Peak peak

storePeakListAnnotations

public void storePeakListAnnotations(PeakList peakList)
Stores variable values as annotations for peakList.

Parameters:
peakList - PeakList peakList

Last update: 2011-06-23