Ejemplo n.º 1
0
	def run(self):
		ECA_parser.restore_vars()
		error = None
		percent = 0
		error = False
		if self.threadsync_event:
			self.threadsync_event.wait()
		if self.stopped():
			self._observer.info((False,percent,'Engine stopped',False))
		else:
                	error = self.handle_single_event(Event.initializeEvent)
		while self.eventProducer.has_next_event() and not self.stopped():
			next_event = self.eventProducer.next_event()
			if  self.threadsync_event:
				self.threadsync_event.wait()
			error = self.handle_single_event(next_event)
			if self.eventProducer.percent > percent:
				percent = self.eventProducer.percent
				self._observer.info((True,percent,'Working... '+str(percent)+'%',False))
		error = self.handle_single_event(Event.finalizeEvent)
		if not self.stopped():
			self._observer.info((False,100,'Done',False))
		elif not error:
			self._observer.info((False,percent,'Engine stopped',False))
		else:
			self._observer.info((False,percent,error,True))
		print('#!Finish rule engine thread, variables are: \n')
		print(ECA_parser.variables)
Ejemplo n.º 2
0
 def run(self):
     ECA_parser.restore_vars()
     error = None
     percent = 0
     error = False
     if self.threadsync_event:
         self.threadsync_event.wait()
     if self.stopped():
         self._observer.info((False, percent, 'Engine stopped', False))
     else:
         error = self.handle_single_event(Event.initializeEvent)
     while self.eventProducer.has_next_event() and not self.stopped():
         next_event = self.eventProducer.next_event()
         if self.threadsync_event:
             self.threadsync_event.wait()
         error = self.handle_single_event(next_event)
         if self.eventProducer.percent > percent:
             percent = self.eventProducer.percent
             self._observer.info(
                 (True, percent, 'Working... ' + str(percent) + '%', False))
     error = self.handle_single_event(Event.finalizeEvent)
     if not self.stopped():
         self._observer.info((False, 100, 'Done', False))
     elif not error:
         self._observer.info((False, percent, 'Engine stopped', False))
     else:
         self._observer.info((False, percent, error, True))
     print('#!Finish rule engine thread, variables are: \n')
     print(ECA_parser.variables)
Ejemplo n.º 3
0
def load_file_stream(file):
    if engine_thread and engine_thread.is_alive():
        return 'Stop the rule engine before loading a new file'
    else:
        try:
            ECA_parser.parse(file.read()+'\n')
            return ''
        except Exception as e:
            print("#PARSE ERROR!" + str(e))
            return str(e)
Ejemplo n.º 4
0
def load_file_stream(file):
    if engine_thread and engine_thread.is_alive():
        return 'Stop the rule engine before loading a new file'
    else:
        try:
            ECA_parser.parse(file.read() + '\n')
            return ''
        except Exception as e:
            print("#PARSE ERROR!" + str(e))
            return str(e)
Ejemplo n.º 5
0
def discard_file():
	if not engine_thread:
		ECA_parser.reset()
Ejemplo n.º 6
0
def has_errors():
	return ECA_parser.has_errors()
Ejemplo n.º 7
0
def discard_file():
    if not engine_thread:
        ECA_parser.reset()
Ejemplo n.º 8
0
def has_errors():
    return ECA_parser.has_errors()