Пример #1
0
        sink = args[0]

        sink.lock.acquire()
        try:
            # At this point, the stream flag is disabled, and the delivery state might need to be updated
            sink.stream = False
            if sink.delivery == 'streaming':
                log.debug('Sending end stream signal after {}'.format(sink.delivery))
                sink.delivery = 'sent'
                reply((), headers={'state': 'end', 'format': 'tuple'}, **sink.recipient)
                log.info('Stream of fragment {} for request {} is done'.format(fid, sink.request_id))
        finally:
            sink.lock.release()


FragmentPlugin.register(StreamPlugin)


class StreamRequest(FragmentRequest):
    def __init__(self):
        super(StreamRequest, self).__init__()

    def _extract_content(self, request_type=STOA.StreamRequest):
        """
        Parse streaming request data. For this operation, there is no additional data to extract.
        """
        super(StreamRequest, self)._extract_content(request_type=request_type)


class StreamAction(FragmentAction):
    def __init__(self, message):
Пример #2
0
    @property
    def sink_aware(self):
        return False

    def complete(self, fid, *args):
        fragment_gp = args[0]

        try:
            if fragment_has_result_set(fid):
                _update_result_set(fid, fragment_gp)
        except Exception, e:
            traceback.print_exc()
            log.error(e.message)


FragmentPlugin.register(QueryPlugin)


class QueryRequest(FragmentRequest):
    def __init__(self):
        super(QueryRequest, self).__init__()

    def _extract_content(self, request_type=STOA.QueryRequest):
        """
        Parse query request data. For this operation, there is no additional data to extract.
        """
        super(QueryRequest, self)._extract_content(request_type=request_type)


class QueryAction(FragmentAction):
    def __init__(self, message):