NAME

Mojolicious::Plugin::CHI - Use CHI caches within Mojolicious

SYNOPSIS

# Mojolicious
$app->plugin(CHI => {
  MyCache => {
    driver     => 'FastMmap',
    root_dir   => '/cache',
    cache_size => '20m'
  }
});

# Mojolicious::Lite
plugin 'CHI' => {
  default => {
    driver => 'Memory',
    global => 1
  }
};

# In Controllers:
$c->chi('MyCache')->set(my_key => 'This is my value');
print $c->chi('MyCache')->get('my_key');

# Using the default cache
$c->chi->set(from_memory => 'With love!');
print $c->chi->get('from_memory');

DESCRIPTION

Mojolicious::Plugin::CHI is a simple plugin to work with CHI caches within Mojolicious.

METHODS

register

# Mojolicious
$app->plugin(CHI => {
  MyCache => {
    driver     => 'FastMmap',
    root_dir   => '/cache',
    cache_size => '20m'
  },
  default => {
    driver => 'Memory',
    global => 1
  }
});

# Mojolicious::Lite
plugin 'CHI' => {
  default => { driver => 'Memory', global => 1 }
};

# Or in your config file
{
  CHI => {
    default => {
      driver => 'Memory',
      global => 1
    }
  }
}

Called when registering the plugin. On creation, the plugin accepts a hash of cache names associated with CHI objects. All parameters can be set either on registration or as part of the configuration file with the key CHI.

HELPERS

chi

# In Controllers:
$c->chi('MyCache')->set(my_key => 'This is my value', '10 min');
print $c->chi('MyCache')->get('my_key');
print $c->chi->get('from_default_cache');

Returns a CHI handle if registered. Accepts the name of the registered cache. If no cache handle name is given, a cache handle name default is assumed.

DEPENDENCIES

Mojolicious, CHI.

Note: CHI has a lot of dependencies. It is thus not recommended to use this plugin in a CGI environment.

CONTRIBUTORS

Boris Däppen (borisdaeppen)

AVAILABILITY

https://github.com/Akron/Mojolicious-Plugin-CHI

COPYRIGHT AND LICENSE

Copyright (C) 2012, Nils Diewald.

This program is free software, you can redistribute it and/or modify it under the same terms as Perl.