Add send_meter_mod_{add,modify,delete} helpers
This commit is contained in:
parent
7295fa00c9
commit
2c4d247a2f
3 changed files with 46 additions and 0 deletions
BIN
bin/enum_gen
BIN
bin/enum_gen
Binary file not shown.
|
|
@ -14,6 +14,15 @@ defmodule Openflow.MeterMod do
|
|||
|
||||
def ofp_type, do: 29
|
||||
|
||||
def new(options \\ []) do
|
||||
%MeterMod{
|
||||
command: options[:command] || :add,
|
||||
flags: options[:flags] || [],
|
||||
meter_id: options[:meter_id] || 0,
|
||||
bands: options[:bands] || []
|
||||
}
|
||||
end
|
||||
|
||||
def read(<<command_int::16, flags_int::16, meter_id_int::32, bands_bin::bytes>>) do
|
||||
command = Openflow.Enums.to_atom(command_int, :meter_mod_command)
|
||||
flags = Openflow.Enums.int_to_flags(flags_int, :meter_flags)
|
||||
|
|
|
|||
|
|
@ -115,6 +115,43 @@ defmodule Tres.MessageHelper do
|
|||
|
||||
send_message(role_request, datapath_id, Keyword.get(options, :blocking, false))
|
||||
end
|
||||
|
||||
defp send_meter_mod_add(datapath_id, options \\ []) do
|
||||
meter_mod =
|
||||
Openflow.MeterMod.new(
|
||||
xid: options[:xid] || 0,
|
||||
command: :add,
|
||||
flags: options[:flags] || [],
|
||||
meter_id: options[:meter_id] || 0,
|
||||
bands: options[:bands] || []
|
||||
)
|
||||
|
||||
send_message(meter_mod, datapath_id, options[:blocking] || false)
|
||||
end
|
||||
|
||||
defp send_meter_mod_modify(datapath_id, options \\ []) do
|
||||
meter_mod =
|
||||
Openflow.MeterMod.new(
|
||||
xid: options[:xid] || 0,
|
||||
command: :modify,
|
||||
flags: options[:flags] || [],
|
||||
meter_id: options[:meter_id] || 0,
|
||||
bands: options[:bands] || []
|
||||
)
|
||||
|
||||
send_message(meter_mod, datapath_id, options[:blocking] || false)
|
||||
end
|
||||
|
||||
defp send_meter_mod_delete(datapath_id, options \\ []) do
|
||||
meter_mod =
|
||||
Openflow.MeterMod.new(
|
||||
xid: options[:xid] || 0,
|
||||
command: :delete,
|
||||
meter_id: options[:meter_id] || 0,
|
||||
)
|
||||
|
||||
send_message(meter_mod, datapath_id, options[:blocking] || false)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue