Provided by: libmojolicious-perl_4.63+dfsg-1_all bug

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 {
           my ($mem, $file) = @_;
           ...
         });

       Emitted when asset gets upgraded to a Mojo::Asset::File object.

         $mem->on(upgrade => sub {
           my ($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.

METHODS

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

   new
         my $mem = Mojo::Asset::Memory->new;

       Construct a new Mojo::Asset::Memory object.

   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.

   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.

SEE ALSO

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