Page Speed Optimization Libraries  1.4.26.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Member Functions
net_instaweb::UrlInputResource Class Reference
Inheritance diagram for net_instaweb::UrlInputResource:
net_instaweb::Resource net_instaweb::RefCounted< Resource >

List of all members.

Public Member Functions

 UrlInputResource (RewriteDriver *rewrite_driver, const RewriteOptions *options, const ContentType *type, const StringPiece &url)
virtual bool IsValidAndCacheable () const
virtual GoogleString url () const
 Gets the absolute URL of the resource.
virtual const RewriteOptionsrewrite_options () const
virtual void Freshen (FreshenCallback *callback, MessageHandler *handler)
virtual bool UseHttpCache () const

Protected Member Functions

virtual bool Load (MessageHandler *message_handler)
virtual void LoadAndCallback (NotCacheablePolicy not_cacheable_policy, AsyncCallback *callback, MessageHandler *message_handler)

Member Function Documentation

virtual void net_instaweb::UrlInputResource::Freshen ( FreshenCallback callback,
MessageHandler handler 
) [virtual]

Freshen a soon-to-expire resource so that we minimize the number of cache misses when serving live traffic. Note that callback may be NULL, and all subclasses must handle this.

Reimplemented from net_instaweb::Resource.

virtual bool net_instaweb::UrlInputResource::IsValidAndCacheable ( ) const [virtual]

Checks if the contents are loaded and valid and also if the resource is up-to-date and cacheable by a proxy like us.

Reimplemented from net_instaweb::Resource.

virtual void net_instaweb::UrlInputResource::LoadAndCallback ( NotCacheablePolicy  not_cacheable_policy,
AsyncCallback callback,
MessageHandler message_handler 
) [protected, virtual]

Load the resource asynchronously, storing ResponseHeaders and contents in object. Calls 'callback' when finished. The ResourcePtr used to construct 'callback' must be the same as the resource used to invoke this method.

Setting not_cacheable_policy to kLoadEvenIfNotCacheable will permit it to consider loading to be successful on Cache-Control:private and Cache-Control:no-cache resources. It should not affect /whether/ the callback gets involved, only whether it gets true or false.

Implements net_instaweb::Resource.

virtual const RewriteOptions* net_instaweb::UrlInputResource::rewrite_options ( ) const [inline, virtual]

Obtain rewrite options for this. Any resources which return true for UseHttpCache() but don't unconditionally return true for loaded() must override this in a useful way. Used in cache invalidation.

Implements net_instaweb::Resource.

virtual bool net_instaweb::UrlInputResource::UseHttpCache ( ) const [inline, virtual]

Return whether this type of resource should use the HTTP Cache.

Todo:
TODO(jmarantz): move the guts of ServerContext::ReadAsync (including the callback class) into url_input_resource.cc and access via LoadAndCallback, to reduce the implementation complexity.

Implements net_instaweb::Resource.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines