Exemple #1
0
 def queue_files(self):
     boto.log.info('Queueing files from %s' % self.input_bucket.name)
     for key in self.input_bucket:
         boto.log.info('Queueing %s' % key.name)
         m = ServiceMessage()
         if self.output_bucket:
             d = {'OutputBucket': self.output_bucket.name}
         else:
             d = None
         m.for_key(key, d)
         self.input_queue.write(m)
Exemple #2
0
 def queue_files(self):
     boto.log.info('Queueing files from %s' % self.input_bucket.name)
     for key in self.input_bucket:
         boto.log.info('Queueing %s' % key.name)
         m = ServiceMessage()
         if self.output_bucket:
             d = {'OutputBucket' : self.output_bucket.name}
         else:
             d = None
         m.for_key(key, d)
         self.input_queue.write(m)
Exemple #3
0
 def main(self, notify=False):
     self.notify('Service: %s Starting' % self.name)
     empty_reads = 0
     while self.retry_count < 0 or empty_reads < self.retry_count:
         try:
             input_message = self.read_message()
             if input_message:
                 empty_reads = 0
                 output_message = ServiceMessage(None, input_message.get_body())
                 input_file = self.get_file(input_message)
                 results = self.process_file(input_file, output_message)
                 self.save_results(results, input_message, output_message)
                 self.write_message(output_message)
                 self.delete_message(input_message)
                 self.cleanup()
             else:
                 empty_reads += 1
                 time.sleep(self.loop_delay)
         except Exception, e:
             boto.log.exception('Service Failed')
             empty_reads += 1
             self.create_connections()