Provided by: libmojolicious-perl_9.35+dfsg-1_all
NAME
Mojo::Asset::Memory - In-memory storage for HTTP content
SYNOPSIS
use Mojo::Asset::Memory; my $mem = Mojo::Asset::Memory->new; $mem->add_chunk('foo bar baz'); say $mem->slurp;
DESCRIPTION
Mojo::Asset::Memory is an in-memory storage backend for HTTP content.
EVENTS
Mojo::Asset::Memory inherits all events from Mojo::Asset and can emit the following new ones. upgrade $mem->on(upgrade => sub ($mem, $file) {...}); Emitted when asset gets upgraded to a Mojo::Asset::File object. $mem->on(upgrade => sub ($mem, $file) { $file->tmpdir('/tmp') });
ATTRIBUTES
Mojo::Asset::Memory inherits all attributes from Mojo::Asset and implements the following new ones. auto_upgrade my $bool = $mem->auto_upgrade; $mem = $mem->auto_upgrade($bool); Try to detect if content size exceeds "max_memory_size" limit and automatically upgrade to a Mojo::Asset::File object. max_memory_size my $size = $mem->max_memory_size; $mem = $mem->max_memory_size(1024); Maximum size in bytes of data to keep in memory before automatically upgrading to a Mojo::Asset::File object, defaults to the value of the "MOJO_MAX_MEMORY_SIZE" environment variable or 262144 (256KiB). mtime my $mtime = $mem->mtime; $mem = $mem->mtime(1408567500); Modification time of asset, defaults to the value of $^T.
METHODS
Mojo::Asset::Memory inherits all methods from Mojo::Asset and implements the following new ones. add_chunk $mem = $mem->add_chunk('foo bar baz'); my $file = $mem->add_chunk('abc' x 262144); Add chunk of data and upgrade to Mojo::Asset::File object if necessary. contains my $position = $mem->contains('bar'); Check if asset contains a specific string. get_chunk my $bytes = $mem->get_chunk($offset); my $bytes = $mem->get_chunk($offset, $max); Get chunk of data starting from a specific position, defaults to a maximum chunk size of 131072 bytes (128KiB). move_to $mem = $mem->move_to('/home/sri/foo.txt'); Move asset data into a specific file. size my $size = $mem->size; Size of asset data in bytes. slurp my $bytes = $mem->slurp; Read all asset data at once. to_file my $file = $mem->to_file; Convert asset to Mojo::Asset::File object.
SEE ALSO
Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.