view smart_toolShed/commons/core/parsing/MrepsToSet.py @ 0:e0f8dcca02ed

Uploaded S-MART tool. A toolbox manages RNA-Seq and ChIP-Seq data.
author yufei-luo
date Thu, 17 Jan 2013 10:52:14 -0500
parents
children
line wrap: on
line source

from commons.core.parsing.FindRep import FindRep
from xml.sax import make_parser
from xml.sax.handler import feature_namespaces
import os


class MrepsToSet(object):

    def __init__(self, mrepsInputFileName="", mrepsOuputFileName="", outputFileName=None, errorFilter=0):
        self._mrepsInputFileName = mrepsInputFileName
        self._mrepsOuputFileName = mrepsOuputFileName
        self._outputFileName = outputFileName or "%s.Mreps.set" % mrepsOuputFileName  
        self._errorFilter = errorFilter
        
    def run(self):
        xmlParser = make_parser()
        xmlParser.setFeature( feature_namespaces, 0 )
        xmlParser.setContentHandler( FindRep( self._outputFileName, self._errorFilter, 0 ) )
        xmlParser.parse( self._mrepsOuputFileName )

    def clean( self ):
        """
        Remove the output file (xml) from Mreps to keep only the 'set' file.
        """
        if os.path.exists(self._mrepsOuputFileName):
            os.remove(self._mrepsOuputFileName)