query/demo/work/jobs/IdListPayload.hpp

27 lines
740 B
C++

#ifndef ID_LIST_PAYLOAD_HPP
#define ID_LIST_PAYLOAD_HPP
#include "Payload.hpp"
#include "matador/object/collection.hpp"
#include "matador/query/meta_table_macro.hpp"
#include "matador/utils/foreign_attributes.hpp"
namespace work::models::jobs {
struct IdListPayload : Payload {
matador::object::collection<uint64_t> payload_ids;
template<typename Operator>
void process( Operator& op ) {
namespace field = matador::access;
field::process( op, *matador::base_class<Payload>( this ) );
field::has_many( op, "payload_ids", payload_ids, "payload_id", matador::utils::CascadeNoneFetchLazy );
}
};
}
META_TABLE(id_list_payloads, ID_LIST_PAYLOAD, id, version, type, job)
#endif //ID_LIST_PAYLOAD_HPP