26#ifndef ROUTER_SRC_MYSQL_REST_SERVICE_INCLUDE_MRS_DATABASE_JSON_MAPPER_VIEW_SELECT_H_
27#define ROUTER_SRC_MYSQL_REST_SERVICE_INCLUDE_MRS_DATABASE_JSON_MAPPER_VIEW_SELECT_H_
64 bool omit_row_owner =
false);
68 bool omit_row_owner =
false);
76 std::vector<std::string> filter);
79 bool is_included(std::string_view prefix, std::string_view field)
const;
83 std::set<std::string, std::less<>>
filter_;
94 bool for_bigins_as_string =
false)
100 void process_view(std::shared_ptr<entry::JsonMapping> view);
107 if (
for_update_)
q.append_preformatted(
" FOR UPDATE NOWAIT");
117 if (
for_update_)
q.append_preformatted(
" FOR UPDATE NOWAIT");
136 std::shared_ptr<Table>
table,
137 const std::string &path_prefix);
Definition: object_row_ownership.h:45
const ObjectFieldFilter & filter_
Definition: select.h:126
mysqlrouter::sqlstring from_clause() const
Definition: select.cc:283
bool for_update_
Definition: select.h:132
mysqlrouter::sqlstring query() const
Definition: select.h:102
void process_table(std::shared_ptr< Table > parent_table, std::shared_ptr< Table > table, const std::string &path_prefix)
Definition: select.cc:162
std::string m_path_prefix
Definition: select.h:130
mysqlrouter::sqlstring make_subquery(const ForeignKeyReference &ref) const
Definition: select.cc:212
void add_reference_field(const ForeignKeyReference &fk)
Definition: select.cc:273
JsonQueryBuilder(const ObjectFieldFilter &filter, const ObjectRowOwnership &row_owner={}, bool for_update=false, bool for_bigins_as_string=false)
Definition: select.h:91
const mysqlrouter::sqlstring & select_items() const
Definition: select.h:122
mysqlrouter::sqlstring make_subselect_where(const ForeignKeyReference &ref) const
Definition: select.cc:207
mysqlrouter::sqlstring m_select_items
Definition: select.h:131
std::shared_ptr< Table > table_
Definition: select.h:129
mysqlrouter::sqlstring subquery_object(const ForeignKeyReference &fk) const
Definition: select.cc:179
mysqlrouter::sqlstring query_one(const PrimaryKeyColumnValues &pk) const
Definition: select.h:112
void add_column_field(const Column &column)
Definition: select.cc:264
void process_view(std::shared_ptr< entry::JsonMapping > view)
Definition: select.cc:154
bool bigins_as_string_
Definition: select.h:133
const ObjectRowOwnership & row_owner_
Definition: select.h:127
std::shared_ptr< Table > parent_table_
Definition: select.h:128
mysqlrouter::sqlstring subquery_object_array(const ForeignKeyReference &fk) const
Definition: select.cc:193
bool is_included(std::string_view prefix, std::string_view field) const
Definition: select.cc:365
static ObjectFieldFilter from_object(const Table &table)
Definition: select.cc:336
bool is_parent_included(std::string_view prefix) const
Definition: select.cc:345
bool m_exclusive
Definition: select.h:84
std::set< std::string, std::less<> > filter_
Definition: select.h:83
bool is_filter_configured() const
Definition: select.cc:386
static ObjectFieldFilter from_url_filter(const Table &table, std::vector< std::string > filter)
Definition: select.cc:321
Definition: utils_sqlstring.h:67
static PFS_engine_table_share_proxy table
Definition: pfs.cc:61
constexpr value_type for_update
Definition: classic_protocol_constants.h:214
PT & ref(PT *tp)
Definition: tablespace_impl.cc:359
entry::ForeignKeyReference ForeignKeyReference
Definition: select.h:54
entry::Column Column
Definition: select.h:53
entry::Field Field
Definition: select.h:52
mysqlrouter::sqlstring format_where_expr(const Table &table, const std::string &table_name, const PrimaryKeyColumnValues &f, bool omit_row_owner=false)
Definition: select.cc:117
mysqlrouter::sqlstring format_key_names(const Table &table)
Definition: select.cc:74
mysqlrouter::sqlstring format_join_where_expr(const Table &table, const ForeignKeyReference &fk)
Definition: select.cc:53
mysqlrouter::sqlstring format_key(const Table &table, const PrimaryKeyColumnValues &f)
Definition: select.cc:94
entry::Table Table
Definition: select.h:51
std::vector< mysqlrouter::sqlstring > ColumnValues
Definition: select.h:45
RowLockType
Definition: select.h:47
std::map< std::string, mysqlrouter::sqlstring > PrimaryKeyColumnValues
Definition: select.h:43
Definition: authorize_manager.h:48
const char * table_name
Definition: rules_table_service.cc:56
synode_no q[FIFO_SIZE]
Definition: xcom_base.cc:4101