• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2014 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 package org.chromium.mojo.bindings;
6 
7 import org.chromium.mojo.system.MessagePipeHandle;
8 
9 /**
10  * A {@link Router} will handle mojo message and forward those to a {@link Connector}. It deals with
11  * parsing of headers and adding of request ids in order to be able to match a response to a
12  * request.
13  */
14 public interface Router extends MessageReceiverWithResponder, HandleOwner<MessagePipeHandle> {
15 
16     /**
17      * Start listening for incoming messages.
18      */
start()19     public void start();
20 
21     /**
22      * Set the {@link MessageReceiverWithResponder} that will deserialize and use the message
23      * received from the pipe.
24      */
setIncomingMessageReceiver(MessageReceiverWithResponder incomingMessageReceiver)25     public void setIncomingMessageReceiver(MessageReceiverWithResponder incomingMessageReceiver);
26 
27     /**
28      * Set the handle that will be notified of errors on the message pipe.
29      */
setErrorHandler(ConnectionErrorHandler errorHandler)30     public void setErrorHandler(ConnectionErrorHandler errorHandler);
31 }
32