[Jifty-commit] r507 - jifty/trunk/lib/Jifty
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Sat Jan 14 14:39:40 EST 2006
Author: jesse
Date: Sat Jan 14 14:39:40 2006
New Revision: 507
Modified:
/ (props changed)
jifty/trunk/lib/Jifty/ClassLoader.pm
jifty/trunk/lib/Jifty/Notification.pm
jifty/trunk/lib/Jifty/Script/Action.pm
jifty/trunk/lib/Jifty/Script/Model.pm
Log:
r22407 at truegrounds: jesse | 2006-01-14 14:37:40 -0500
Better support for apps named Foo::Bar or Foo-Bar instead of FooBar
Modified: jifty/trunk/lib/Jifty/ClassLoader.pm
==============================================================================
--- jifty/trunk/lib/Jifty/ClassLoader.pm (original)
+++ jifty/trunk/lib/Jifty/ClassLoader.pm Sat Jan 14 14:39:40 2006
@@ -92,10 +92,15 @@
return undef unless ( $module and $ApplicationClassPrefix );
- if ( $module =~ m!^($ApplicationClassPrefix)(\.pm)?$! ) {
+ # Canonicalize $module to :: style rather than / and .pm style;
+
+ $module =~ s/.pm$//;
+ $module =~ s{/}{::}g;
+
+ if ( $module =~ m!^($ApplicationClassPrefix)$! ) {
return $self->return_class( "use warnings; use strict; package " . $ApplicationClassPrefix . ";\n"." 1;" );
}
- elsif ( $module =~ m!^(?:$ApplicationClassPrefix)(?:/|::)(Record|Collection|Notification|Dispatcher)(\.pm)?$! ) {
+ elsif ( $module =~ m!^(?:$ApplicationClassPrefix)::(Record|Collection|Notification|Dispatcher)$! ) {
return $self->return_class( "use warnings; use strict; package " . $ApplicationClassPrefix . "::". $1.";\n".
"use base qw/Jifty::$1/; sub _autogenerated { 1 };\n"."1;" );
}
@@ -104,7 +109,7 @@
return $self->return_class( "package " . $CurrentUserClass . ";\n" . "use base 'Jifty::CurrentUser';\n" . " 1;" );
}
elsif ( $module
- =~ m!^($ApplicationClassPrefix)(?:/|::)Model(?:/|::)([^:]+)Collection(\.pm)?$!
+ =~ m!^($ApplicationClassPrefix)::Model::([^:]+)Collection$!
)
{
@@ -116,7 +121,7 @@
);
} elsif ( $module
- =~ m!^($ApplicationClassPrefix)(?:/|::)Action(?:/|::)(Create|Update|Delete)([^\.:]+)(\.pm)?$!
+ =~ m!^($ApplicationClassPrefix)::Action::(Create|Update|Delete)([^\.:]+)$!
)
{
Modified: jifty/trunk/lib/Jifty/Notification.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Notification.pm (original)
+++ jifty/trunk/lib/Jifty/Notification.pm Sat Jan 14 14:39:40 2006
@@ -41,6 +41,11 @@
my %args = @_;
+ # initialize message bits to avoid 'undef' warnings
+ for (qw(body preface footer subject)) {
+ $self->$_('');
+ }
+
while (my ($arg, $value) = each %args) {
if ($self->can($arg)) {
$self->$arg($value);
@@ -73,13 +78,13 @@
sub send_one_message {
my $self = shift;
- return unless $self->recipients;
+ return unless my @recipients = $self->recipients;
my $message = Email::Simple->create(
header => [
- From => $self->from,
- To => (join ', ', $self->recipients),
- Subject => $self->subject,
+ From => $self->from || 'A Jifty Application <nobody>',
+ To => join (', ', @recipients),
+ Subject => $self->subject || 'No subject',
],
body => join ("\n", $self->preface, $self->body, $self->footer)
);
@@ -123,7 +128,7 @@
sub recipients {
my $self = shift;
$self->_recipients([@_]) if @_;
- return @{ $self->_recipients || [] };
+ return @{ $self->_recipients };
}
Modified: jifty/trunk/lib/Jifty/Script/Action.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Script/Action.pm (original)
+++ jifty/trunk/lib/Jifty/Script/Action.pm Sat Jan 14 14:39:40 2006
@@ -62,7 +62,7 @@
Jifty->new( no_handle => 1 );
my $root = Jifty::Util->app_root;
my $appclass = Jifty->config->framework("ApplicationClass");
- my $path = "$root/lib/$appclass/Action/$action.pm";
+ my $appclass_path = File::Spec->catfile(split(/::/,Jifty->config->framework("ApplicationClass")));
my $actionFile = <<"EOT";
use strict;
@@ -115,7 +115,7 @@
my $testFile = <<"EOT";
-#!/usr/bin/perl -w
+#!/usr/bin/perl
use warnings;
use strict;
@@ -132,7 +132,7 @@
EOT
- $self->_write("$root/lib/$appclass/Action/$action.pm" => $actionFile,
+ $self->_write("$root/lib/$appclass_path/Action/$action.pm" => $actionFile,
"$root/t/00-action-$action.t" => $testFile,
);
}
Modified: jifty/trunk/lib/Jifty/Script/Model.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Script/Model.pm (original)
+++ jifty/trunk/lib/Jifty/Script/Model.pm Sat Jan 14 14:39:40 2006
@@ -61,7 +61,7 @@
Jifty->new( no_handle => 1 );
my $root = Jifty::Util->app_root;
my $appclass = Jifty->config->framework("ApplicationClass");
- my $path = "$root/lib/$appclass/Model/$model.pm";
+ my $appclass_path = File::Spec->catfile(split (/::/, $appclass));
my $modelFile = <<"EOT";
package @{[$appclass]}::Model::@{[$model]}::Schema;
@@ -81,7 +81,7 @@
my $testFile = <<"EOT";
-#!/usr/bin/perl -w
+#!/usr/bin/perl
use warnings;
use strict;
@@ -132,7 +132,7 @@
EOT
- $self->_write("$root/lib/$appclass/Model/$model.pm" => $modelFile,
+ $self->_write("$root/lib/$appclass_path/Model/$model.pm" => $modelFile,
"$root/t/00-model-$model.t" => $testFile,
);
}
More information about the Jifty-commit
mailing list