GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Mojolicious::Plugins(3) User Contributed Perl Documentation Mojolicious::Plugins(3)

Mojolicious::Plugins - Plugin manager

  use Mojolicious::Plugins;

  my $plugins = Mojolicious::Plugins->new;
  push @{$plugins->namespaces}, 'MyApp::Plugin';

Mojolicious::Plugins is the plugin manager of Mojolicious.

The following plugins are included in the Mojolicious distribution as examples.
Mojolicious::Plugin::Config
Perl-ish configuration files.
Mojolicious::Plugin::DefaultHelpers
General purpose helper collection, loaded automatically.
Mojolicious::Plugin::EPLRenderer
Renderer for plain embedded Perl templates, loaded automatically.
Mojolicious::Plugin::EPRenderer
Renderer for more sophisticated embedded Perl templates, loaded automatically.
Mojolicious::Plugin::HeaderCondition
Route condition for all kinds of headers, loaded automatically.
Mojolicious::Plugin::JSONConfig
JSON configuration files.
Mojolicious::Plugin::Mount
Mount whole Mojolicious applications.
Mojolicious::Plugin::NotYAMLConfig
YAML configuration files.
Mojolicious::Plugin::TagHelpers
Template specific helper collection, loaded automatically.

Mojolicious::Plugins inherits all events from Mojo::EventEmitter.

Mojolicious::Plugins implements the following attributes.

  my $namespaces = $plugins->namespaces;
  $plugins       = $plugins->namespaces(['Mojolicious::Plugin']);

Namespaces to load plugins from, defaults to Mojolicious::Plugin.

  # Add another namespace to load plugins from
  push @{$plugins->namespaces}, 'MyApp::Plugin';

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

  $plugins->emit_chain('foo');
  $plugins->emit_chain(foo => 123);

Emit events as chained hooks.

  $plugins = $plugins->emit_hook('foo');
  $plugins = $plugins->emit_hook(foo => 123);

Emit events as hooks.

  $plugins = $plugins->emit_hook_reverse('foo');
  $plugins = $plugins->emit_hook_reverse(foo => 123);

Emit events as hooks in reverse order.

  my $plugin = $plugins->load_plugin('some_thing');
  my $plugin = $plugins->load_plugin('SomeThing');
  my $plugin = $plugins->load_plugin('MyApp::Plugin::SomeThing');

Load a plugin from the configured namespaces or by full module name.

  $plugins->register_plugin('some_thing', Mojolicious->new);
  $plugins->register_plugin('some_thing', Mojolicious->new, foo => 23);
  $plugins->register_plugin('some_thing', Mojolicious->new, {foo => 23});
  $plugins->register_plugin('SomeThing', Mojolicious->new);
  $plugins->register_plugin('SomeThing', Mojolicious->new, foo => 23);
  $plugins->register_plugin('SomeThing', Mojolicious->new, {foo => 23});
  $plugins->register_plugin('MyApp::Plugin::SomeThing', Mojolicious->new);
  $plugins->register_plugin(
    'MyApp::Plugin::SomeThing', Mojolicious->new, foo => 23);
  $plugins->register_plugin(
    'MyApp::Plugin::SomeThing', Mojolicious->new, {foo => 23});

Load a plugin from the configured namespaces or by full module name and run "register", optional arguments are passed through.

Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.
2021-12-08 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.