def _doError(self, e, context): self._fireErrorEvent(e, context) if self.debug: e = ''.join(traceback.format_exception(*exc_info())) ostream = StringIO() writer = HproseWriter(ostream, True) ostream.write(HproseTags.TagError) writer.writeString(str(e).encode('utf-8')) ostream.write(HproseTags.TagEnd) return self._responseEnd(ostream, context)
def __doOutput(self, name, args, byref, simple): stream = BytesIO() writer = HproseWriter(stream, simple) stream.write(HproseTags.TagCall) writer.writeString(name) if (len(args) > 0) or byref: writer.reset() writer.writeList(args) if byref: writer.writeBoolean(True) stream.write(HproseTags.TagEnd) data = stream.getvalue() stream.close() for _filter in self.__filters: data = _filter.outputFilter(data, self) return data
def __doOutput(self, name, args, byref, simple): stream = StringIO() writer = HproseWriter(stream, simple) stream.write(HproseTags.TagCall) writer.writeString(name) if (len(args) > 0) or byref: writer.reset() writer.writeList(args) if byref: writer.writeBoolean(True) stream.write(HproseTags.TagEnd) data = stream.getvalue() stream.close() for _filter in self.__filters: data = _filter.outputFilter(data, self) return data