net_instaweb::JsOutlineFilter Class Reference

Filter to take explicit <style> and <script> tags and outline them to files. More...

#include "js_outline_filter.h"

Inheritance diagram for net_instaweb::JsOutlineFilter:
net_instaweb::CommonFilter net_instaweb::EmptyHtmlFilter net_instaweb::HtmlFilter

List of all members.

Public Member Functions

 JsOutlineFilter (RewriteDriver *driver)
virtual void StartDocumentImpl ()
virtual void StartElementImpl (HtmlElement *element)
virtual void EndElementImpl (HtmlElement *element)
virtual void Flush ()
virtual void Characters (HtmlCharactersNode *characters)
 HTML Events we expect to be in <script> elements.
virtual void Comment (HtmlCommentNode *comment)
 HTML Events we do not expect to be in <style> and <script> elements.
virtual void Cdata (HtmlCdataNode *cdata)
 Called for CDATA blocks (e.g. <![CDATA[foobar]]>).
virtual void IEDirective (HtmlIEDirectiveNode *directive)
virtual void EndDocument ()
 Ignored HTML Events.
virtual void Directive (HtmlDirectiveNode *directive)
 Called for HTML directives (e.g. <!doctype foobar>).
virtual const char * Name () const
 The name of this filter -- used for logging and debugging.

Static Public Attributes

static const char kFilterId []

Detailed Description

Filter to take explicit <style> and <script> tags and outline them to files.


Member Function Documentation

virtual void net_instaweb::JsOutlineFilter::Flush (  )  [virtual]

Notifies the Filter that a flush is occurring. A filter that's generating streamed output should flush at this time. A filter that's mutating elements can mutate any element seen since the most recent flush; once an element is flushed it is already on the wire to its destination and it's too late to mutate. Flush is initiated by an application calling HttpParse::Flush().

Flush() is called after all other handlers during a HttpParse::Flush().

Reimplemented from net_instaweb::EmptyHtmlFilter.

virtual void net_instaweb::JsOutlineFilter::IEDirective ( HtmlIEDirectiveNode directive  )  [virtual]

Called for an IE directive; typically used for CSS styling. See http://msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx

Todo:
TODO(mdsteele): Should we try to maintain the nested structure of the conditionals, in the same way that we maintain nesting of elements?

Reimplemented from net_instaweb::EmptyHtmlFilter.

virtual void net_instaweb::JsOutlineFilter::StartDocumentImpl (  )  [virtual]

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:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Tue May 29 16:34:01 2012 for Page Speed Optimization Libraries by  doxygen 1.6.3