Yasuhiro Horiuchi > Sledge-Plugin-IfModifiedSince > Sledge::Plugin::IfModifiedSince

Download:
Sledge-Plugin-IfModifiedSince-0.05.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
Report a bug
Module Version: 0.05   Source  

NAME ^

Sledge::Plugin::IfModifiedSince - Sledge plugin to control cache by If-Modified-Since header

SYNOPSIS ^

  package Your:Pages;
  use Sledge::Plugin::IfModifiedSince;

  sub dispatch_foo {
      my $self = shift;

      if ( $self->if_modified_since( time || '/path/to/file' ) ) {

          # set Last-Modified header by epoch time
          $self->set_last_modified( time );

          # or by path to file
          $self->set_last_modified( '/path/to/file' );

          # output content...

      } else {

          $self->not_modified;
          return;

      }


  }

DESCRIPTION ^

Sledge::Plugin::IfModifiedSince is Sledge plugin to control cache by If-Modified-Since header. use this module in your Pages class, then if_modified_since, not_modified and set_last_modified methods are imported in it.

IMPORT METHODS ^

if_modified_since
 # check by epoch time
 my $is_modified = $page->if_modified_since($epoch);

 # or by mtime
 my $is_modified = $page->if_modified_since('/path/to/file');

 Compare If-Modified-Since header to passed time.
 You can pass epoch time or path to file as argument.
not_modified
 $page->not_modified;

 Return 304 Not Modified.
set_last_modified
 # pass epoch time
 $self->set_last_modified( time );
 
 # or pass path to file
 $self->set_last_modified( '/path/to/file' );
 

 Set last modified time in Last-Modified header.
 You can pass epoch time or path to file as argument.

AUTHOR ^

Yasuhiro Horiuchi <yasuhiro@hori-uchi.com>