Exemplo n.º 1
0
    def persist_file_references(self, file_path):
        """
        Parses references from a file and stores them to the database
        """
        extraction_gw = ExtractionGateway()
        references = self._parse_entries_file(file_path)
        extractions = []

        for reference, index in zip(references, range(len(references))):

            extraction = Extraction()

            # Clean fields that we don't want
            reference.remove_field('reference_id')
            reference.remove_field('abstract')
            reference.remove_field('reference_type')

            url = reference.remove_field('url')
            if not url:
                url = file_path
            else:
                url = url.value

            extraction.used_result = SearchResult('', url)
            text = unicode('Reference %d from %s' %
                           (index, file_path.rsplit('/', 1)[-1]))
            extraction.file_path = text
            extraction.entries.append(reference)
            extractions.append(extraction)
            extraction_gw.persist_extraction(extraction)
            log.info(''.join(['Imported ', text.lower()]))  #@UndefinedVariable

        return extractions
Exemplo n.º 2
0
 def persist_file_references(self, file_path):
     """
     Parses references from a file and stores them to the database
     """
     extraction_gw = ExtractionGateway()
     references = self._parse_entries_file(file_path)
     extractions = []
     
     for reference, index in zip(references, range(len(references))):
         
         extraction = Extraction()
         
         # Clean fields that we don't want
         reference.remove_field('reference_id')
         reference.remove_field('abstract')
         reference.remove_field('reference_type')
         
         url = reference.remove_field('url')
         if not url:
             url = file_path
         else:
             url = url.value
         
         extraction.used_result = SearchResult('', url)
         text = unicode('Reference %d from %s' % (index,
                             file_path.rsplit('/', 1)[-1]))
         extraction.file_path = text
         extraction.entries.append(reference)
         extractions.append(extraction)
         extraction_gw.persist_extraction(extraction)
         log.info(''.join(['Imported ', text.lower()])) #@UndefinedVariable
     
     return extractions
Exemplo n.º 3
0
 def initialize(self):
     self.setOption(QtGui.QWizard.NoCancelButton, True)
     self.setOption(QtGui.QWizard.NoBackButtonOnStartPage, True)
     
     self.extraction_gw = ExtractionGateway()
     
     wizard_title = 'Manage References'
     self.page01 = ReferenceManagerPage(wizard_title, self)
     self.addPage(self.page01)
 def initialize(self):
     self.setOption(QtGui.QWizard.NoCancelButton, True)
     self.setOption(QtGui.QWizard.NoBackButtonOnStartPage, True)
     
     self.extraction_gw = ExtractionGateway()
     
     self.finish_button = self.button(QtGui.QWizard.FinishButton)
     self.finish_button.setEnabled(False)
     
     wizard_title = 'Export References'
     self.page01 = ReferenceExporterpage(wizard_title, self)
     self.addPage(self.page01)  
Exemplo n.º 5
0
class ReferenceManagerWizard(QtGui.QWizard):

    def __init__(self):
        super(ReferenceManagerWizard, self).__init__()
        self.initialize()

    def initialize(self):
        self.setOption(QtGui.QWizard.NoCancelButton, True)
        self.setOption(QtGui.QWizard.NoBackButtonOnStartPage, True)
        
        self.extraction_gw = ExtractionGateway()
        
        wizard_title = 'Manage References'
        self.page01 = ReferenceManagerPage(wizard_title, self)
        self.addPage(self.page01)

    def show(self):
        self.removePage(0)
        self.initialize()
        self.restart()
        super(ReferenceManagerWizard, self).show()

    def done(self, status):
        self.extraction_gw.flush()
Exemplo n.º 6
0
    def run(self):
        log.debug("Start running index maker")  #@UndefinedVariable

        # Run threads
        self.thread_runner = ThreadRunner(self.trhead_class, self._in_queue,
                                          self._out_queue)
        self.thread_runner.start()

        while not (self.thread_runner.finished and self._out_queue.empty()):
            extraction = self._out_queue.get()
            log.info('Persisting extraction results')  #@UndefinedVariable
            # Persist the extraction
            ExtractionGateway().persist_extraction(extraction)
            self.processed.append(extraction)

        # Commit changes to the database
        flush_changes()
        log.debug("Total processed: %d" %
                  len(self.processed))  #@UndefinedVariable