MySQL 8.3.0
Source Code Documentation
event_cataloger.h
Go to the documentation of this file.
1/* Copyright (c) 2014, 2023, Oracle and/or its affiliates.
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#ifndef EVENT_CATALOGER_INCLUDE
24#define EVENT_CATALOGER_INCLUDE
25
27
29
31 public:
33 int handle_event(Pipeline_event *ev, Continuation *cont) override;
35 int initialize() override;
36 int terminate() override;
37 bool is_unique() override;
38 int get_role() override;
39 /**
40 This method handles binary log events by storing them so they can be used on
41 next handler.
42
43 @param[in] pevent the event to be injected
44 @param[in] cont the object used to wait
45
46 @return the operation status
47 @retval 0 OK
48 @retval !=0 Error
49 */
51
52 /**
53 This method handles applier context events by storing them so they can be
54 used on next handler.
55
56 @param[in] pevent the event to be injected
57 @param[in] cont the object used to wait
58
59 @return the operation status
60 @retval 0 OK
61 @retval !=0 Error
62 */
64};
65
66#endif /* EVENT_CATALOGER_INCLUDE */
Class used to wait on the execution of some action.
Definition: pipeline_interfaces.h:535
Definition: event_cataloger.h:30
int terminate() override
Terminate the execution as defined in the handler implementation.
Definition: event_cataloger.cc:29
int handle_action(Pipeline_action *action) override
Handling of an action as defined in the handler implementation.
Definition: event_cataloger.cc:79
int handle_binary_log_event(Pipeline_event *pevent, Continuation *cont)
This method handles binary log events by storing them so they can be used on next handler.
Definition: event_cataloger.cc:48
bool is_unique() override
This method identifies the handler as being unique.
Definition: event_cataloger.cc:83
int get_role() override
This method returns the handler role.
Definition: event_cataloger.cc:85
int initialize() override
Initialization as defined in the handler implementation.
Definition: event_cataloger.cc:27
int handle_applier_event(Pipeline_event *pevent, Continuation *cont)
This method handles applier context events by storing them so they can be used on next handler.
Definition: event_cataloger.cc:74
int handle_event(Pipeline_event *ev, Continuation *cont) override
Handling of an event as defined in the handler implementation.
Definition: event_cataloger.cc:31
Interface for the application of events, them being packets or log events.
Definition: pipeline_interfaces.h:660
A wrapper for pipeline actions.
Definition: pipeline_interfaces.h:630
A wrapper for log events/packets.
Definition: pipeline_interfaces.h:166
repeated Action action
Definition: replication_group_member_actions.proto:42