1 /* Copyright (c) 2010, 2019, Oracle and/or its affiliates. All rights reserved.
2 
3    This program is free software; you can redistribute it and/or modify
4    it under the terms of the GNU General Public License, version 2.0,
5    as published by the Free Software Foundation.
6 
7    This program is also distributed with certain software (including
8    but not limited to OpenSSL) that is licensed under separate terms,
9    as designated in a particular file or component or in included license
10    documentation.  The authors of MySQL hereby grant you an additional
11    permission to link the program and your derivative works with the
12    separately licensed software that they have included with MySQL.
13 
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17    GNU General Public License, version 2.0, for more details.
18 
19    You should have received a copy of the GNU General Public License
20    along with this program; if not, write to the Free Software
21    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
22 
23 #include "sql/rpl_info_dummy.h"
24 
25 #include <stddef.h>
26 
27 #include "my_compiler.h"
28 #include "my_dbug.h"
29 
30 class Server_ids;
31 
Rpl_info_dummy(const int nparam)32 Rpl_info_dummy::Rpl_info_dummy(const int nparam)
33     : Rpl_info_handler(nparam, nullptr) {}
34 
do_init_info(uint instance MY_ATTRIBUTE ((unused)))35 int Rpl_info_dummy::do_init_info(uint instance MY_ATTRIBUTE((unused))) {
36   return 0;
37 }
38 
do_init_info()39 int Rpl_info_dummy::do_init_info() { return 0; }
40 
do_prepare_info_for_read()41 int Rpl_info_dummy::do_prepare_info_for_read() {
42   DBUG_ASSERT(!abort);
43   cursor = 0;
44   return 0;
45 }
46 
do_prepare_info_for_write()47 int Rpl_info_dummy::do_prepare_info_for_write() {
48   DBUG_ASSERT(!abort);
49   cursor = 0;
50   return 0;
51 }
52 
do_check_info()53 enum_return_check Rpl_info_dummy::do_check_info() {
54   DBUG_ASSERT(!abort);
55   return REPOSITORY_DOES_NOT_EXIST;
56 }
57 
do_check_info(uint instance MY_ATTRIBUTE ((unused)))58 enum_return_check Rpl_info_dummy::do_check_info(
59     uint instance MY_ATTRIBUTE((unused))) {
60   DBUG_ASSERT(!abort);
61   return REPOSITORY_DOES_NOT_EXIST;
62 }
63 
do_flush_info(const bool force MY_ATTRIBUTE ((unused)))64 int Rpl_info_dummy::do_flush_info(const bool force MY_ATTRIBUTE((unused))) {
65   DBUG_ASSERT(!abort);
66   return 0;
67 }
68 
do_end_info()69 void Rpl_info_dummy::do_end_info() { return; }
70 
do_remove_info()71 int Rpl_info_dummy::do_remove_info() {
72   DBUG_ASSERT(!abort);
73   return 0;
74 }
75 
do_clean_info()76 int Rpl_info_dummy::do_clean_info() {
77   DBUG_ASSERT(!abort);
78   return 0;
79 }
80 
do_get_rpl_info_type()81 uint Rpl_info_dummy::do_get_rpl_info_type() { return INFO_REPOSITORY_DUMMY; }
82 
do_set_info(const int pos MY_ATTRIBUTE ((unused)),const char * value MY_ATTRIBUTE ((unused)))83 bool Rpl_info_dummy::do_set_info(const int pos MY_ATTRIBUTE((unused)),
84                                  const char *value MY_ATTRIBUTE((unused))) {
85   DBUG_ASSERT(!abort);
86 
87   return false;
88 }
89 
do_set_info(const int pos MY_ATTRIBUTE ((unused)),const uchar * value MY_ATTRIBUTE ((unused)),const size_t size MY_ATTRIBUTE ((unused)))90 bool Rpl_info_dummy::do_set_info(const int pos MY_ATTRIBUTE((unused)),
91                                  const uchar *value MY_ATTRIBUTE((unused)),
92                                  const size_t size MY_ATTRIBUTE((unused))) {
93   DBUG_ASSERT(!abort);
94 
95   return false;
96 }
97 
do_set_info(const int pos MY_ATTRIBUTE ((unused)),const ulong value MY_ATTRIBUTE ((unused)))98 bool Rpl_info_dummy::do_set_info(const int pos MY_ATTRIBUTE((unused)),
99                                  const ulong value MY_ATTRIBUTE((unused))) {
100   DBUG_ASSERT(!abort);
101 
102   return false;
103 }
104 
do_set_info(const int pos MY_ATTRIBUTE ((unused)),const int value MY_ATTRIBUTE ((unused)))105 bool Rpl_info_dummy::do_set_info(const int pos MY_ATTRIBUTE((unused)),
106                                  const int value MY_ATTRIBUTE((unused))) {
107   DBUG_ASSERT(!abort);
108 
109   return false;
110 }
111 
do_set_info(const int pos MY_ATTRIBUTE ((unused)),const float value MY_ATTRIBUTE ((unused)))112 bool Rpl_info_dummy::do_set_info(const int pos MY_ATTRIBUTE((unused)),
113                                  const float value MY_ATTRIBUTE((unused))) {
114   DBUG_ASSERT(!abort);
115 
116   return false;
117 }
118 
do_set_info(const int pos MY_ATTRIBUTE ((unused)),const Server_ids * value MY_ATTRIBUTE ((unused)))119 bool Rpl_info_dummy::do_set_info(const int pos MY_ATTRIBUTE((unused)),
120                                  const Server_ids *value
121                                      MY_ATTRIBUTE((unused))) {
122   DBUG_ASSERT(!abort);
123 
124   return false;
125 }
126 
do_set_info(const int,const std::nullptr_t)127 bool Rpl_info_dummy::do_set_info(const int, const std::nullptr_t) {
128   DBUG_ASSERT(!abort);
129 
130   return false;
131 }
132 
do_set_info(const int,const std::nullptr_t,const size_t)133 bool Rpl_info_dummy::do_set_info(const int, const std::nullptr_t,
134                                  const size_t) {
135   DBUG_ASSERT(!abort);
136 
137   return false;
138 }
139 
do_get_info(const int pos MY_ATTRIBUTE ((unused)),char * value MY_ATTRIBUTE ((unused)),const size_t size MY_ATTRIBUTE ((unused)),const char * default_value MY_ATTRIBUTE ((unused)))140 Rpl_info_handler::enum_field_get_status Rpl_info_dummy::do_get_info(
141     const int pos MY_ATTRIBUTE((unused)), char *value MY_ATTRIBUTE((unused)),
142     const size_t size MY_ATTRIBUTE((unused)),
143     const char *default_value MY_ATTRIBUTE((unused))) {
144   DBUG_ASSERT(!abort);
145 
146   return Rpl_info_handler::enum_field_get_status::FIELD_VALUE_NOT_NULL;
147 }
148 
do_get_info(const int pos MY_ATTRIBUTE ((unused)),uchar * value MY_ATTRIBUTE ((unused)),const size_t size MY_ATTRIBUTE ((unused)),const uchar * default_value MY_ATTRIBUTE ((unused)))149 Rpl_info_handler::enum_field_get_status Rpl_info_dummy::do_get_info(
150     const int pos MY_ATTRIBUTE((unused)), uchar *value MY_ATTRIBUTE((unused)),
151     const size_t size MY_ATTRIBUTE((unused)),
152     const uchar *default_value MY_ATTRIBUTE((unused))) {
153   DBUG_ASSERT(!abort);
154 
155   return Rpl_info_handler::enum_field_get_status::FIELD_VALUE_NOT_NULL;
156 }
157 
do_get_info(const int pos MY_ATTRIBUTE ((unused)),ulong * value MY_ATTRIBUTE ((unused)),const ulong default_value MY_ATTRIBUTE ((unused)))158 Rpl_info_handler::enum_field_get_status Rpl_info_dummy::do_get_info(
159     const int pos MY_ATTRIBUTE((unused)), ulong *value MY_ATTRIBUTE((unused)),
160     const ulong default_value MY_ATTRIBUTE((unused))) {
161   DBUG_ASSERT(!abort);
162 
163   return Rpl_info_handler::enum_field_get_status::FIELD_VALUE_NOT_NULL;
164 }
165 
do_get_info(const int pos MY_ATTRIBUTE ((unused)),int * value MY_ATTRIBUTE ((unused)),const int default_value MY_ATTRIBUTE ((unused)))166 Rpl_info_handler::enum_field_get_status Rpl_info_dummy::do_get_info(
167     const int pos MY_ATTRIBUTE((unused)), int *value MY_ATTRIBUTE((unused)),
168     const int default_value MY_ATTRIBUTE((unused))) {
169   DBUG_ASSERT(!abort);
170 
171   return Rpl_info_handler::enum_field_get_status::FIELD_VALUE_NOT_NULL;
172 }
173 
do_get_info(const int pos MY_ATTRIBUTE ((unused)),float * value MY_ATTRIBUTE ((unused)),const float default_value MY_ATTRIBUTE ((unused)))174 Rpl_info_handler::enum_field_get_status Rpl_info_dummy::do_get_info(
175     const int pos MY_ATTRIBUTE((unused)), float *value MY_ATTRIBUTE((unused)),
176     const float default_value MY_ATTRIBUTE((unused))) {
177   DBUG_ASSERT(!abort);
178 
179   return Rpl_info_handler::enum_field_get_status::FIELD_VALUE_NOT_NULL;
180 }
181 
do_get_info(const int pos MY_ATTRIBUTE ((unused)),Server_ids * value MY_ATTRIBUTE ((unused)),const Server_ids * default_value MY_ATTRIBUTE ((unused)))182 Rpl_info_handler::enum_field_get_status Rpl_info_dummy::do_get_info(
183     const int pos MY_ATTRIBUTE((unused)),
184     Server_ids *value MY_ATTRIBUTE((unused)),
185     const Server_ids *default_value MY_ATTRIBUTE((unused))) {
186   DBUG_ASSERT(!abort);
187 
188   return Rpl_info_handler::enum_field_get_status::FIELD_VALUE_NOT_NULL;
189 }
190 
do_get_description_info()191 char *Rpl_info_dummy::do_get_description_info() {
192   DBUG_ASSERT(!abort);
193 
194   return nullptr;
195 }
196 
do_is_transactional()197 bool Rpl_info_dummy::do_is_transactional() {
198   DBUG_ASSERT(!abort);
199 
200   return false;
201 }
202 
do_update_is_transactional()203 bool Rpl_info_dummy::do_update_is_transactional() {
204   DBUG_ASSERT(!abort);
205 
206   return false;
207 }
208