Mojo::Asset - HTTP content storage base class

NAME  SYNOPSIS  DESCRIPTION  EVENTS  ATTRIBUTES  end_range  start_range  METHODS  add_chunk  contains  get_chunk  is_file  is_range  move_to  mtime  size  slurp  to_file  SEE ALSO 

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 {...}
sub to_file {...}

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 (128KiB). 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.

to_file

my $file = $asset−>to_file;

Convert asset to Mojo::Asset::File object. Meant to be overloaded in a subclass.

SEE ALSO

Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.


Updated 2024-01-29 - jenkler.se | uex.se