Esempio n. 1
0
    def request_status(self, status, message):
        if message is None:
            message = ""

        self.arclinkRequest.setStatus(status)
        self.arclinkRequest.setMessage(message)

        ars = DataModel.ArclinkRequestSummary()
        tw = self.averageTimeWindow.seconds()
        if self.totalLineCount > 0:
            # avarage request time window
            tw = self.averageTimeWindow.seconds() // self.totalLineCount
        if tw >= 2**31:
            tw = -1  # prevent 32bit int overflow
        ars.setAverageTimeWindow(tw)
        ars.setTotalLineCount(self.totalLineCount)
        ars.setOkLineCount(self.okLineCount)
        self.arclinkRequest.setSummary(ars)

        al = DataModel.ArclinkLog()
        al.add(self.arclinkRequest)

        for obj in self.requestLines:
            self.arclinkRequest.add(obj)

        for obj in self.statusLines:
            self.arclinkRequest.add(obj)

        self.send()
Esempio n. 2
0
		#self.okLineCount = self.totalLineCount - req.errorLineCount()
		self.okLineCount = 0

		for line in req.getRequestLines():
			self.line_status(line)

		for line in req.getVolumeLines():
			self.volume_status(line)

		self.request_status("END", "") # FIXME


	@catch
	def send(self):
		print "writing request with ID %s to DB" % self.arclinkRequest.requestID()
		al = DataModel.ArclinkLog()
		al.add(self.arclinkRequest)
		self.arclinkRequest.accept(self.dbWrite)

	@catch
	def __call__(self):
		return self.arclinkRequest


	@catch
	def line_status(self, line):
		start_time = line.start
		end_time = line.end
		network = line.network
		station = line.station
		channel = line.channel