26#ifndef ROUTER_SRC_REST_MRS_SRC_MRS_DATABASE_REST_QUERY_H_ 
   27#define ROUTER_SRC_REST_MRS_SRC_MRS_DATABASE_REST_QUERY_H_ 
   60                          bool encode_bigints_as_strings = 
false,
 
   61                          bool include_links = 
true,
 
   62                          uint64_t max_execution_time_ms = 0);
 
   63  explicit QueryRestTable(
bool encode_bigints_as_strings, 
bool include_links,
 
   64                          uint64_t max_execution_time_ms = 0);
 
   68      MySQLSession *session, std::shared_ptr<database::entry::Object> 
object,
 
   70      const uint64_t limit, 
const std::string &url, 
const bool is_default_limit,
 
  107      const std::vector<RowGroupOwnership> &row_groups,
 
  108      const std::set<UniversalId> &user_groups);
 
  111                   const uint64_t limit, 
const std::string &url,
 
Definition: filter_object_generator.h:44
 
Definition: json_template.h:85
 
Definition: object_row_ownership.h:45
 
Definition: query_rest_table.h:47
 
void build_query(const ObjectFieldFilter &field_filter, const uint64_t offset, const uint64_t limit, const std::string &url, const ObjectRowOwnership &row_ownership, const FilterObjectGenerator &fog)
Definition: query_rest_table.cc:388
 
uint64_t max_execution_time_ms_
Definition: query_rest_table.h:96
 
mysqlrouter::sqlstring where_
Definition: query_rest_table.h:91
 
QueryRestTable(const JsonTemplateFactory *factory=nullptr, bool encode_bigints_as_strings=false, bool include_links=true, uint64_t max_execution_time_ms=0)
Definition: query_rest_table.cc:52
 
entry::Object Object
Definition: query_rest_table.h:49
 
virtual void query_entries(MySQLSession *session, std::shared_ptr< database::entry::Object > object, const ObjectFieldFilter &field_filter, const uint64_t offset, const uint64_t limit, const std::string &url, const bool is_default_limit, const ObjectRowOwnership &row_ownership={}, const FilterObjectGenerator &fog={}, const bool compute_etag=false)
Definition: query_rest_table.cc:67
 
std::vector< RowGroupOwnership > VectorOfRowGroupOwnershp
Definition: query_rest_table.h:57
 
bool include_links_
Definition: query_rest_table.h:95
 
bool encode_bigints_as_strings_
Definition: query_rest_table.h:94
 
entry::AuthUser::UserId UserId
Definition: query_rest_table.h:51
 
std::shared_ptr< Object > object_
Definition: query_rest_table.h:88
 
std::shared_ptr< database::JsonTemplate > serializer_
Definition: query_rest_table.h:87
 
entry::ObjectField ObjectField
Definition: query_rest_table.h:50
 
const JsonTemplateFactory * factory_
Definition: query_rest_table.h:93
 
uint64_t items
Definition: query_rest_table.h:75
 
std::vector< helper::Column > columns_
Definition: query_rest_table.h:86
 
bool metadata_received_
Definition: query_rest_table.h:92
 
bool compute_etag_
Definition: query_rest_table.h:90
 
void on_row(const ResultRow &r) override
Definition: query_rest_table.cc:105
 
entry::UniversalId UniversalId
Definition: query_rest_table.h:52
 
std::string response
Definition: query_rest_table.h:74
 
const mysqlrouter::sqlstring & build_where(const ObjectRowOwnership &row_ownership)
Definition: query_rest_table.cc:117
 
void extend_where(mysqlrouter::sqlstring &where, const FilterObjectGenerator &fog)
Definition: query_rest_table.cc:369
 
entry::RowUserOwnership RowUserOwnership
Definition: query_rest_table.h:54
 
void on_metadata(unsigned number, MYSQL_FIELD *fields) override
Definition: query_rest_table.cc:92
 
entry::RowGroupOwnership RowGroupOwnership
Definition: query_rest_table.h:53
 
void create_serializer()
Definition: query_rest_table.cc:436
 
const ObjectFieldFilter * field_filter_
Definition: query_rest_table.h:89
 
Config config_
Definition: query_rest_table.h:85
 
Definition: mysql_session.h:311
 
Definition: mysql_session.h:157
 
Definition: utils_sqlstring.h:67
 
static char * where
Definition: mysqldump.cc:153
 
mrs::database::entry::RowUserOwnership RowUserOwnership
Definition: handler_db_object_table.cc:77
 
MysqlCacheManager::Object Object
Definition: mysql_cache_manager.cc:101
 
database::entry::ObjectField ObjectField
Definition: sp_function_query.cc:51
 
Definition: authorize_manager.h:48
 
mrs::database::entry::UniversalId UniversalId
Definition: universal_id.h:33
 
const mysql_service_registry_t * r
Definition: pfs_example_plugin_employee.cc:86
 
Definition: query_rest_table.h:78
 
uint64_t limit
Definition: query_rest_table.h:80
 
bool is_default_limit
Definition: query_rest_table.h:81
 
uint64_t offset
Definition: query_rest_table.h:79
 
std::string url_route
Definition: query_rest_table.h:82
 
UniversalId UserId
Definition: auth_user.h:47