1 /*
2 * Copyright (c) 2016, 2021, Oracle and/or its affiliates.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License, version 2.0,
6 * as published by the Free Software Foundation.
7 *
8 * This program is also distributed with certain software (including
9 * but not limited to OpenSSL) that is licensed under separate terms,
10 * as designated in a particular file or component or in included license
11 * documentation.  The authors of MySQL hereby grant you an additional
12 * permission to link the program and your derivative works with the
13 * separately licensed software that they have included with MySQL.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU General Public License, version 2.0, for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
23 * 02110-1301  USA
24 */
25 
26 #ifndef _NGS_NOTICE_BUILDER_H_
27 #define _NGS_NOTICE_BUILDER_H_
28 
29 #include <string>
30 
31 #include "message_builder.h"
32 
33 namespace ngs
34 {
35   class Output_buffer;
36 
37   class Notice_builder: public Message_builder
38   {
39   public:
40     void encode_frame(
41       Output_buffer* out_buffer,
42       uint32 type,
43       const std::string &data,
44       int scope);
45 
46     void encode_rows_affected(
47       Output_buffer* out_buffer,
48       uint64 value);
49   };
50 }
51 
52 
53 #endif //  _NGS_NOTICE_BUILDER_H_
54