CppCMS
http_content_type.h
1 //
3 // Copyright (C) 2008-2012 Artyom Beilis (Tonkikh) <artyomtnk@yahoo.com>
4 //
5 // See accompanying file COPYING.TXT file for licensing details.
6 //
8 #ifndef CPPCMS_HTTP_CONTENT_TYPE_H
9 #define CPPCMS_HTTP_CONTENT_TYPE_H
10 
11 #include <cppcms/defs.h>
12 #include <booster/shared_ptr.h>
13 #include <string>
14 #include <map>
15 
16 namespace cppcms { namespace http {
17 
18 
23 class CPPCMS_API content_type {
24 public:
28  std::string type() const;
32  std::string subtype() const;
36  std::string media_type() const;
41  std::string charset() const;
45  std::map<std::string,std::string> parameters() const;
49  std::string parameter_by_key(std::string const &key) const;
53  bool parameter_is_set(std::string const &key) const;
54 
58  content_type(std::string const &ct);
62  content_type(char const *ct);
66  content_type(char const *begin,char const *end);
70  content_type();
74  content_type(content_type const &);
78  content_type const &operator=(content_type const &);
82  ~content_type();
83 private:
84  struct data;
85  void parse(char const *b,char const *e);
87 };
88 
89 
90 } } //::cppcms::http
91 
92 
93 #endif
Class that represents parsed Content-Type header, this is immutable class. Once it is created its val...
Definition: http_content_type.h:23