Page Speed Optimization Libraries
1.7.30.1
|
A place storing a rewritable URL inside a CSS AST. More...
#include "css_resource_slot.h"
Public Member Functions | |
virtual void | Render () |
virtual void | Finished () |
virtual GoogleString | LocationString () |
Css::Values * | values () const |
size_t | value_index () const |
UrlRelativity | url_relativity () const |
virtual void | DirectSetUrl (const StringPiece &url) |
virtual bool | CanDirectSetUrl () |
Protected Member Functions | |
CssResourceSlot (const ResourcePtr &resource, const GoogleUrl &trim_url, const RewriteOptions *options, Css::Values *values, size_t value_index) | |
REFCOUNT_FRIEND_DECLARATION (CssResourceSlot) | |
Friends | |
class | CssResourceSlotFactory |
A place storing a rewritable URL inside a CSS AST.
virtual bool net_instaweb::CssResourceSlot::CanDirectSetUrl | ( | ) | [inline, virtual] |
Returns true if DirectSetUrl is supported by this slot (html and css right now).
Reimplemented from net_instaweb::ResourceSlot.
virtual void net_instaweb::CssResourceSlot::DirectSetUrl | ( | const StringPiece & | url | ) | [virtual] |
Update the URL in the slot target without touching the resource. This is intended for when we're inlining things as data: URLs. Note that if you call this you should also call set_disable_rendering(true), or otherwise the result will be overwritten. Does not alter the URL in any way. Not supported on all slot types --- presently only slots representing things within CSS and HTML have this operation (others will DCHECK-fail). Must be called from within a context's Render() method.
Reimplemented from net_instaweb::ResourceSlot.
virtual void net_instaweb::CssResourceSlot::Finished | ( | ) | [virtual] |
Called after all contexts have had a chance to Render. This is especially useful for cases where Render was never called but you want something to be done to all slots.
Reimplemented from net_instaweb::ResourceSlot.
virtual GoogleString net_instaweb::CssResourceSlot::LocationString | ( | ) | [virtual] |
Returns a human-readable description of where this slot occurs, for use in log messages.
Implements net_instaweb::ResourceSlot.
virtual void net_instaweb::CssResourceSlot::Render | ( | ) | [virtual] |
Render is not thread-safe. This must be called from the thread that owns the DOM or CSS file. The RewriteContext state machine will only call ResourceSlot::Render() on slots that were optimized successfully, and whose partitions are safely url_relocatable(). (Note that this is different from RewriteContext::Render).
Implements net_instaweb::ResourceSlot.