MySQL 8.3.0
Source Code Documentation
Mysql::Tools::Dump::Item_processing_data Class Reference

Data structure for objects that are processed in any chain. More...

#include <item_processing_data.h>

Public Member Functions

 Item_processing_data (Chain_data *chain_data, I_dump_task *process_task_object, I_chain_element *chain_element, const std::function< void(Item_processing_data *)> *completion_callback, Item_processing_data *parent_item_data)
 
 ~Item_processing_data ()
 
Chain_dataget_chain () const
 Returns chain data in which this item is being processed. More...
 
Item_processing_dataget_parent_item_data () const
 
void start_processing ()
 
bool end_processing ()
 
I_dump_taskget_process_task_object () const
 
I_chain_elementget_processing_chain_element () const
 
bool have_completion_callback ()
 
bool had_chain_created () const
 
void set_had_chain_created ()
 
void set_chain (Chain_data *)
 
bool call_completion_callback_at_end ()
 

Private Attributes

Chain_datam_chain_data
 Chain in which current processing item is processed. More...
 
I_dump_taskm_process_task_object
 Instance of task object that is being processing. More...
 
I_chain_elementm_chain_element
 Instance of chain element that is processing specified element. More...
 
const std::function< void(Item_processing_data *)> * m_completion_callback
 Callback to call after element is fully processed to the output. More...
 
Item_processing_datam_parent_item_data
 Link to item process information of parent module execution, if exists. More...
 
std::atomic< uint32_t > m_active_executions
 Number of modules that have pending or are executing this task. More...
 
bool m_had_chain_created
 Indicates if this item led to creation of at least one new chain. More...
 

Detailed Description

Data structure for objects that are processed in any chain.

Constructor & Destructor Documentation

◆ Item_processing_data()

Item_processing_data::Item_processing_data ( Chain_data chain_data,
I_dump_task process_task_object,
I_chain_element chain_element,
const std::function< void(Item_processing_data *)> *  completion_callback,
Item_processing_data parent_item_data 
)

◆ ~Item_processing_data()

Item_processing_data::~Item_processing_data ( )

Member Function Documentation

◆ call_completion_callback_at_end()

bool Item_processing_data::call_completion_callback_at_end ( )

◆ end_processing()

bool Item_processing_data::end_processing ( )

◆ get_chain()

Chain_data * Item_processing_data::get_chain ( ) const

Returns chain data in which this item is being processed.

◆ get_parent_item_data()

Item_processing_data * Item_processing_data::get_parent_item_data ( ) const

◆ get_process_task_object()

I_dump_task * Item_processing_data::get_process_task_object ( ) const

◆ get_processing_chain_element()

I_chain_element * Item_processing_data::get_processing_chain_element ( ) const

◆ had_chain_created()

bool Item_processing_data::had_chain_created ( ) const

◆ have_completion_callback()

bool Item_processing_data::have_completion_callback ( )

◆ set_chain()

void Item_processing_data::set_chain ( Chain_data chain_data)

◆ set_had_chain_created()

void Item_processing_data::set_had_chain_created ( )

◆ start_processing()

void Item_processing_data::start_processing ( )

Member Data Documentation

◆ m_active_executions

std::atomic<uint32_t> Mysql::Tools::Dump::Item_processing_data::m_active_executions
private

Number of modules that have pending or are executing this task.

◆ m_chain_data

Chain_data* Mysql::Tools::Dump::Item_processing_data::m_chain_data
private

Chain in which current processing item is processed.

◆ m_chain_element

I_chain_element* Mysql::Tools::Dump::Item_processing_data::m_chain_element
private

Instance of chain element that is processing specified element.

◆ m_completion_callback

const std::function<void(Item_processing_data *)>* Mysql::Tools::Dump::Item_processing_data::m_completion_callback
private

Callback to call after element is fully processed to the output.

Can be NULL.

◆ m_had_chain_created

bool Mysql::Tools::Dump::Item_processing_data::m_had_chain_created
private

Indicates if this item led to creation of at least one new chain.

◆ m_parent_item_data

Item_processing_data* Mysql::Tools::Dump::Item_processing_data::m_parent_item_data
private

Link to item process information of parent module execution, if exists.

◆ m_process_task_object

I_dump_task* Mysql::Tools::Dump::Item_processing_data::m_process_task_object
private

Instance of task object that is being processing.


The documentation for this class was generated from the following files: