OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MOJO_PUBLIC_CPP_BINDINGS_LIB_MESSAGE_HEADER_VALIDATOR_H_ | 5 #ifndef MOJO_PUBLIC_CPP_BINDINGS_LIB_MESSAGE_HEADER_VALIDATOR_H_ |
6 #define MOJO_PUBLIC_CPP_BINDINGS_LIB_MESSAGE_HEADER_VALIDATOR_H_ | 6 #define MOJO_PUBLIC_CPP_BINDINGS_LIB_MESSAGE_HEADER_VALIDATOR_H_ |
7 | 7 |
8 #include "mojo/public/cpp/bindings/message.h" | 8 #include "mojo/public/cpp/bindings/message.h" |
9 #include "mojo/public/cpp/bindings/message_filter.h" | 9 #include "mojo/public/cpp/bindings/message_filter.h" |
10 | 10 |
11 namespace mojo { | 11 namespace mojo { |
12 namespace internal { | 12 namespace internal { |
13 | 13 |
14 class MessageHeaderValidator : public MessageFilter { | 14 class MessageHeaderValidator : public MessageFilter { |
15 public: | 15 public: |
16 explicit MessageHeaderValidator(MessageReceiver* sink = nullptr); | 16 explicit MessageHeaderValidator(MessageReceiver* sink = nullptr); |
| 17 MessageHeaderValidator(const std::string& description, |
| 18 MessageReceiver* sink = nullptr); |
| 19 |
| 20 // Sets the description associated with this validator. Used for reporting |
| 21 // more detailed validation errors. |
| 22 void SetDescription(const std::string& description); |
17 | 23 |
18 bool Accept(Message* message) override; | 24 bool Accept(Message* message) override; |
| 25 |
| 26 private: |
| 27 std::string description_; |
19 }; | 28 }; |
20 | 29 |
21 } // namespace internal | 30 } // namespace internal |
22 } // namespace mojo | 31 } // namespace mojo |
23 | 32 |
24 #endif // MOJO_PUBLIC_CPP_BINDINGS_LIB_MESSAGE_HEADER_VALIDATOR_H_ | 33 #endif // MOJO_PUBLIC_CPP_BINDINGS_LIB_MESSAGE_HEADER_VALIDATOR_H_ |
OLD | NEW |