Graham Ollis > Clustericious-0.9937 > Clustericious::App

Download:
Clustericious-0.9937.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.9937   Source  

NAME ^

Clustericious::App - Clustericious app base class

VERSION ^

version 0.9937

SYNOPSIS ^

 use Mojo::Base 'Clustericious::App';

DESCRIPTION ^

This class is the base class for all Clustericious applications. It inherits everything from Mojolicious and adds a few Clustericious specific methods documented here.

SUPER CLASS ^

Mojolicious

ATTRIBUTES ^

commands

An instance of Clustericious::Commands for use with this application.

METHODS ^

$app->startup

Adds the autodata_handler plugin, common routes, and sets up logging for the client using log::log4perl.

$app->init_logging

Initializing logging using ~/etc/log4perl.conf

$app->dump_api

Dump out the API for this REST server.

$app->dump_api_table( $table )

Dump out the column information for the given table.

$app->config

Returns the config (an instance of Clustericious::Config) for the application.

$app->sanity_check

This method is executed after startup, but before the application actually starts with the start command. If it returns 1 then the configuration is considered sane and the application will start. If it returns 0 then the configuration has problems and start will be aborted with an appropriate message to the user attempting start.

By default this just checks that the application's configuration file (usually located in ~/etc/MyApp.conf) is correctly formatted as either YAML or JSON.

You can override this in your application, but don't forget to call the base class's version of sanity_check before making your own checks.

SEE ALSO ^

Clustericious

AUTHOR ^

original author: Brian Duggan

current maintainer: Graham Ollis <plicease@cpan.org>

contributors:

Curt Tilmes

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2013 by NASA GSFC.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: