X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst%2FHelper.pm;h=15047579c7753ae5dc4c5928d74984bf09dd53b2;hp=2f3e2a7c7be95b16c7d8d69e03a6f8fb671c9bb0;hb=7a8709616835e0a373e2cd7b83edf2609c576242;hpb=195631f4eb6fe6091112178b0c422a9b78fa5631 diff --git a/lib/Catalyst/Helper.pm b/lib/Catalyst/Helper.pm index 2f3e2a7..1504757 100644 --- a/lib/Catalyst/Helper.pm +++ b/lib/Catalyst/Helper.pm @@ -8,6 +8,7 @@ use File::Path; use IO::File; use FindBin; use Template; +our $CATALYST_SCRIPT_GEN = 2; my %cache; @@ -21,7 +22,7 @@ See L =head1 DESCRIPTION -Bootstrap a Catalyst application. +Bootstrap a Catalyst application. Autogenerates scripts =head2 METHODS @@ -49,6 +50,8 @@ sub get_file { =head3 mk_app +Create the main application skeleton. + =cut sub mk_app { @@ -58,6 +61,9 @@ sub mk_app { $self->{dir} = $name; $self->{dir} =~ s/\:\:/-/g; $self->{startperl} = $Config{startperl}; + $self->{scriptgen}=$CATALYST_SCRIPT_GEN; + $self->{author}=$self->{author} = $ENV{'AUTHOR'} || + @{[getpwuid($<)]}[6]; $self->_mk_dirs; $self->_mk_appclass; $self->_mk_makefile; @@ -74,12 +80,17 @@ sub mk_app { =head3 mk_component +This method is called by create.pl to make new components +for your application. + =cut sub mk_component { my $self = shift; my $app = shift; $self->{app} = $app; + $self->{author}=$self->{author} = $ENV{'AUTHOR'} || + @{[getpwuid($<)]}[6]; $self->{base} = File::Spec->catdir( $FindBin::Bin, '..' ); unless ( $_[0] =~ /^model|m|view|v|controller|c\$/i ) { my $helper = shift; @@ -152,6 +163,8 @@ sub mk_component { =head3 mk_dir +Surprisingly, this function makes a directory. + =cut sub mk_dir { @@ -169,6 +182,8 @@ sub mk_dir { =head3 mk_file +writes content to a file. + =cut sub mk_file { @@ -207,7 +222,8 @@ sub next_test { =head3 render_file -Render and create a file from a template in DATA. +Render and create a file from a template in DATA using +Template Toolkit. =cut @@ -348,6 +364,11 @@ All helper classes should be under one of the following namespaces. Catalyst::Helper::View:: Catalyst::Helper::Controller:: +=head1 NOTE + +The helpers will read author name from /etc/passwd by default. +To override, please export the AUTHOR variable. + =head1 SEE ALSO L, L, L, @@ -359,8 +380,8 @@ Sebastian Riedel, C =head1 LICENSE -This library is free software . You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software . You can redistribute it and/or modify +it under the same terms as perl itself. =cut @@ -401,12 +422,12 @@ Very nice application. =head1 AUTHOR -Clever guy +[%author%] =head1 LICENSE -This library is free software . You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software . You can redistribute it and/or modify +it under the same terms as perl itself. =cut @@ -426,7 +447,7 @@ __readme__ Run script/server.pl to test the application. __changes__ -This file documents the revision history for Perl extension $name. +This file documents the revision history for Perl extension [% name %]. 0.01 [% time %] - initial revision, generated by Catalyst @@ -488,8 +509,8 @@ Sebastian Riedel, C Copyright 2004 Sebastian Riedel. All rights reserved. -This library is free software. You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software. You can redistribute it and/or modify +it under the same terms as perl itself. =cut @@ -527,15 +548,18 @@ Sebastian Riedel, C Copyright 2004 Sebastian Riedel. All rights reserved. -This library is free software. You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software. You can redistribute it and/or modify +it under the same terms as perl itself. =cut __server__ [% startperl %] -w -BEGIN { $ENV{CATALYST_ENGINE} = 'HTTP' } +BEGIN { + $ENV{CATALYST_ENGINE} = 'HTTP'; + $ENV{CATALYST_SCRIPT_GEN} = [% scriptgen %]; +} use strict; use Getopt::Long; @@ -583,8 +607,8 @@ Sebastian Riedel, C Copyright 2004 Sebastian Riedel. All rights reserved. -This library is free software. You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software. You can redistribute it and/or modify +it under the same terms as perl itself. =cut @@ -641,8 +665,8 @@ Sebastian Riedel, C Copyright 2004 Sebastian Riedel. All rights reserved. -This library is free software. You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software. You can redistribute it and/or modify +it under the same terms as perl itself. =cut @@ -702,8 +726,8 @@ Sebastian Riedel, C Copyright 2004 Sebastian Riedel. All rights reserved. -This library is free software. You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software. You can redistribute it and/or modify +it under the same terms as perl itself. =cut @@ -715,7 +739,7 @@ use base 'Catalyst::Base'; [% IF type == 'C' %] sub default : Private { - my ( $self, $c ) = \@_; + my ( $self, $c ) = @_; $c->res->output('Congratulations, [% class %] is on Catalyst!'); } @@ -734,12 +758,12 @@ Very nice component. =head1 AUTHOR -Clever guy +[%author%] =head1 LICENSE -This library is free software . You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software . You can redistribute it and/or modify +it under the same terms as perl itself. =cut