Page Speed Optimization Libraries
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Enumerations | Functions | Variables
experiment_util.h File Reference
#include "pagespeed/kernel/base/basictypes.h"
#include "pagespeed/kernel/base/string.h"
#include "pagespeed/kernel/base/string_util.h"

Go to the source code of this file.


 Unit-test framework for wget fetcher.


enum  ExperimentState { net_instaweb::experiment::kForceNoExperiment = -2, net_instaweb::experiment::kExperimentNotSet = -1, net_instaweb::experiment::kNoExperiment = 0 }


bool net_instaweb::experiment::GetExperimentCookieState (const RequestHeaders &headers, int *value)
void net_instaweb::experiment::RemoveExperimentCookie (RequestHeaders *headers)
void net_instaweb::experiment::SetExperimentCookie (ResponseHeaders *headers, int state, const StringPiece &url, int64 expiration_time_ms)
int net_instaweb::experiment::DetermineExperimentState (const RewriteOptions *options, const RequestHeaders &headers, const UserAgentMatcher &matcher)
 Determines which side of the experiment this request should end up on.
bool net_instaweb::experiment::AnyActiveExperiments (const RewriteOptions *options)
 Are there any experiments defined with percent > 0?
GoogleString net_instaweb::experiment::ExperimentStateToCookieString (int state)
int net_instaweb::experiment::CookieStringToState (const StringPiece &cookie_str)
 Converts a Experiment Cookie string, e.g. "2", into a ExperimentState.


const char net_instaweb::experiment::kExperimentCookie [] = "PageSpeedExperiment"
 Name of the cookie we set when running experiments.
const char net_instaweb::experiment::kExperimentCookiePrefix [] = "PageSpeedExperiment="

Detailed Description

Functionality and constants for handling experiments and measurement.

The experiment framework uses cookies and Google Analytics to track page speed statistics and correlate them with different sets of rewriters.