net_instaweb::SingleRewriteContext Class Reference

#include "single_rewrite_context.h"

Inheritance diagram for net_instaweb::SingleRewriteContext:
net_instaweb::RewriteContext net_instaweb::AjaxRewriteContext net_instaweb::CssFilter::Context net_instaweb::CssFlattenImportsContext net_instaweb::SimpleTextFilter::Context

List of all members.

Public Member Functions

 SingleRewriteContext (RewriteDriver *driver, RewriteContext *parent, ResourceContext *resource_context)

Protected Member Functions

virtual void RewriteSingle (const ResourcePtr &input, const OutputResourcePtr &output)=0
 Subclasses of SingleRewriteContext must override this:
virtual bool Partition (OutputPartitions *partitions, OutputResourceVector *outputs)
 SingleRewriteContext takes care of these methods from RewriteContext:
virtual void Rewrite (int partition_index, CachedResult *partition, const OutputResourcePtr &output)
 DISALLOW_COPY_AND_ASSIGN (SingleRewriteContext)

Detailed Description

Class that unifies tasks common to building rewriters for filters that only do one-for-one URL substitutions.


Constructor & Destructor Documentation

net_instaweb::SingleRewriteContext::SingleRewriteContext ( RewriteDriver driver,
RewriteContext parent,
ResourceContext *  resource_context 
)

Transfers ownership of resource_context, which must be NULL or allocated with 'new'.


Member Function Documentation

virtual void net_instaweb::SingleRewriteContext::Rewrite ( int  partition_index,
CachedResult *  partition,
const OutputResourcePtr output 
) [protected, virtual]

Takes a completed rewrite partition and rewrites it. When complete calls RewriteDone with kRewriteOk if successful. Note that a value of kTooBusy means that an HTML rewrite will skip this resource, but we should not cache it as "do not optimize".

During this phase, any nested contexts that are needed to complete the Rewrite process can be instantiated.

Todo:
TODO(jmarantz): check for resource completion from a different thread (while we were waiting for resource fetches) when Rewrite gets called.

Implements net_instaweb::RewriteContext.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Tue May 29 16:34:06 2012 for Page Speed Optimization Libraries by  doxygen 1.6.3