15 lines
545 B
Elixir
15 lines
545 B
Elixir
defmodule Towerops.Snmp.SnmpBehaviour do
|
|
@moduledoc """
|
|
Behaviour for SNMP operations.
|
|
Allows mocking SnmpKit in tests using Mox.
|
|
"""
|
|
|
|
@type target :: String.t()
|
|
@type oid :: String.t() | [non_neg_integer()]
|
|
@type snmp_opts :: keyword()
|
|
@type snmp_value :: term()
|
|
|
|
@callback get(target(), oid(), snmp_opts()) :: {:ok, snmp_value()} | {:error, term()}
|
|
@callback walk(target(), oid(), snmp_opts()) :: {:ok, [map()]} | {:error, term()}
|
|
@callback get_bulk(target(), oid(), snmp_opts()) :: {:ok, [map()]} | {:error, term()}
|
|
end
|