7 #ifndef NDN_MANAGEMENT_NFD_CONTROL_COMMAND_HPP
8 #define NDN_MANAGEMENT_NFD_CONTROL_COMMAND_HPP
11 #include "../util/command-interest-generator.hpp"
29 : std::invalid_argument(what)
53 commandInterestGenerator.
generate(commandInterest);
54 return commandInterest;
91 : m_prefix(
"ndn:/localhost/nfd")
110 m_required[field] =
true;
119 m_optional[field] =
true;
133 bool isPresent = presentFields[i];
139 else if (isPresent && !m_optional[i]) {
146 std::vector<bool> m_required;
147 std::vector<bool> m_optional;
524 #endif // NDN_MANAGEMENT_NFD_CONTROL_COMMAND_HPP
represents a faces/disable-local-control command
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
ControlParameters & setFaceId(uint64_t faceId)
represents a strategy-choice/set command
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
void validate(const ControlParameters ¶meters) const
verify that all required fields are present, and all present fields are either required or optional ...
virtual void applyDefaultsToRequest(ControlParameters ¶meters) const
apply default values to missing fields in request
represents a fib/add-nexthop command
void generate(Interest &interest, const Name &certificateName=Name())
represents parameters in a ControlCommand request or response
Helper class to generate CommandInterests.
virtual void applyDefaultsToRequest(ControlParameters ¶meters) const
apply default values to missing fields in request
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
FieldValidator m_requestValidator
FieldValidator for request ControlParameters.
base class of NFD ControlCommand
ControlParameters & setFlags(uint64_t flags)
bool hasExpirationPeriod() const
StrategyChoiceUnsetCommand()
const Name & getPrefix() const
FieldValidator m_responseValidator
FieldValidator for response ControlParameters.
An Interest holds a Name and other fields for an interest.
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
represents a strategy-choice/set command
represents a fib/remove-nexthop command
Interest makeCommandInterest(const ControlParameters ¶meters, CommandInterestGenerator &commandInterestGenerator) const
make a Command Interest from parameters
ControlCommand(const std::string &module, const std::string &verb)
StrategyChoiceSetCommand()
represents a faces/create command
virtual void validateRequest(const ControlParameters ¶meters) const
validate request parameters
ControlParameters & setExpirationPeriod(const time::milliseconds &expirationPeriod)
const std::vector< bool > & getPresentFields() const
represents a faces/enable-local-control command
virtual void applyDefaultsToResponse(ControlParameters ¶meters) const
apply default values to missing fields in response
FaceLocalControlCommand(const std::string &verb)
FaceDisableLocalControlCommand()
FaceEnableLocalControlCommand()
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
virtual void applyDefaultsToRequest(ControlParameters ¶meters) const
apply default values to missing fields in request
const Name & getName() const
FieldValidator & required(ControlParameterField field)
declare a required field
size_t size() const
Get the number of components.
A Name holds an array of Name::Component and represents an NDN name.
size_t wireEncode(EncodingImpl< T > &encoder) const
const std::string CONTROL_PARAMETER_FIELD[CONTROL_PARAMETER_UBOUND]
represents a rib/unregister command
represents a rib/register command
LocalControlFeature getLocalControlFeature() const
virtual void validateRequest(const ControlParameters ¶meters) const
validate request parameters
virtual void validateRequest(const ControlParameters ¶meters) const
validate request parameters
uint64_t getFaceId() const
ControlParameters & setCost(uint64_t cost)
virtual void applyDefaultsToRequest(ControlParameters ¶meters) const
apply default values to missing fields in request
Name & append(const uint8_t *value, size_t valueLength)
Append a new component, copying from value of length valueLength.
ControlParameters & setOrigin(uint64_t origin)
FibRemoveNextHopCommand()
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
represents a faces/destroy command
represents an error in ControlParameters
virtual void validateResponse(const ControlParameters ¶meters) const
validate response parameters
ArgumentError(const std::string &what)
virtual void validateRequest(const ControlParameters ¶meters) const
validate request parameters
FieldValidator & optional(ControlParameterField field)
declare an optional field