6#include "../helper/payload_helper.h"
47 mDiscardable{discardable}
56 virtual ~Option() noexcept = default;
60 virtual uint16_t
Length() const noexcept = 0;
72 virtual std::vector<uint8_t>
Payload() const = 0;
Communication message entry abstract option.
Definition: option.h:37
constexpr Option(OptionType type, bool discardable) noexcept
Constructor.
Definition: option.h:46
std::vector< uint8_t > BasePayload() const
Get base option payload.
Definition: option.cpp:19
virtual std::vector< uint8_t > Payload() const =0
Get option payload.
OptionType Type() const noexcept
Get option type.
Definition: option.cpp:9
virtual uint16_t Length() const noexcept=0
Get option length.
bool Discardable() const noexcept
Get discardable flag.
Definition: option.cpp:14
OptionType
Entry option type.
Definition: option.h:17
@ IPv6Endpoint
Generic IPv6 unicast endpoint.
@ IPv4Endpoint
Generic IPv4 unicast endpoint.
@ Configuration
DNS configuration.
@ IPv6Multicast
Genetic IPv6 multicast endpoint.
@ LoadBalancing
Service instnace load balancing.
@ IPv4Multicast
Generic IPv4 multicast endpoint.
@ IPv4SdEndpoint
Service discovery IPv4 endpoint.
@ IPv6SdEndpoint
Service discovery IPv6 endpoint.
Layer4ProtocolType
OSI layer-4 protocol type.
Definition: option.h:30
@ Tcp
Transmission control protocol.
@ Udp
User datagram protocol.