def _start_delete_stream(self,stream_id, expected_version, on_success, on_failed, ):
    Ensure.is_not_empty_string(stream_id, "stream_id")
    Ensure.is_number(expected_version, "expected_version")
    Ensure.is_function(on_success, "on_success")
    Ensure.is_function(on_failed, "on_failed")

    stream_id = quote(stream_id)
    url = "{0}/streams/{1}".format(self._base_url, stream_id)
    body = to_json(DeleteStreamRequestBody(expected_version))
    self._tornado_http_sender.send_async(url, "DELETE", self._headers, body,
        lambda x: self._delete_stream_callback(x, on_success, on_failed))
  def _start_append_to_stream(self,stream_id, events, expected_version, on_success, on_failed):
    Ensure.is_not_empty_string(stream_id, "stream_id")
    Ensure.is_number(expected_version, "expected_version")
    Ensure.is_function(on_success, "on_success")
    Ensure.is_function(on_failed, "on_failed")

    stream_id = quote(stream_id)
    if type(events) is not list:
      events = [events]
    body = to_json(AppendToStreamRequestBody(expected_version, events))
    url = "{0}/streams/{1}".format(self._base_url,stream_id)
    self._tornado_http_sender.send_async(url,"POST", self._headers, body,
        lambda x: self._append_to_stream_callback(x, on_success, on_failed))
  def _start_read_all_events_backward(self, prepare_position, commit_position, count, on_success, on_failed):
    Ensure.is_number(prepare_position, "prepare_position")
    Ensure.is_number(commit_position, "commit_position")
    Ensure.is_greater_equal_number_then(1, count, "count")
    Ensure.is_function(on_success, "on_success")
    Ensure.is_function(on_failed, "on_failed")

    events = []
    batch_counter = 0
    params = ReadEventsData
    params.prepare_position = prepare_position
    params.commit_position = commit_position
    params.count = count
    params.batch_counter = batch_counter
    params.events = events
    self._read_batch_all_events_backward(params, on_success, on_failed)
Пример #4
0
    def _start_append_to_stream(self, stream_id, events, expected_version,
                                on_success, on_failed):
        Ensure.is_not_empty_string(stream_id, "stream_id")
        Ensure.is_number(expected_version, "expected_version")
        Ensure.is_function(on_success, "on_success")
        Ensure.is_function(on_failed, "on_failed")

        stream_id = quote(stream_id)
        if type(events) is not list:
            events = [events]
        body = to_json(AppendToStreamRequestBody(expected_version, events))
        url = "{0}/streams/{1}".format(self._base_url, stream_id)
        self._tornado_http_sender.send_async(
            url, "POST", self._headers,
            body, lambda x: self._append_to_stream_callback(
                x, on_success, on_failed))
Пример #5
0
    def _start_read_all_events_backward(self, prepare_position,
                                        commit_position, count, on_success,
                                        on_failed):
        Ensure.is_number(prepare_position, "prepare_position")
        Ensure.is_number(commit_position, "commit_position")
        Ensure.is_greater_equal_number_then(1, count, "count")
        Ensure.is_function(on_success, "on_success")
        Ensure.is_function(on_failed, "on_failed")

        events = []
        batch_counter = 0
        params = ReadEventsData
        params.prepare_position = prepare_position
        params.commit_position = commit_position
        params.count = count
        params.batch_counter = batch_counter
        params.events = events
        self._read_batch_all_events_backward(params, on_success, on_failed)
Пример #6
0
    def _start_delete_stream(
        self,
        stream_id,
        expected_version,
        on_success,
        on_failed,
    ):
        Ensure.is_not_empty_string(stream_id, "stream_id")
        Ensure.is_number(expected_version, "expected_version")
        Ensure.is_function(on_success, "on_success")
        Ensure.is_function(on_failed, "on_failed")

        stream_id = quote(stream_id)
        url = "{0}/streams/{1}".format(self._base_url, stream_id)
        body = to_json(DeleteStreamRequestBody(expected_version))
        self._tornado_http_sender.send_async(
            url, "DELETE", self._headers, body,
            lambda x: self._delete_stream_callback(x, on_success, on_failed))