Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(242)

Unified Diff: ipc/ipc_channel_reader.h

Issue 2473993003: Delete IPC::ChannelPosix, IPC::ChannelWin and IPC::AttachmentBroker. (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ipc/ipc_channel_posix_unittest.cc ('k') | ipc/ipc_channel_reader.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ipc/ipc_channel_reader.h
diff --git a/ipc/ipc_channel_reader.h b/ipc/ipc_channel_reader.h
index 2ee50af5362710d6ab443adb09c46b659de4d8a7..d69c616be6b4ea540718946e104096a1aa1389de 100644
--- a/ipc/ipc_channel_reader.h
+++ b/ipc/ipc_channel_reader.h
@@ -12,7 +12,6 @@
#include "base/gtest_prod_util.h"
#include "base/macros.h"
#include "base/memory/scoped_vector.h"
-#include "ipc/attachment_broker.h"
#include "ipc/brokerable_attachment.h"
#include "ipc/ipc_channel.h"
#include "ipc/ipc_export.h"
@@ -32,8 +31,7 @@ namespace internal {
// functionality that would benefit from being factored out. If we add
// something like that in the future, it would be more appropriate to add it
// here (and rename appropriately) rather than writing a different class.
-class IPC_EXPORT ChannelReader : public SupportsAttachmentBrokering,
- public AttachmentBroker::Observer {
+class IPC_EXPORT ChannelReader {
public:
explicit ChannelReader(Listener* listener);
virtual ~ChannelReader();
@@ -115,17 +113,11 @@ class IPC_EXPORT ChannelReader : public SupportsAttachmentBrokering,
virtual void HandleInternalMessage(const Message& msg) = 0;
// Exposed for testing purposes only.
- ScopedVector<Message>* get_queued_messages() { return &queued_messages_; }
-
- // Exposed for testing purposes only.
virtual void DispatchMessage(Message* m);
// Get the process ID for the sender of the message.
virtual base::ProcessId GetSenderPID() = 0;
- // Whether the channel is an endpoint of attachment brokering.
- virtual bool IsAttachmentBrokerEndpoint() = 0;
-
private:
FRIEND_TEST_ALL_PREFIXES(ChannelReaderTest, AttachmentAlreadyBrokered);
FRIEND_TEST_ALL_PREFIXES(ChannelReaderTest, AttachmentNotYetBrokered);
@@ -133,9 +125,6 @@ class IPC_EXPORT ChannelReader : public SupportsAttachmentBrokering,
FRIEND_TEST_ALL_PREFIXES(ChannelReaderTest, InvalidMessageSize);
FRIEND_TEST_ALL_PREFIXES(ChannelReaderTest, TrimBuffer);
- using AttachmentIdSet = std::set<BrokerableAttachment::AttachmentId>;
- using AttachmentIdVector = std::vector<BrokerableAttachment::AttachmentId>;
-
// Takes the data received from the IPC channel and translates it into
// Messages. Complete messages are passed to HandleTranslatedMessage().
// Returns |false| on unrecoverable error.
@@ -145,43 +134,17 @@ class IPC_EXPORT ChannelReader : public SupportsAttachmentBrokering,
// immediately dispatched. Other messages are passed to
// HandleExternalMessage().
// Returns |false| on unrecoverable error.
- bool HandleTranslatedMessage(Message* translated_message,
- const AttachmentIdVector& attachment_ids);
+ bool HandleTranslatedMessage(Message* translated_message);
// Populates the message with brokered and non-brokered attachments. If
// possible, the message is immediately dispatched. Otherwise, a deep copy of
// the message is added to |queued_messages_|. |blocked_ids_| are updated if
// necessary.
- bool HandleExternalMessage(Message* external_message,
- const AttachmentIdVector& attachment_ids);
+ bool HandleExternalMessage(Message* external_message);
// If there was a dispatch error, informs |listener_|.
void HandleDispatchError(const Message& message);
- // Attachment broker messages should be dispatched out of band, since there
- // are no ordering restrictions on them, and they may be required to dispatch
- // the messages waiting in |queued_messages_|.
- // Returns true if the attachment broker handled |message|.
- bool DispatchAttachmentBrokerMessage(const Message& message);
-
- // Dispatches messages from queued_messages_ to listeners. Successfully
- // dispatched messages are removed from queued_messages_.
- DispatchState DispatchMessages();
-
- // Attempts to fill in the brokerable attachments of |msg| with information
- // from the Attachment Broker.
- // Returns the set of ids that are still waiting to be brokered.
- AttachmentIdSet GetBrokeredAttachments(Message* msg);
-
- // AttachmentBroker::Observer overrides.
- void ReceivedBrokerableAttachmentWithId(
- const BrokerableAttachment::AttachmentId& id) override;
-
- // This class should observe the attachment broker if and only if blocked_ids_
- // is not empty.
- void StartObservingAttachmentBroker();
- void StopObservingAttachmentBroker();
-
// Checks that |size| is a valid message size. Has side effects if it's not.
bool CheckMessageSize(size_t size);
@@ -200,15 +163,6 @@ class IPC_EXPORT ChannelReader : public SupportsAttachmentBrokering,
// of std::string::reserve() implementation.
size_t max_input_buffer_size_;
- // These messages are waiting to be dispatched. If this vector is non-empty,
- // then the front Message must be blocked on receiving an attachment from the
- // AttachmentBroker.
- ScopedVector<Message> queued_messages_;
-
- // If the next message to be processed is blocked by the broker, then this
- // set contains the AttachmentIds that are needed to unblock the message.
- AttachmentIdSet blocked_ids_;
-
DISALLOW_COPY_AND_ASSIGN(ChannelReader);
};
« no previous file with comments | « ipc/ipc_channel_posix_unittest.cc ('k') | ipc/ipc_channel_reader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698