Page Speed Optimization Libraries  1.6.29.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions
net_instaweb::ApacheServerContext Class Reference

#include "apache_server_context.h"

Inheritance diagram for net_instaweb::ApacheServerContext:
net_instaweb::SystemServerContext net_instaweb::ServerContext

List of all members.

Public Member Functions

 ApacheServerContext (ApacheRewriteDriverFactory *factory, server_rec *server, const StringPiece &version)
GoogleString hostname_identifier ()
ApacheRewriteDriverFactoryapache_factory ()
ApacheConfigconfig ()
bool InitPath (const GoogleString &path)
ApacheConfigSpdyConfigOverlay ()
ApacheConfigNonSpdyConfigOverlay ()
bool has_spdy_config_overlay () const
bool has_non_spdy_config_overlay () const
void set_spdy_config_overlay (ApacheConfig *x)
 These two take ownership of their parameters.
void set_non_spdy_config_overlay (ApacheConfig *x)
ApacheConfigSpdyConfig ()
RewriteDriverPoolspdy_driver_pool ()
void CollapseConfigOverlaysAndComputeSignatures ()
void CreateLocalStatistics (Statistics *global_statistics)
void ChildInit ()
 Should be called after the child process is forked.
bool initialized () const
bool PoolDestroyed ()
void AddHtmlRewriteTimeUs (int64 rewrite_time_us)
const server_rec * server () const
virtual RewriteDriverPoolSelectDriverPool (bool using_spdy)
 Chooses a driver pool based on the request protocol.
virtual void ApplySessionFetchers (const RequestContextPtr &req, RewriteDriver *driver)
ProxyFetchFactoryproxy_fetch_factory ()
void InitProxyFetchFactory ()
virtual bool ProxiesHtml () const

Static Public Member Functions

static void InitStats (Statistics *statistics)

Detailed Description

Creates an Apache-specific ServerContext. This differs from base class that it incorporates by adding per-VirtualHost configuration, including:


Member Function Documentation

Accumulate in a histogram the amount of time spent rewriting HTML.

Todo:
TODO(sligocki): Remove in favor of RewriteStats::rewrite_latency_histogram.
virtual void net_instaweb::ApacheServerContext::ApplySessionFetchers ( const RequestContextPtr &  req,
RewriteDriver driver 
) [virtual]

Provides a hook for ServerContext implementations to determine the fetcher implementation based on the request.

Reimplemented from net_instaweb::ServerContext.

This should be called after all configuration parsing is done to collapse configuration inside the config overlays into actual ApacheConfig objects. It will also compute signatures when done.

void net_instaweb::ApacheServerContext::CreateLocalStatistics ( Statistics *  global_statistics)

Initialize this ServerContext to have its own statistics domain. Must be called after global_statistics has been created and had ::Initialize called on it.

These return true if the given overlays were constructed (in response to having something in config files to put in them).

Called on notification from Apache on child exit. Returns true if this is the last ServerContext that exists.

virtual bool net_instaweb::ApacheServerContext::ProxiesHtml ( ) const [inline, virtual]

We do not proxy external HTML from mod_pagespeed in Apache using the ProxyFetch flow. Currently we must rely on a separate module to let mod_pagespeed behave as an origin fetcher.

Implements net_instaweb::ServerContext.

Pool to pass to NewRewriteDriverFromPool to get a RewriteDriver configured with SPDY-specific options. May be NULL in case there is no spdy-specific configuration.

Returns special configuration that should be used for SPDY sessions instead of config(). Returns NULL if config() should be used instead.

These return configuration objects that hold settings from <ModPagespeedIf spdy>=""> and <ModPagespeedIf !spdy> sections of configuration. They initialize lazily, so are not thread-safe; however they are only meant to be used during configuration parsing. These methods should be called only if there is actually a need to put something in them, since otherwise we may end up constructing separate SPDY vs. non-SPDY configurations needlessly.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines