Class: Baykit::BayServer::Docker::Http::H2::Command::CmdWindowUpdate

Inherits:
H2Command
  • Object
show all
Includes:
Baykit::BayServer::Docker::Http::H2
Defined in:
lib/baykit/bayserver/docker/http/h2/command/cmd_window_update.rb

Instance Attribute Summary collapse

Attributes inherited from H2Command

#flags, #stream_id

Instance Method Summary collapse

Constructor Details

#initialize(stream_id, flags = nil) ⇒ CmdWindowUpdate

Returns a new instance of CmdWindowUpdate.



23
24
25
# File 'lib/baykit/bayserver/docker/http/h2/command/cmd_window_update.rb', line 23

def initialize(stream_id, flags=nil)
  super(H2Type::WINDOW_UPDATE, stream_id, flags)
end

Instance Attribute Details

#window_size_incrementObject

Returns the value of attribute window_size_increment.



21
22
23
# File 'lib/baykit/bayserver/docker/http/h2/command/cmd_window_update.rb', line 21

def window_size_increment
  @window_size_increment
end

Instance Method Details

#handle(cmd_handler) ⇒ Object



41
42
43
# File 'lib/baykit/bayserver/docker/http/h2/command/cmd_window_update.rb', line 41

def handle(cmd_handler)
  return cmd_handler.handle_window_update(self)
end

#pack(pkt) ⇒ Object



34
35
36
37
38
39
# File 'lib/baykit/bayserver/docker/http/h2/command/cmd_window_update.rb', line 34

def pack(pkt)
   acc = pkt.new_data_accessor()
   acc.put_int(H2Packet.consolidate_flag_and_int32(0, @window_size_increment))
   BayLog.trace("h2: Pack windowUpdate size=#{@window_size_increment}")
   super
end

#unpack(pkt) ⇒ Object



27
28
29
30
31
32
# File 'lib/baykit/bayserver/docker/http/h2/command/cmd_window_update.rb', line 27

def unpack(pkt)
  super
  acc = pkt.new_data_accessor()
  val = acc.get_int()
  @window_size_increment = H2Packet.extract_int31(val)
end