Index: third_party/mojo/src/mojo/edk/system/endpoint_relayer.h |
diff --git a/third_party/mojo/src/mojo/edk/system/endpoint_relayer.h b/third_party/mojo/src/mojo/edk/system/endpoint_relayer.h |
deleted file mode 100644 |
index acff70043d957c41346ee09d3446103082b98036..0000000000000000000000000000000000000000 |
--- a/third_party/mojo/src/mojo/edk/system/endpoint_relayer.h |
+++ /dev/null |
@@ -1,95 +0,0 @@ |
-// Copyright 2014 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. |
- |
-#ifndef THIRD_PARTY_MOJO_SRC_MOJO_EDK_SYSTEM_ENDPOINT_RELAYER_H_ |
-#define THIRD_PARTY_MOJO_SRC_MOJO_EDK_SYSTEM_ENDPOINT_RELAYER_H_ |
- |
-#include "base/memory/ref_counted.h" |
-#include "base/memory/scoped_ptr.h" |
-#include "mojo/public/cpp/system/macros.h" |
-#include "third_party/mojo/src/mojo/edk/system/channel_endpoint_client.h" |
-#include "third_party/mojo/src/mojo/edk/system/mutex.h" |
-#include "third_party/mojo/src/mojo/edk/system/system_impl_export.h" |
- |
-namespace mojo { |
-namespace system { |
- |
-class ChannelEndpoint; |
- |
-// This is a simple |ChannelEndpointClient| that just relays messages between |
-// two |ChannelEndpoint|s (without the overhead of |MessagePipe|). |
-class MOJO_SYSTEM_IMPL_EXPORT EndpointRelayer final |
- : public ChannelEndpointClient { |
- public: |
- // A class that can inspect and optionally handle messages of type |
- // |Type::ENDPOINT_CLIENT| received from either |ChannelEndpoint|. |
- // |
- // Instances of implementations of this class will be owned by |
- // |EndpointRelayer|s. |
- // |
- // Destructors may not call methods of the |EndpointRelayer| (nor of the |
- // |ChannelEndpoint|s). |
- class MOJO_SYSTEM_IMPL_EXPORT Filter { |
- public: |
- virtual ~Filter() {} |
- |
- // Called by |EndpointRelayer::OnReadMessage()| for messages of type |
- // |Type::ENDPOINT_CLIENT|. This is only called by the |EndpointRelayer| if |
- // it is still the client of the sending endpoint. |
- // |
- // |endpoint| (which will not be null) is the |ChannelEndpoint| |
- // corresponding to |port| (i.e., the endpoint the message was received |
- // from), whereas |peer_endpoint| (which may be null) is that corresponding |
- // to the peer port (i.e., the endpoint to which the message would be |
- // relayed). |
- // |
- // This should return true if the message is consumed (in which case |
- // ownership is transferred), and false if not (in which case the message |
- // will be relayed as usual). |
- // |
- // This will always be called under |EndpointRelayer|'s lock. This may call |
- // |ChannelEndpoint| methods. However, it may not call any of |
- // |EndpointRelayer|'s methods. |
- virtual bool OnReadMessage(ChannelEndpoint* endpoint, |
- ChannelEndpoint* peer_endpoint, |
- MessageInTransit* message) = 0; |
- |
- protected: |
- Filter() {} |
- |
- private: |
- MOJO_DISALLOW_COPY_AND_ASSIGN(Filter); |
- }; |
- |
- EndpointRelayer(); |
- |
- // Gets the other port number (i.e., 0 -> 1, 1 -> 0). |
- static unsigned GetPeerPort(unsigned port); |
- |
- // Initialize this object. This must be called before any other method. |
- void Init(ChannelEndpoint* endpoint0, |
- ChannelEndpoint* endpoint1) MOJO_NOT_THREAD_SAFE; |
- |
- // Sets (or resets) the filter, which can (optionally) handle/filter |
- // |Type::ENDPOINT_CLIENT| messages (see |Filter| above). |
- void SetFilter(scoped_ptr<Filter> filter); |
- |
- // |ChannelEndpointClient| methods: |
- bool OnReadMessage(unsigned port, MessageInTransit* message) override; |
- void OnDetachFromChannel(unsigned port) override; |
- |
- private: |
- ~EndpointRelayer() override; |
- |
- Mutex mutex_; |
- scoped_refptr<ChannelEndpoint> endpoints_[2] MOJO_GUARDED_BY(mutex_); |
- scoped_ptr<Filter> filter_ MOJO_GUARDED_BY(mutex_); |
- |
- MOJO_DISALLOW_COPY_AND_ASSIGN(EndpointRelayer); |
-}; |
- |
-} // namespace system |
-} // namespace mojo |
- |
-#endif // THIRD_PARTY_MOJO_SRC_MOJO_EDK_SYSTEM_ENDPOINT_RELAYER_H_ |