| Index: components/webmessaging/public/interfaces/broadcast_channel.mojom
|
| diff --git a/components/webmessaging/public/interfaces/broadcast_channel.mojom b/components/webmessaging/public/interfaces/broadcast_channel.mojom
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..fedc6df534f42ee0232845257ce0cf27c5225402
|
| --- /dev/null
|
| +++ b/components/webmessaging/public/interfaces/broadcast_channel.mojom
|
| @@ -0,0 +1,34 @@
|
| +// Copyright 2016 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +module webmessaging.mojom;
|
| +
|
| +import "url/mojo/origin.mojom";
|
| +
|
| +// A pair of BroadcastChannelClient interfaces is used to represent a connection
|
| +// to a particular channel. One client is implemented in the browser, for
|
| +// messages sent from the renderer to the browser, and one client is implemented
|
| +// in the renderer for messages from the browser to the renderer.
|
| +interface BroadcastChannelClient {
|
| + // Messages are passed as SerializedScriptValue.
|
| + OnMessage(string message);
|
| +};
|
| +
|
| +// This interface is used to set up connections to broadcast channels. All
|
| +// connections to channels made from the same event loop should be made
|
| +// through the same BroadcastChannelProvider connection to ensure correct
|
| +// ordering of messages.
|
| +// Typically the browser will have one instance of a BroadcastChannelProvider
|
| +// per storage partition, to which all connections from renderers in that
|
| +// partition are bound. This instance will then forward messages received on a
|
| +// particular connection to all other connections in the same storage partition
|
| +// with the same origin and name.
|
| +interface BroadcastChannelProvider {
|
| + // Connect to the channel identified by the |origin| and |name|. Messages can
|
| + // be sent to the channel using |sender|, and messages to the channel will be
|
| + // received by |receiver|.
|
| + ConnectToChannel(url.mojom.Origin origin, string name,
|
| + associated BroadcastChannelClient receiver,
|
| + associated BroadcastChannelClient& sender);
|
| +};
|
|
|