nl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningDelegate

This is an abstract class.

#include <src/lib/profiles/network-provisioning/NetworkProvisioning.h>

Delegate class for implementing Network Provisioning operations.

Summary

Inheritance

Inherits from: nl::Weave::WeaveServerDelegateBase
Direct Known Subclasses:
  nl::Weave::DeviceLayer::Internal::GenericNetworkProvisioningServerImpl< NetworkProvisioningServerImpl >
  nl::Weave::DeviceLayer::Internal::GenericNetworkProvisioningServerImpl< ImplClass >

Public attributes

Server
[READ ONLY] The server object to which this delegate is attached.

Public functions

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
Enforce message-level access control for an incoming Network Provisioning request message.
HandleAddNetwork(PacketBuffer *networkInfoTLV)=0
virtual WEAVE_ERROR
Add a particular network.
HandleDisableNetwork(uint32_t networkId)=0
virtual WEAVE_ERROR
Disable the specified network.
HandleEnableNetwork(uint32_t networkId)=0
virtual WEAVE_ERROR
Enable the specified network.
HandleGetNetworks(uint8_t flags)=0
virtual WEAVE_ERROR
Get the configured networks.
HandleGetWirelessRegulatoryConfig(void)
virtual WEAVE_ERROR
Get wireless regulatory configuration information.
HandleRemoveNetwork(uint32_t networkId)=0
virtual WEAVE_ERROR
Remove a configured network.
HandleScanNetworks(uint8_t networkType)=0
virtual WEAVE_ERROR
Perform a network scan.
HandleSetRendezvousMode(uint16_t rendezvousMode)=0
virtual WEAVE_ERROR
Set the rendezvous mode.
HandleSetWirelessRegulatoryConfig(PacketBuffer *regConfigTLV)
virtual WEAVE_ERROR
Set wireless regulatory configuration information.
HandleTestConnectivity(uint32_t networkId)=0
virtual WEAVE_ERROR
Test the connectivity of the specified network.
HandleUpdateNetwork(PacketBuffer *networkInfoTLV)=0
virtual WEAVE_ERROR
Update a network's configuration.
IsPairedToAccount() const
virtual bool
Called to determine if the device is currently paired to an account.

Public attributes

Server

NetworkProvisioningServer * Server

[READ ONLY] The server object to which this delegate is attached.

Public functions

EnforceAccessControl

virtual void EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  AccessControlResult & result
)

Enforce message-level access control for an incoming Network Provisioning request message.

Details
Parameters
[in] ec
The ExchangeContext over which the message was received.
[in] msgProfileId
The profile id of the received message.
[in] msgType
The message type of the received message.
[in] msgInfo
A WeaveMessageInfo structure containing information about the received message.
[in,out] result
An enumerated value describing the result of access control policy evaluation for the received message. Upon entry to the method, the value represents the tentative result at the current point in the evaluation process. Upon return, the result is expected to represent the final assessment of access control policy for the message.

HandleAddNetwork

virtual WEAVE_ERROR HandleAddNetwork(
  PacketBuffer *networkInfoTLV
)=0

Add a particular network.

Details
Parameters
[in] networkInfoTLV
The network configuration encoded in TLV.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from adding the network.
See also:
NetworkProvisioningDataElementTags for valid types.

HandleDisableNetwork

virtual WEAVE_ERROR HandleDisableNetwork(
  uint32_t networkId
)=0

Disable the specified network.

Details
Parameters
[in] networkId
The ID of the network to disable.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from disabling the network.

HandleEnableNetwork

virtual WEAVE_ERROR HandleEnableNetwork(
  uint32_t networkId
)=0

Enable the specified network.

Details
Parameters
[in] networkId
The ID of the network to enable.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from enabling the network.

HandleGetNetworks

virtual WEAVE_ERROR HandleGetNetworks(
  uint8_t flags
)=0

Get the configured networks.

Details
Parameters
[in] flags
Flags to filter the retrieved networks.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from getting the configured networks.

HandleGetWirelessRegulatoryConfig

virtual WEAVE_ERROR HandleGetWirelessRegulatoryConfig(
  void
)

Get wireless regulatory configuration information.

Details
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from fetching the requested information.

HandleRemoveNetwork

virtual WEAVE_ERROR HandleRemoveNetwork(
  uint32_t networkId
)=0

Remove a configured network.

Details
Parameters
[in] networkId
The ID of the network to remove.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from removing the network.

HandleScanNetworks

virtual WEAVE_ERROR HandleScanNetworks(
  uint8_t networkType
)=0

Perform a network scan.

Details
Parameters
[in] networkType
The technology (for example, WiFi or Thread) to scan.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from performing a network scan.
See also:
NetworkType for valid types.

HandleSetRendezvousMode

virtual WEAVE_ERROR HandleSetRendezvousMode(
  uint16_t rendezvousMode
)=0

Set the rendezvous mode.

Details
Parameters
[in] rendezvousMode
The rendezvous mode to use.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from setting the rendezvous mode.
See also:
RendezvousModeFlags for valid modes.

HandleSetWirelessRegulatoryConfig

virtual WEAVE_ERROR HandleSetWirelessRegulatoryConfig(
  PacketBuffer *regConfigTLV
)

Set wireless regulatory configuration information.

Details
Parameters
[in] regConfigTLV
A packet buffer containing the new wireless regulatory configuration information encoded in TLV format.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from setting the requested information.

HandleTestConnectivity

virtual WEAVE_ERROR HandleTestConnectivity(
  uint32_t networkId
)=0

Test the connectivity of the specified network.

Details
Parameters
[in] networkId
The ID of the network to test the connectivity of.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from testing connectivity.

HandleUpdateNetwork

virtual WEAVE_ERROR HandleUpdateNetwork(
  PacketBuffer *networkInfoTLV
)=0

Update a network's configuration.

Details
Parameters
[in] networkInfoTLV
The network configuration encoded in TLV.
Return Values
WEAVE_NO_ERROR
On success.
other
Other Weave or platform-specific error codes indicating that an error occurred preventing the device from updating the network.
See also:
NetworkProvisioningDataElementTags for valid types.

IsPairedToAccount

virtual bool IsPairedToAccount() const 

Called to determine if the device is currently paired to an account.