view commons/core/parsing/ @ 6:769e306b7933

Change the repository level.
author yufei-luo
date Fri, 18 Jan 2013 04:54:14 -0500
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):