template <>
class WireSyncClientImpl
Defined at line 244 of file fidling/gen/sdk/fidl/fuchsia.lowpan.bootstrap/fuchsia.lowpan.bootstrap/cpp/fidl/fuchsia.lowpan.bootstrap/cpp/wire_messaging.h
Methods to make a sync FIDL call directly on an unowned handle or a
const reference to a |::fidl::ClientEnd
<
::fuchsia_lowpan_bootstrap::Thread>|,
avoiding setting up a client.
Public Methods
::fidl::WireResult< ::fuchsia_lowpan_bootstrap::Thread::ImportSettings> ImportSettings (::fuchsia_mem::wire::Buffer && thread_settings_json)
Import a json data file containing the Thread configuration as created by
[ThreadConfigManager]
(https://fuchsia.googlesource.com/fuchsia/+/refs/heads/master/src/connectivity/openthread/third_party/openthread/platform/thread_config_manager.cc).
The json format is:
{
"key1" : [ base64_encoded_string1_1, base64_encoded_string1_2, ... ],
"key2" : [ base64_encoded_string2_1, base64_encoded_string2_2, ... ],
...
}
where key1, key2 etc are decimal representation of uint16_t values.
base64_encoded_strings are created from a vector of uint16_t values.
This json format is equivalent to thread settings file in POSIX which
is binary file having the information encoded as:
2 bytes of key1, 2 bytes of value_len1, 'value_len1' bytes of 'value1',
2 bytes of key2, 2 bytes of value_len2, 'value_len2' bytes of 'value2',
2 bytes of key1, 2 bytes of value_len3, 'value_len3' bytes of 'value3',
2 bytes of key2, 2 bytes of value_len4, 'value_len4' bytes of 'value4'.
The POSIX binary file is simply a sequence of bytes and allows for
duplicate keys. This is converted to json format above with values
transformed as:
base64_encoded_string1_1 = base64_encode(value1[0:value_len1])
base64_encoded_string1_2 = base64_encode(value2[0:value_len2])
base64_encoded_string2_1 = base64_encode(value3[0:value_len3])
base64_encoded_string2_2 = base64_encode(value4[0:value_len4])
Keys are simply decimal representation of uint16_t keys in double quotes.
Settings are guaranteed to have been persisted upon successful
completion of this call. The channel will be closed if importing
settings fail.
Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.