Page Speed Optimization Libraries  1.9.32.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
apache_config.h
Go to the documentation of this file.
1 // Copyright 2010 Google Inc.
16 
17 #ifndef NET_INSTAWEB_APACHE_APACHE_CONFIG_H_
18 #define NET_INSTAWEB_APACHE_APACHE_CONFIG_H_
19 
22 #include "pagespeed/kernel/base/basictypes.h"
23 #include "pagespeed/kernel/base/string_util.h"
24 
25 namespace net_instaweb {
26 
27 class ThreadSystem;
28 
32  public:
33  static void Initialize();
34  static void Terminate();
35 
36  ApacheConfig(const StringPiece& description, ThreadSystem* thread_system);
37  explicit ApacheConfig(ThreadSystem* thread_system);
38  virtual ~ApacheConfig();
39 
40  bool fetch_from_mod_spdy() const {
41  return fetch_from_mod_spdy_.value();
42  }
43 
45  virtual ApacheConfig* Clone() const;
46 
48  virtual ApacheConfig* NewOptions() const;
49 
52  static const ApacheConfig* DynamicCast(const RewriteOptions* instance);
53  static ApacheConfig* DynamicCast(RewriteOptions* instance);
54 
55  private:
58  static Properties* apache_properties_;
59 
61  template<class OptionClass>
62  static void AddApacheProperty(typename OptionClass::ValueType default_value,
63  OptionClass ApacheConfig::*offset,
64  const char* id,
65  StringPiece option_name,
66  const char* help,
67  bool safe_to_print) {
68  AddProperty(default_value, offset, id, option_name,
69  RewriteOptions::kServerScope, help, safe_to_print,
70  apache_properties_);
71  }
72 
73  static void AddProperties();
74  void Init();
75 
76  Option<bool> fetch_from_mod_spdy_;
77 
78  DISALLOW_COPY_AND_ASSIGN(ApacheConfig);
79 };
80 
81 }
82 
83 #endif
static void AddProperty(typename OptionClass::ValueType default_value, OptionClass RewriteOptionsSubclass::*offset, const char *id, StringPiece option_name, OptionScope scope, const char *help_text, bool safe_to_print, Properties *properties)
Adds a new Property to 'properties' (the last argument).
Definition: rewrite_options.h:2872
virtual ApacheConfig * Clone() const
Make an identical copy of these options and return it.
Definition: apache_config.h:31
virtual ApacheConfig * NewOptions() const
Make a new empty set of options.
StringPiece description() const
Definition: system_rewrite_options.h:264
Definition: system_rewrite_options.h:31
static const ApacheConfig * DynamicCast(const RewriteOptions *instance)
customized at server level (e.g. VirtualHost)
Definition: rewrite_options.h:488
Definition: rewrite_options.h:83