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

#include "simple_text_filter.h"

Inheritance diagram for net_instaweb::SimpleTextFilter:
net_instaweb::RewriteFilter net_instaweb::CommonFilter net_instaweb::TrimWhitespaceSyncFilter

Classes

class  Context
 
class  Rewriter
 

Public Types

typedef RefCountedPtr< RewriterRewriterPtr
 

Public Member Functions

 SimpleTextFilter (Rewriter *rewriter, RewriteDriver *driver)
 
virtual void StartDocumentImpl ()
 
virtual void EndElementImpl (HtmlElement *element)
 
virtual void StartElementImpl (HtmlElement *element)
 
virtual RewriteContextMakeRewriteContext ()
 
virtual RewriteContextMakeNestedRewriteContext (RewriteContext *parent, const ResourceSlotPtr &slot)
 
- Public Member Functions inherited from net_instaweb::RewriteFilter
 RewriteFilter (RewriteDriver *driver)
 
virtual void DetermineEnabled (GoogleString *disabled_reason)
 
virtual bool CanModifyUrls ()
 
virtual const UrlSegmentEncoder * encoder () const
 
virtual void EncodeUserAgentIntoResourceContext (ResourceContext *context) const
 
virtual const
RewriteOptions::Filter
RelatedFilters (int *num_filters) const
 
virtual const StringPieceVector * RelatedOptions () const
 
- Public Member Functions inherited from net_instaweb::CommonFilter
 CommonFilter (RewriteDriver *driver)
 
const GoogleUrl & base_url () const
 Getters. More...
 
const GoogleUrl & decoded_base_url () const
 
RewriteDriverdriver () const
 
HtmlElement * noscript_element () const
 
void InsertNodeAtBodyEnd (HtmlNode *data)
 
virtual void StartDocument ()
 Note: Don't overload these methods, overload the implementers instead!
 
virtual void StartElement (HtmlElement *element)
 
virtual void EndElement (HtmlElement *element)
 
virtual void Characters (HtmlCharactersNode *characters)
 
ResourcePtr CreateInputResource (StringPiece input_url, bool *is_authorized)
 
ResourcePtr CreateInputResourceOrInsertDebugComment (StringPiece input_url, HtmlElement *element)
 
void ResolveUrl (StringPiece input_url, GoogleUrl *out_url)
 
bool BaseUrlIsValid () const
 
bool DebugMode () const
 
bool CanAddPagespeedOnloadToImage (const HtmlElement &)
 
virtual void LogFilterModifiedContent ()
 
virtual
RewriteDriver::InlineAuthorizationPolicy 
AllowUnauthorizedDomain () const
 
virtual bool IntendedForInlining () const
 
void AddJsToElement (StringPiece js, HtmlElement *script)
 

Protected Member Functions

virtual const char * id () const
 
virtual const char * Name () const
 
virtual bool ComputeOnTheFly () const
 
- Protected Member Functions inherited from net_instaweb::RewriteFilter
virtual const char * LoggingId ()
 This class logs using id().
 
- Protected Member Functions inherited from net_instaweb::CommonFilter
ServerContextserver_context () const
 
const RewriteOptionsrewrite_options ()
 

Additional Inherited Members

- Static Public Member Functions inherited from net_instaweb::RewriteFilter
static StringPiece GetCharsetForScript (const Resource *script, const StringPiece attribute_charset, const StringPiece enclosing_charset)
 
static GoogleString GetCharsetForStylesheet (const Resource *stylesheet, const StringPiece attribute_charset, const StringPiece enclosing_charset)
 
- Static Public Member Functions inherited from net_instaweb::CommonFilter
static bool ExtractMetaTagDetails (const HtmlElement &element, const ResponseHeaders *headers, GoogleString *content, GoogleString *mime_type, GoogleString *charset)
 
- Static Public Attributes inherited from net_instaweb::CommonFilter
static const char kCreateResourceFailedDebugMsg []
 Debug message to be inserted when resource creation fails.
 

Detailed Description

Generic hyper-simple rewriter class, which retains zero state across different rewrites; just transforming text to other text, returning whether anything changed. This text may come from resource files or inline in HTML, though the latter is NYI.

Implementors of this mechanism do not have to worry about resource-loading, cache reading/writing, expiration times, etc. Subclass SimpleTextFilter::Rewriter to define how to rewrite text.

Member Function Documentation

virtual bool net_instaweb::SimpleTextFilter::ComputeOnTheFly ( ) const
inlineprotectedvirtual

If this method returns true, the data output of this filter will not be cached, and will instead be recomputed on the fly every time it is needed. (However, the transformed URL and similar metadata in CachedResult will be kept in cache).

The default implementation returns false.

Reimplemented from net_instaweb::RewriteFilter.

virtual RewriteContext* net_instaweb::SimpleTextFilter::MakeNestedRewriteContext ( RewriteContext parent,
const ResourceSlotPtr &  slot 
)
virtual

Generates a nested RewriteContext appropriate for this filter. Default implementation returns NULL. This is used to implement ajax rewriting.

Reimplemented from net_instaweb::RewriteFilter.

virtual RewriteContext* net_instaweb::SimpleTextFilter::MakeRewriteContext ( )
virtual

Generates a RewriteContext appropriate for this filter. Default implementation returns NULL. This must be overridden by filters. This is used to implement Fetch.

Reimplemented from net_instaweb::RewriteFilter.

virtual void net_instaweb::SimpleTextFilter::StartDocumentImpl ( )
inlinevirtual

Overload these implementer methods: Intentionally left abstract so that implementers don't forget to change the name from Blah to BlahImpl.

Implements net_instaweb::CommonFilter.


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