]> git.proxmox.com Git - ceph.git/blob - ceph/src/rgw/rgw_cors_s3.h
2dff567c9e92b3a0f5603fd66a7f98aa359b5f9d
[ceph.git] / ceph / src / rgw / rgw_cors_s3.h
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 /*
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
16 #ifndef CEPH_RGW_CORS_S3_H
17 #define CEPH_RGW_CORS_S3_H
18
19 #include <map>
20 #include <string>
21 #include <iosfwd>
22
23 #include <include/types.h>
24 #include <common/Formatter.h>
25 #include "rgw_xml.h"
26 #include "rgw_cors.h"
27
28 class RGWCORSRule_S3 : public RGWCORSRule, public XMLObj
29 {
30 public:
31 RGWCORSRule_S3() {}
32 ~RGWCORSRule_S3() override {}
33
34 bool xml_end(const char *el) override;
35 void to_xml(XMLFormatter& f);
36 };
37
38 class RGWCORSConfiguration_S3 : public RGWCORSConfiguration, public XMLObj
39 {
40 public:
41 RGWCORSConfiguration_S3() {}
42 ~RGWCORSConfiguration_S3() override {}
43
44 bool xml_end(const char *el) override;
45 void to_xml(ostream& out);
46 };
47
48 class RGWCORSXMLParser_S3 : public RGWXMLParser
49 {
50 CephContext *cct;
51
52 XMLObj *alloc_obj(const char *el) override;
53 public:
54 explicit RGWCORSXMLParser_S3(CephContext *_cct) : cct(_cct) {}
55 };
56 #endif /*CEPH_RGW_CORS_S3_H*/