From 57beda663bb4448ad838b599e5df5bf50375a5cb Mon Sep 17 00:00:00 2001 From: Olivier Thauvin Date: Thu, 23 Sep 2010 23:13:54 +0000 Subject: - init --- lib/MGA/Mirrors.pm | 72 ++++++++++++++++++++++++++++++++++++++ lib/MGA/Mirrors/Controller/Root.pm | 69 ++++++++++++++++++++++++++++++++++++ 2 files changed, 141 insertions(+) create mode 100644 lib/MGA/Mirrors.pm create mode 100644 lib/MGA/Mirrors/Controller/Root.pm (limited to 'lib') diff --git a/lib/MGA/Mirrors.pm b/lib/MGA/Mirrors.pm new file mode 100644 index 0000000..03de5c6 --- /dev/null +++ b/lib/MGA/Mirrors.pm @@ -0,0 +1,72 @@ +package MGA::Mirrors; +use Moose; +use namespace::autoclean; + +use Catalyst::Runtime 5.80; + +# Set flags and add plugins for the application +# +# -Debug: activates the debug mode for very useful log messages +# ConfigLoader: will load the configuration from a Config::General file in the +# application's home directory +# Static::Simple: will serve static files from the application's root +# directory + +use Catalyst qw/ + -Debug + ConfigLoader + Static::Simple +/; + +extends 'Catalyst'; + +our $VERSION = '0.01'; +$VERSION = eval $VERSION; + +# Configure the application. +# +# Note that settings in mga_mirrors.conf (or other external +# configuration file that you set up manually) take precedence +# over this when using ConfigLoader. Thus configuration +# details given here can function as a default configuration, +# with an external configuration file acting as an override for +# local deployment. + +__PACKAGE__->config( + name => 'MGA::Mirrors', + # Disable deprecated behavior needed by old applications + disable_component_resolution_regex_fallback => 1, +); + +# Start the application +__PACKAGE__->setup(); + + +=head1 NAME + +MGA::Mirrors - Catalyst based application + +=head1 SYNOPSIS + + script/mga_mirrors_server.pl + +=head1 DESCRIPTION + +[enter your description here] + +=head1 SEE ALSO + +L, L + +=head1 AUTHOR + +Olivier Thauvin + +=head1 LICENSE + +This library is free software. You can redistribute it and/or modify +it under the same terms as Perl itself. + +=cut + +1; diff --git a/lib/MGA/Mirrors/Controller/Root.pm b/lib/MGA/Mirrors/Controller/Root.pm new file mode 100644 index 0000000..5decc3a --- /dev/null +++ b/lib/MGA/Mirrors/Controller/Root.pm @@ -0,0 +1,69 @@ +package MGA::Mirrors::Controller::Root; +use Moose; +use namespace::autoclean; + +BEGIN { extends 'Catalyst::Controller' } + +# +# Sets the actions in this controller to be registered with no prefix +# so they function identically to actions created in MyApp.pm +# +__PACKAGE__->config(namespace => ''); + +=head1 NAME + +MGA::Mirrors::Controller::Root - Root Controller for MGA::Mirrors + +=head1 DESCRIPTION + +[enter your description here] + +=head1 METHODS + +=head2 index + +The root page (/) + +=cut + +sub index :Path :Args(0) { + my ( $self, $c ) = @_; + + # Hello World + $c->response->body( $c->welcome_message ); +} + +=head2 default + +Standard 404 error page + +=cut + +sub default :Path { + my ( $self, $c ) = @_; + $c->response->body( 'Page not found' ); + $c->response->status(404); +} + +=head2 end + +Attempt to render a view, if needed. + +=cut + +sub end : ActionClass('RenderView') {} + +=head1 AUTHOR + +Olivier Thauvin + +=head1 LICENSE + +This library is free software. You can redistribute it and/or modify +it under the same terms as Perl itself. + +=cut + +__PACKAGE__->meta->make_immutable; + +1; -- cgit v1.2.1