Module h2_stream

Behaviours: gen_fsm.

This module defines the h2_stream behaviour.
Required callback functions: init/2, on_receive_request_headers/2, on_send_push_promise/2, on_receive_request_data/2, on_request_end_stream/1.

Data Types

callback_state()

callback_state() = any()

state()

state() = #stream_state{stream_id = stream_id(), connection = undefined | pid(), socket = sock:socket(), state = stream_state_name(), incoming_frames = queue:queue(h2_frame:frame()), request_headers = hpack:headers(), request_body = iodata() | undefined, request_body_size = non_neg_integer(), request_end_stream = boolean(), request_end_headers = boolean(), response_headers = hpack:headers(), response_body = iodata() | undefined, response_end_headers = boolean(), response_end_stream = boolean(), next_state = undefined | stream_state_name(), promised_stream = undefined | state(), callback_state = any(), callback_mod = module()}

stream_state_name()

stream_state_name() = idle | open | closed | reserved_local | reserved_remote | half_closed_local | half_closed_remote

Function Index

closed/2
code_change/4
connection/0
half_closed_local/2
half_closed_remote/2
handle_event/3
handle_info/3
handle_sync_event/4
idle/2
init/1
open/2
reserved_local/2
reserved_remote/2
rst_stream/2
send_connection_window_update/1
send_data/2
send_pp/2
send_window_update/1
start_link/4
stop/1
stream_id/0
terminate/3

Function Details

closed/2

closed(X1, Stream_state) -> any()

code_change/4

code_change(OldVsn, StateName, State, Extra) -> any()

connection/0

connection() -> pid()

half_closed_local/2

half_closed_local(X1, Stream_state) -> any()

half_closed_remote/2

half_closed_remote(Msg, Stream_state) -> any()

handle_event/3

handle_event(E, StateName, Stream_state) -> any()

handle_info/3

handle_info(M, StateName, State) -> any()

handle_sync_event/4

handle_sync_event(E, F, StateName, State) -> any()

idle/2

idle(Message, Stream_state) -> any()

init/1

init(X1) -> any()

open/2

open(Msg, Stream_state) -> any()

reserved_local/2

reserved_local(X1, Stream_state) -> any()

reserved_remote/2

reserved_remote(X1, Stream_state) -> any()

rst_stream/2

rst_stream(Pid, Code) -> any()

send_connection_window_update/1

send_connection_window_update(Size::non_neg_integer()) -> ok

send_data/2

send_data(Pid::pid(), Frame::h2_frame_data:frame()) -> ok | flow_control

send_pp/2

send_pp(Pid::pid(), Headers::hpack:headers()) -> ok

send_window_update/1

send_window_update(Size::non_neg_integer()) -> ok

start_link/4

start_link(StreamId::stream_id(), Connection::pid(), CallbackModule::module(), Socket::sock:socket()) -> {ok, pid()} | ignore | {error, term()}

stop/1

stop(Pid::pid()) -> ok

stream_id/0

stream_id() -> stream_id()

terminate/3

terminate(Reason, StateName, State) -> any()


Generated by EDoc, Jan 15 2017, 13:36:46.