]> git.proxmox.com Git - ceph.git/blame - ceph/src/rgw/rgw_cors_s3.h
bump version to 18.2.2-pve1
[ceph.git] / ceph / src / rgw / rgw_cors_s3.h
CommitLineData
7c673cae 1// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
9f95a23c 2// vim: ts=8 sw=2 smarttab ft=cpp
11fdf7f2 3
7c673cae
FG
4/*
5 * Ceph - scalable distributed file system
6 *
7 * Copyright (C) 2013 eNovance SAS <licensing@enovance.com>
8 *
9 * This is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Lesser General Public
11 * License version 2.1, as published by the Free Software
12 * Foundation. See file COPYING.
13 *
14 */
15
1e59de90 16#pragma once
7c673cae
FG
17
18#include <map>
19#include <string>
20#include <iosfwd>
7c673cae
FG
21
22#include <include/types.h>
23#include <common/Formatter.h>
b3b6e05e 24#include <common/dout.h>
7c673cae
FG
25#include "rgw_xml.h"
26#include "rgw_cors.h"
27
7c673cae
FG
28class RGWCORSRule_S3 : public RGWCORSRule, public XMLObj
29{
b3b6e05e 30 const DoutPrefixProvider *dpp;
7c673cae 31 public:
b3b6e05e 32 RGWCORSRule_S3(const DoutPrefixProvider *dpp) : dpp(dpp) {}
7c673cae
FG
33 ~RGWCORSRule_S3() override {}
34
35 bool xml_end(const char *el) override;
36 void to_xml(XMLFormatter& f);
37};
38
39class RGWCORSConfiguration_S3 : public RGWCORSConfiguration, public XMLObj
40{
b3b6e05e 41 const DoutPrefixProvider *dpp;
7c673cae 42 public:
b3b6e05e 43 RGWCORSConfiguration_S3(const DoutPrefixProvider *dpp) : dpp(dpp) {}
7c673cae
FG
44 ~RGWCORSConfiguration_S3() override {}
45
46 bool xml_end(const char *el) override;
20effc67 47 void to_xml(std::ostream& out);
7c673cae
FG
48};
49
50class RGWCORSXMLParser_S3 : public RGWXMLParser
51{
b3b6e05e 52 const DoutPrefixProvider *dpp;
7c673cae
FG
53 CephContext *cct;
54
55 XMLObj *alloc_obj(const char *el) override;
56public:
b3b6e05e 57 explicit RGWCORSXMLParser_S3(const DoutPrefixProvider *_dpp, CephContext *_cct) : dpp(_dpp), cct(_cct) {}
7c673cae 58};