]> git.proxmox.com Git - ceph.git/blame - ceph/src/rgw/driver/rados/rgw_datalog_notify.h
bump version to 18.2.2-pve1
[ceph.git] / ceph / src / rgw / driver / rados / rgw_datalog_notify.h
CommitLineData
1e59de90
TL
1// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2// vim: ts=8 sw=2 smarttab ft=cpp
3
4#pragma once
5
6#include <boost/container/flat_map.hpp>
7#include <boost/container/flat_set.hpp>
8
9#include "rgw_datalog.h"
10
11namespace bc = boost::container;
12
13namespace ceph { class Formatter; }
14class JSONObj;
15
16class RGWCoroutine;
17class RGWHTTPManager;
18class RGWRESTConn;
19
20struct rgw_data_notify_entry;
21
22// json encoder and decoder for notify v1 API
23struct rgw_data_notify_v1_encoder {
24 const bc::flat_map<int, bc::flat_set<rgw_data_notify_entry>>& shards;
25};
26void encode_json(const char *name, const rgw_data_notify_v1_encoder& e,
27 ceph::Formatter *f);
28struct rgw_data_notify_v1_decoder {
29 bc::flat_map<int, bc::flat_set<rgw_data_notify_entry>>& shards;
30};
31void decode_json_obj(rgw_data_notify_v1_decoder& d, JSONObj *obj);