Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / mojo / public / interfaces / bindings / tests / sample_factory.mojom
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 [JavaPackage="org.chromium.mojo.bindings.test"]
6 module sample {
7
8 // This sample shows how handles to MessagePipes can be sent as both parameters
9 // to methods as well as fields on structs.
10
11 struct Request {
12   int32 x;
13   handle<message_pipe> pipe;
14   handle<message_pipe>[] more_pipes;
15 };
16
17 struct Response {
18   int32 x;
19   handle<message_pipe> pipe;
20 };
21
22 [Client=FactoryClient]
23 interface Factory {
24   DoStuff(Request request, handle<message_pipe> pipe);
25   DoStuff2(handle<data_pipe_consumer> pipe);
26 };
27
28 interface FactoryClient {
29   DidStuff(Response response, string text);
30   DidStuff2(string text);
31 };
32
33 }  // module sample