Provided by: libmojolicious-perl_6.15+dfsg-1ubuntu1_all bug

NAME

       Mojo::Asset - HTTP content storage base class

SYNOPSIS

         package Mojo::Asset::MyAsset;
         use Mojo::Base 'Mojo::Asset';

         sub add_chunk {...}
         sub contains  {...}
         sub get_chunk {...}
         sub move_to   {...}
         sub mtime     {...}
         sub size      {...}
         sub slurp     {...}

DESCRIPTION

       Mojo::Asset is an abstract base class for HTTP content storage backends, like
       Mojo::Asset::File and Mojo::Asset::Memory.

EVENTS

       Mojo::Asset inherits all events from Mojo::EventEmitter.

ATTRIBUTES

       Mojo::Asset implements the following attributes.

   end_range
         my $end = $asset->end_range;
         $asset  = $asset->end_range(8);

       Pretend file ends earlier.

   start_range
         my $start = $asset->start_range;
         $asset    = $asset->start_range(3);

       Pretend file starts later.

METHODS

       Mojo::Asset inherits all methods from Mojo::EventEmitter and implements the following new
       ones.

   add_chunk
         $asset = $asset->add_chunk('foo bar baz');

       Add chunk of data to asset. Meant to be overloaded in a subclass.

   contains
         my $position = $asset->contains('bar');

       Check if asset contains a specific string. Meant to be overloaded in a subclass.

   get_chunk
         my $bytes = $asset->get_chunk($offset);
         my $bytes = $asset->get_chunk($offset, $max);

       Get chunk of data starting from a specific position, defaults to a maximum chunk size of
       131072 bytes (128KB). Meant to be overloaded in a subclass.

   is_file
         my $bool = $asset->is_file;

       False, this is not a Mojo::Asset::File object.

   is_range
         my $bool = $asset->is_range;

       Check if asset has a "start_range" or "end_range".

   move_to
         $asset = $asset->move_to('/home/sri/foo.txt');

       Move asset data into a specific file. Meant to be overloaded in a subclass.

   mtime
         my $mtime = $asset->mtime;

       Modification time of asset. Meant to be overloaded in a subclass.

   size
         my $size = $asset->size;

       Size of asset data in bytes. Meant to be overloaded in a subclass.

   slurp
         my $bytes = $asset->slurp;

       Read all asset data at once. Meant to be overloaded in a subclass.

SEE ALSO

       Mojolicious, Mojolicious::Guides, <http://mojolicio.us>.