Page Speed Optimization Libraries  1.13.35.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | List of all members
net_instaweb::AdminSite Class Reference

Implements the /pagespeed_admin pages. More...

#include "admin_site.h"

Public Types

enum  AdminSource { kPageSpeedAdmin, kStatistics, kOther }
 

Public Member Functions

 AdminSite (StaticAssetManager *static_asset_manager, Timer *timer, MessageHandler *message_handler)
 
void ConsoleHandler (const SystemRewriteOptions &global_options, const RewriteOptions &options, AdminSource source, const QueryParams &query_params, AsyncFetch *fetch, Statistics *statistics)
 
void MessageHistoryHandler (const RewriteOptions &options, AdminSource source, AsyncFetch *fetch)
 Displays recent Info/Warning/Error messages.: public ServerContext.
 
void StatisticsGraphsHandler (Writer *writer, SystemRewriteOptions *global_system_rewrite_options)
 Deprecated handler for graphs in the PSOL console.
 
void AdminPage (bool is_global, const GoogleUrl &stripped_gurl, const QueryParams &query_params, const RewriteOptions *options, SystemCachePath *cache_path, AsyncFetch *fetch, SystemCaches *system_caches, CacheInterface *filesystem_metadata_cache, HTTPCache *http_cache, CacheInterface *metadata_cache, PropertyCache *page_property_cache, ServerContext *server_context, Statistics *statistics, Statistics *stats, SystemRewriteOptions *global_system_rewrite_options)
 
void StatisticsPage (bool is_global, const QueryParams &query_params, const RewriteOptions *options, AsyncFetch *fetch, SystemCaches *system_caches, CacheInterface *filesystem_metadata_cache, HTTPCache *http_cache, CacheInterface *metadata_cache, PropertyCache *page_property_cache, ServerContext *server_context, Statistics *statistics, Statistics *stats, SystemRewriteOptions *global_system_rewrite_options)
 
void ConsoleJsonHandler (const QueryParams &params, AsyncFetch *fetch, Statistics *statistics)
 Returns JSON used by the PageSpeed Console JavaScript.
 
void StatisticsHandler (const RewriteOptions &options, AdminSource source, AsyncFetch *fetch, Statistics *stats)
 
void StatisticsJsonHandler (AsyncFetch *fetch, Statistics *stats)
 
void GraphsHandler (const RewriteOptions &options, AdminSource source, const QueryParams &query_params, AsyncFetch *fetch, Statistics *stats)
 
void PrintConfig (AdminSource source, AsyncFetch *fetch, SystemRewriteOptions *global_system_rewrite_options)
 Print details for configuration.
 
void PrintCaches (bool is_global, AdminSource source, const GoogleUrl &stripped_gurl, const QueryParams &query_params, const RewriteOptions *options, SystemCachePath *cache_path, AsyncFetch *fetch, SystemCaches *system_caches, CacheInterface *filesystem_metadata_cache, HTTPCache *http_cache, CacheInterface *metadata_cache, PropertyCache *page_property_cache, ServerContext *server_context)
 
void PrintHistograms (AdminSource source, AsyncFetch *fetch, Statistics *stats)
 Print histograms showing the dynamics of server activity.
 
void PurgeHandler (StringPiece url, SystemCachePath *cache_path, AsyncFetch *fetch)
 
MessageHandlerMessageHandlerForTesting ()
 Return the message handler for debugging use.
 

Detailed Description

Implements the /pagespeed_admin pages.

Member Enumeration Documentation

Identifies whether the user arrived at an admin page from a /pagespeed_admin handler or a /**_pagespeed_statistics handler. The main difference between these is that the _admin site might in the future grant more privileges than the statistics site did, such as flushing cache. But it also affects the syntax of the links created to sub-pages in the top navigation bar.

Member Function Documentation

void net_instaweb::AdminSite::AdminPage ( bool  is_global,
const GoogleUrl stripped_gurl,
const QueryParams query_params,
const RewriteOptions options,
SystemCachePath cache_path,
AsyncFetch fetch,
SystemCaches system_caches,
CacheInterface filesystem_metadata_cache,
HTTPCache http_cache,
CacheInterface metadata_cache,
PropertyCache page_property_cache,
ServerContext server_context,
Statistics statistics,
Statistics stats,
SystemRewriteOptions global_system_rewrite_options 
)

Handle a request for /pagespeed_admin/**, which is a launching point for all the administrator pages including stats, message-histogram, console, etc.

void net_instaweb::AdminSite::ConsoleHandler ( const SystemRewriteOptions global_options,
const RewriteOptions options,
AdminSource  source,
const QueryParams query_params,
AsyncFetch fetch,
Statistics statistics 
)

Handler which serves PSOL console. Note: ConsoleHandler always succeeds.

void net_instaweb::AdminSite::GraphsHandler ( const RewriteOptions options,
AdminSource  source,
const QueryParams query_params,
AsyncFetch fetch,
Statistics stats 
)

Display various charts on graphs page.

Todo:
TODO(xqyin): Integrate this into console page.
void net_instaweb::AdminSite::PrintCaches ( bool  is_global,
AdminSource  source,
const GoogleUrl stripped_gurl,
const QueryParams query_params,
const RewriteOptions options,
SystemCachePath cache_path,
AsyncFetch fetch,
SystemCaches system_caches,
CacheInterface filesystem_metadata_cache,
HTTPCache http_cache,
CacheInterface metadata_cache,
PropertyCache page_property_cache,
ServerContext server_context 
)

Print statistics about the caches. In the future this will also be a launching point for examining cache entries and purging them.

void net_instaweb::AdminSite::StatisticsHandler ( const RewriteOptions options,
AdminSource  source,
AsyncFetch fetch,
Statistics stats 
)

Handler for /mod_pagespeed_statistics and /ngx_pagespeed_statistics, as well as /...pagespeed__global_statistics. If the latter, is_global_request should be true.

void net_instaweb::AdminSite::StatisticsJsonHandler ( AsyncFetch fetch,
Statistics stats 
)

Responds to 'fetch' with data used on statistics page and graphs page in JSON format.

void net_instaweb::AdminSite::StatisticsPage ( bool  is_global,
const QueryParams query_params,
const RewriteOptions options,
AsyncFetch fetch,
SystemCaches system_caches,
CacheInterface filesystem_metadata_cache,
HTTPCache http_cache,
CacheInterface metadata_cache,
PropertyCache page_property_cache,
ServerContext server_context,
Statistics statistics,
Statistics stats,
SystemRewriteOptions global_system_rewrite_options 
)

Handle a request for the legacy /**_pagespeed_statistics page, which also serves as a launching point for a subset of the admin pages. Because the admin pages are not uniformly sensitive, an existing PageSpeed user might have granted public access to /mod_pagespeed_statistics, but we don't want that to automatically imply access to the server cache.


The documentation for this class was generated from the following file: