| 
| static bool  | start (int *err_no) | 
|   | 
| static bool  | stop () | 
|   | 
| static bool  | init (bool opt_noacl) | 
|   | Initializes the scheduler's structures.  More...
  | 
|   | 
| static void  | deinit () | 
|   | 
| static void  | init_mutexes () | 
|   | 
| static bool  | create_event (THD *thd, Event_parse_data *parse_data, bool if_exists) | 
|   | Create a new event.  More...
  | 
|   | 
| static bool  | update_event (THD *thd, Event_parse_data *parse_data, const LEX_CSTRING *new_dbname, const LEX_CSTRING *new_name) | 
|   | Alter an event.  More...
  | 
|   | 
| static bool  | drop_event (THD *thd, LEX_CSTRING dbname, LEX_CSTRING name, bool if_exists) | 
|   | Drops an event.  More...
  | 
|   | 
| static bool  | lock_schema_events (THD *thd, const dd::Schema &schema) | 
|   | Take exclusive metadata lock on all events in a schema.  More...
  | 
|   | 
| static bool  | drop_schema_events (THD *thd, const dd::Schema &schema) | 
|   | Drops all events from a schema.  More...
  | 
|   | 
| static bool  | show_create_event (THD *thd, LEX_CSTRING dbname, LEX_CSTRING name) | 
|   | Implement SHOW CREATE EVENT statement.  More...
  | 
|   | 
| static int  | reconstruct_interval_expression (String *buf, interval_type interval, longlong expression) | 
|   | 
| static void  | dump_internal_status () | 
|   | 
A facade to the functionality of the Event Scheduler. 
Every public operation against the scheduler has to be executed via the interface provided by a static method of this class. No instance of this class is ever created and it has no non-static data members.
The life cycle of the Events module is the following:
At server start up: init_mutexes() -> init() When the server is running: create_event(), drop_event(), start_or_stop_event_scheduler(), etc At shutdown: deinit(), destroy_mutexes().
The peculiar initialization and shutdown cycle is an adaptation to the outside server startup/shutdown framework and mimics the rest of MySQL subsystems (ACL, time zone tables, etc).