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=6a34f7dc695ad07eb7201981703c817eeb251996;hp=4787359747d157cdc19fc9531a38ee45ba1f592a;hb=b5ecfcf07b8ffe7e9984f0279c8781ce51c6ac6a;hpb=c5e57c7a39e5f9be6694a41181aee045e0a95ac8 diff --git a/lib/Catalyst/Helper.pm b/lib/Catalyst/Helper.pm index 4787359..6a34f7d 100644 --- a/lib/Catalyst/Helper.pm +++ b/lib/Catalyst/Helper.pm @@ -60,7 +60,10 @@ sub mk_app { # Needs to be here for PAR require Catalyst; - return 0 if $name =~ /[^\w\:]/; + if ( $name =~ /[^\w\:]/ ) { + warn "Error: Invalid application name.\n"; + return 0; + } $self->{name} = $name; $self->{dir} = $name; $self->{dir} =~ s/\:\:/-/g; @@ -536,9 +539,7 @@ Catalyst based application. =head1 METHODS -=over 4 - -=item default +=head2 default =cut @@ -555,7 +556,7 @@ sub default : Private { # # Uncomment and modify this end action after adding a View component # -#=item end +#=head2 end # #=cut # @@ -566,8 +567,6 @@ sub default : Private { # $c->forward('View::') unless $c->response->body; #} -=back - =head1 AUTHOR [% author %] @@ -651,7 +650,7 @@ plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD}; all_pod_coverage_ok(); __cgi__ -[% startperl %] -w +[% startperl %] BEGIN { $ENV{CATALYST_ENGINE} ||= 'CGI' } @@ -689,7 +688,7 @@ it under the same terms as Perl itself. =cut __fastcgi__ -[% startperl %] -w +[% startperl %] BEGIN { $ENV{CATALYST_ENGINE} ||= 'FastCGI' } @@ -701,13 +700,15 @@ use lib "$FindBin::Bin/../lib"; use [% name %]; my $help = 0; -my ( $listen, $nproc, $pidfile ); +my ( $listen, $nproc, $pidfile, $manager, $detach ); GetOptions( 'help|?' => \$help, 'listen|l=s' => \$listen, 'nproc|n=i' => \$nproc, 'pidfile|p=s' => \$pidfile, + 'manager|M=s' => \$manager, + 'daemon|d' => \$detach, ); pod2usage(1) if $help; @@ -716,6 +717,8 @@ pod2usage(1) if $help; $listen, { nproc => $nproc, pidfile => $pidfile, + manager => $manager, + detach => $detach, } ); @@ -740,6 +743,10 @@ pod2usage(1) if $help; requires -listen) -p -pidfile specify filename for pid file (requires -listen) + -d -daemon daemonize (requires -listen) + -M -manager specify alternate process manager + (FCGI::ProcessManager sub-class) + or empty string to disable =head1 DESCRIPTION @@ -758,7 +765,7 @@ it under the same terms as Perl itself. =cut __server__ -[% startperl %] -w +[% startperl %] BEGIN { $ENV{CATALYST_ENGINE} ||= 'HTTP'; @@ -776,6 +783,7 @@ my $fork = 0; my $help = 0; my $host = undef; my $port = 3000; +my $keepalive = 0; my $restart = 0; my $restart_delay = 1; my $restart_regex = '\.yml$|\.yaml$|\.pm$'; @@ -788,6 +796,7 @@ GetOptions( 'help|?' => \$help, 'host=s' => \$host, 'port=s' => \$port, + 'keepalive|k' => \$keepalive, 'restart|r' => \$restart, 'restartdelay|rd=s' => \$restart_delay, 'restartregex|rr=s' => \$restart_regex @@ -805,9 +814,10 @@ if ( $debug ) { require [% name %]; [% name %]->run( $port, $host, { - argv => \@argv, - 'fork' => $fork, - restart => $restart, + argv => \@argv, + 'fork' => $fork, + keepalive => $keepalive, + restart => $restart, restart_delay => $restart_delay, restart_regex => qr/$restart_regex/ } ); @@ -829,6 +839,7 @@ require [% name %]; -? -help display this help and exits -host host (defaults to all) -p -port port (defaults to 3000) + -k -keepalive enable keep-alive connections -r -restart restart when files got modified (defaults to false) -rd -restartdelay delay between file checks @@ -857,7 +868,7 @@ it under the same terms as Perl itself. =cut __test__ -[% startperl %] -w +[% startperl %] use strict; use Getopt::Long; @@ -912,27 +923,27 @@ it under the same terms as Perl itself. =cut __create__ -[% startperl %] -w +[% startperl %] use strict; use Getopt::Long; use Pod::Usage; use Catalyst::Helper; -my $help = 0; -my $nonew = 0; +my $force = 0; +my $help = 0; my $short = 0; GetOptions( - 'help|?' => \$help, - 'nonew' => \$nonew, - 'short' => \$short + 'nonew|force' => \$force, + 'help|?' => \$help, + 'short' => \$short ); pod2usage(1) if ( $help || !$ARGV[0] ); my $helper = - Catalyst::Helper->new( { '.newfiles' => !$nonew, short => $short } ); + Catalyst::Helper->new( { '.newfiles' => !$force, short => $short } ); pod2usage(1) unless $helper->mk_component( '[% name %]', @ARGV ); @@ -947,8 +958,8 @@ pod2usage(1) unless $helper->mk_component( '[% name %]', @ARGV ); [% appprefix %]_create.pl [options] model|view|controller name [helper] [options] Options: + -force don't create a .new file where a file to be created exists -help display this help and exits - -nonew don't create a .new file where a file to be created exists -short use short types, like C instead of Controller... Examples: @@ -970,7 +981,7 @@ Create a new Catalyst Component. Existing component files are not overwritten. If any of the component files to be created already exist the file will be written with a '.new' suffix. -This behavior can be suppressed with the C<-nonew> option. +This behavior can be suppressed with the C<-force> option. =head1 AUTHOR @@ -985,7 +996,7 @@ it under the same terms as Perl itself. =cut __package__ -[% startperl %] -w +[% startperl %] use strict; use Getopt::Long; @@ -997,7 +1008,7 @@ my $classes = ''; my $engine = 'CGI'; my $help = 0; my $multiarch = 0; -my $par = '[% appprefix %].par'; +my $output = '[% appprefix %].par'; GetOptions( 'classes=s' => \$classes, @@ -1005,7 +1016,7 @@ GetOptions( 'engine=s' => \$engine, 'help|?' => \$help, 'multiarch' => \$multiarch, - 'par=s' => \$par + 'output=s' => \$output ); pod2usage(1) if $help; @@ -1014,8 +1025,8 @@ Catalyst::PAR->new->package( { classes => $classes, core => $core, engine => $engine, - par => $par, multiarch => $multiarch, + output => $output, class => '[% name %]' } ); @@ -1023,7 +1034,7 @@ Catalyst::PAR->new->package( { =head1 NAME -[% appprefix %]_package.pl - Package a Catalyst application +[% appprefix %]_package.pl - Package Catalyst Applications =head1 SYNOPSIS @@ -1036,12 +1047,12 @@ Catalyst::PAR->new->package( { -engine engine to use for dependency detection (defaults to CGI) -help display this help and exits -multiarch enable multiarch support (defaults to false) - -par name for the par archive (defaults to [% appprefix %].par) + -output name for the par archive (defaults to [% appprefix %].par) Examples: [% appprefix %]_package.pl -engine FastCGI - [% appprefix %]_package.pl -par foo_linux_i386_apache2.par -engine Apache2 - [% appprefix %]_package.pl -classes Test::More,Foo::Bar -par foo.par + [% appprefix %]_package.pl -o foo_linux_i386_apache2.par -engine Apache2 + [% appprefix %]_package.pl -classes Test::More,Foo::Bar -o foo.par See also: perldoc Catalyst::Manual @@ -1050,7 +1061,7 @@ Catalyst::PAR->new->package( { =head1 DESCRIPTION -Package a Catalyst application with L. +Package Catalyst Applications with L. =head1 AUTHOR @@ -1085,12 +1096,10 @@ Catalyst [% long_type %]. [% IF long_type == 'Controller' %] =head1 METHODS -=over 4 - # # Uncomment and modify this or add new actions to fit your needs # -#=item default +#=head2 default # #=cut # @@ -1101,8 +1110,6 @@ Catalyst [% long_type %]. # $c->response->body('[% class %] is on Catalyst!'); #} -=back - [% END %] =head1 AUTHOR