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

Context that is used for an in-place rewrite. More...

#include "in_place_rewrite_context.h"

Inheritance diagram for net_instaweb::InPlaceRewriteContext:
net_instaweb::SingleRewriteContext net_instaweb::RewriteContext

List of all members.

Public Member Functions

 InPlaceRewriteContext (RewriteDriver *driver, const StringPiece &url)
virtual void RewriteSingle (const ResourcePtr &input, const OutputResourcePtr &output)
 Implements SingleRewriteContext::RewriteSingle().
virtual const char * id () const
 Implements RewriteContext::id().
virtual OutputResourceKind kind () const
 Implements RewriteContext::kind().
virtual bool DecodeFetchUrls (const OutputResourcePtr &output_resource, MessageHandler *message_handler, GoogleUrlStarVector *url_vector)
 Implements RewriteContext::DecodeFetchUrls().
virtual void StartFetchReconstruction ()
 Implements RewriteContext::StartFetchReconstruction().
bool proxy_mode () const
void set_proxy_mode (bool x)
virtual int64 GetRewriteDeadlineAlarmMs () const
virtual GoogleString UserAgentCacheKey (const ResourceContext *resource_context) const
virtual void EncodeUserAgentIntoResourceContext (ResourceContext *context)
virtual bool CreationLockBeforeStartFetch ()

Static Public Member Functions

static void InitStats (Statistics *statistics)
 Initializes statistics.

Static Public Attributes

static const char kInPlaceOversizedOptStream []
static const char kInPlaceUncacheableRewrites []

Friends

class RecordingFetch

Detailed Description

Context that is used for an in-place rewrite.


Member Function Documentation

We don't lock for IPRO because IPRO would rather stream back the original resource than wait for the optimization.

Reimplemented from net_instaweb::RewriteContext.

virtual void net_instaweb::InPlaceRewriteContext::EncodeUserAgentIntoResourceContext ( ResourceContext *  context) [virtual]

Encodes User Agent into the ResourceContext. A subclass ResourceContext should normally call RewriteFilter::EncodeUserAgentIntoResourceContext if it has access to a RewriteFilter.

Reimplemented from net_instaweb::RewriteContext.

Returns an interval in milliseconds to wait when configuring the deadline alarm in FetchContext::SetupDeadlineAlarm(). Subclasses may configure the deadline based on rewrite type, e.g., IPRO vs. HTML-path.

Reimplemented from net_instaweb::RewriteContext.

virtual GoogleString net_instaweb::InPlaceRewriteContext::UserAgentCacheKey ( const ResourceContext *  context) const [virtual]

Indicates user agent capabilities that must be stored in the cache key.

Note that the context may be NULL as it may not be set before this. Since it isn't going to be modified in the method, ResourceContext is passed as a const pointer.

Todo:
TODO(morlovich): This seems to overlap with CacheKeySuffix.

Reimplemented from net_instaweb::RewriteContext.


Member Data Documentation

Stats variable name to keep track of how often in-place falls back to stream (due to a large resource) when Options->in_place_wait_for_optimized is true.


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