blob: 63835d4b2ee07d3a0e6a84b3ee3c12bcaa501fd7 [file] [log] [blame]
// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.weave;
using fuchsia.mem as mem;
using zx;
/// Protocol to allow components to provide initial configuration data derived from
/// an existing Weave implementation to ensure continuity of the Weave fabric and
/// other Weave settings or configuration data.
[Discoverable]
protocol Bootstrap {
/// Import a JSON-formatted Weave config providing data in the format
/// expected to satisfy the Weave DeviceLayer
/// [ConfigurationManager](https://github.com/openweave/openweave-core/blob/master/src/adaptations/device-layer/include/Weave/DeviceLayer/ConfigurationManager.h).
///
/// Configuration is guaranteed to have been persisted upon successful
/// completion of this call.
ImportWeaveConfig(mem.Buffer config_json) -> () error zx.status;
};