19 #ifndef NET_INSTAWEB_REWRITER_PUBLIC_SIMPLE_TEXT_FILTER_H_
20 #define NET_INSTAWEB_REWRITER_PUBLIC_SIMPLE_TEXT_FILTER_H_
28 #include "pagespeed/kernel/base/basictypes.h"
29 #include "pagespeed/kernel/base/string.h"
30 #include "pagespeed/kernel/base/string_util.h"
31 #include "pagespeed/kernel/html/html_element.h"
33 namespace net_instaweb {
51 virtual bool RewriteText(
const StringPiece& url,
52 const StringPiece& in,
55 virtual HtmlElement::Attribute* FindResourceAttribute(
56 HtmlElement* element) = 0;
59 virtual const char* id()
const = 0;
60 virtual const char* name()
const = 0;
66 REFCOUNT_FRIEND_DECLARATION(
Rewriter);
73 typedef RefCountedPtr<Rewriter> RewriterPtr;
81 const ResourcePtr& input,
const OutputResourcePtr& output);
84 virtual const char*
id()
const {
return rewriter_->id(); }
87 return rewriter_->OptimizationOnly();
91 RewriterPtr rewriter_;
93 DISALLOW_COPY_AND_ASSIGN(
Context);
100 virtual void EndElementImpl(HtmlElement* element) {}
101 virtual void StartElementImpl(HtmlElement* element);
105 RewriteContext* parent,
const ResourceSlotPtr& slot);
108 virtual const char* id()
const {
return rewriter_->id(); }
109 virtual const char* Name()
const {
return rewriter_->name(); }
115 RewriterPtr rewriter_;
RewriteContext * parent()
Allows a nested rewriter to walk up its parent hierarchy.
Definition: rewrite_context.h:266
virtual bool OptimizationOnly() const
Definition: simple_text_filter.h:86
virtual bool OptimizationOnly() const
See RewriteContext::OptimizationOnly()
Definition: simple_text_filter.h:63
Definition: output_resource_kind.h:28
Definition: simple_text_filter.h:75
Definition: simple_text_filter.h:46
virtual bool ComputeOnTheFly() const
Definition: simple_text_filter.h:110
virtual RewriteContext * MakeRewriteContext()
virtual OutputResourceKind kind() const
Definition: simple_text_filter.h:85
Definition: rewrite_filter.h:37
Definition: rewrite_driver.h:98
Definition: server_context.h:101
Definition: rewrite_context.h:144
Definition: single_rewrite_context.h:36
virtual RewriteContext * MakeNestedRewriteContext(RewriteContext *parent, const ResourceSlotPtr &slot)
virtual void RewriteSingle(const ResourcePtr &input, const OutputResourcePtr &output)
Subclasses of SingleRewriteContext must override this:
Definition: simple_text_filter.h:48
virtual void StartDocumentImpl()
Definition: simple_text_filter.h:99
virtual const char * id() const
Returns the filter ID.
Definition: simple_text_filter.h:84
OutputResourceKind
Definition: output_resource_kind.h:26