def get_events_backend(request, user_profile, handler, user_client=REQ(converter=get_client, default=None), last_event_id=REQ(converter=int, default=None), queue_id=REQ(default=None), apply_markdown=REQ(default=False, validator=check_bool), all_public_streams=REQ(default=False, validator=check_bool), event_types=REQ(default=None, validator=check_list(check_string)), dont_block=REQ(default=False, validator=check_bool), narrow=REQ(default=[], validator=check_list(None)), lifespan_secs=REQ(default=0, converter=int)): if user_client is None: user_client = request.client (result, log_data) = fetch_events(user_profile.id, user_profile.realm_id, user_profile.email, queue_id, last_event_id, event_types, user_client.name, apply_markdown, all_public_streams, lifespan_secs, narrow, dont_block, handler.handler_id) request._log_data['extra'] = log_data if result == RespondAsynchronously: handler._request = request return result return json_success(result)
def get_events_backend( request, user_profile, handler, user_client=REQ(converter=get_client, default=None), last_event_id=REQ(converter=int, default=None), queue_id=REQ(default=None), apply_markdown=REQ(default=False, validator=check_bool), all_public_streams=REQ(default=False, validator=check_bool), event_types=REQ(default=None, validator=check_list(check_string)), dont_block=REQ(default=False, validator=check_bool), narrow=REQ(default=[], validator=check_list(None)), lifespan_secs=REQ(default=0, converter=int), ): # type: (HttpRequest, UserProfile, BaseHandler, Optional[Client], Optional[int], Optional[List[text_type]], bool, bool, Optional[text_type], bool, Iterable[Sequence[text_type]], int) -> Union[HttpResponse, _RespondAsynchronously] if user_client is None: user_client = request.client events_query = dict( user_profile_id=user_profile.id, user_profile_email=user_profile.email, queue_id=queue_id, last_event_id=last_event_id, event_types=event_types, client_type_name=user_client.name, all_public_streams=all_public_streams, lifespan_secs=lifespan_secs, narrow=narrow, dont_block=dont_block, handler_id=handler.handler_id, ) if queue_id is None: events_query["new_queue_data"] = dict( user_profile_id=user_profile.id, realm_id=user_profile.realm.id, user_profile_email=user_profile.email, event_types=event_types, client_type_name=user_client.name, apply_markdown=apply_markdown, all_public_streams=all_public_streams, queue_timeout=lifespan_secs, last_connection_time=time.time(), narrow=narrow, ) result = fetch_events(events_query) if "extra_log_data" in result: request._log_data["extra"] = result["extra_log_data"] if result["type"] == "async": handler._request = request return RespondAsynchronously if result["type"] == "error": return json_error(result["message"]) return json_success(result["response"])
def get_events_backend(request, user_profile, handler, user_client=REQ(converter=get_client, default=None), last_event_id=REQ(converter=int, default=None), queue_id=REQ(default=None), apply_markdown=REQ(default=False, validator=check_bool), all_public_streams=REQ(default=False, validator=check_bool), event_types=REQ(default=None, validator=check_list(check_string)), dont_block=REQ(default=False, validator=check_bool), narrow=REQ(default=[], validator=check_list(None)), lifespan_secs=REQ(default=0, converter=int)): # type: (HttpRequest, UserProfile, Any, Optional[Client], Optional[int], Optional[List[text_type]], bool, bool, Optional[text_type], bool, Iterable[Sequence[text_type]], int) -> Union[HttpResponse, _RespondAsynchronously] if user_client is None: user_client = request.client events_query = dict(user_profile_id=user_profile.id, user_profile_email=user_profile.email, queue_id=queue_id, last_event_id=last_event_id, event_types=event_types, client_type_name=user_client.name, all_public_streams=all_public_streams, lifespan_secs=lifespan_secs, narrow=narrow, dont_block=dont_block, handler_id=handler.handler_id) if queue_id is None: events_query['new_queue_data'] = dict( user_profile_id=user_profile.id, realm_id=user_profile.realm.id, user_profile_email=user_profile.email, event_types=event_types, client_type_name=user_client.name, apply_markdown=apply_markdown, all_public_streams=all_public_streams, queue_timeout=lifespan_secs, last_connection_time=time.time(), narrow=narrow) result = fetch_events(events_query) if "extra_log_data" in result: request._log_data['extra'] = result["extra_log_data"] if result["type"] == "async": handler._request = request return RespondAsynchronously if result["type"] == "error": return json_error(result["message"]) return json_success(result["response"])
def get_events_backend(request, user_profile, handler, user_client = REQ(converter=get_client, default=None), last_event_id = REQ(converter=int, default=None), queue_id = REQ(default=None), apply_markdown = REQ(default=False, validator=check_bool), all_public_streams = REQ(default=False, validator=check_bool), event_types = REQ(default=None, validator=check_list(check_string)), dont_block = REQ(default=False, validator=check_bool), narrow = REQ(default=[], validator=check_list(None)), lifespan_secs = REQ(default=0, converter=int)): if user_client is None: user_client = request.client (result, log_data) = fetch_events( user_profile.id, user_profile.realm_id, user_profile.email, queue_id, last_event_id, event_types, user_client.name, apply_markdown, all_public_streams, lifespan_secs, narrow, dont_block, handler.handler_id) request._log_data['extra'] = log_data if result == RespondAsynchronously: handler._request = request return result return json_success(result)