[Jifty-commit] r6011 - in jifty/trunk: lib/Jifty/Plugin
Jifty commits
jifty-commit at lists.jifty.org
Mon Nov 17 19:43:25 EST 2008
Author: sartak
Date: Mon Nov 17 19:43:24 2008
New Revision: 6011
Modified:
jifty/trunk/ (props changed)
jifty/trunk/lib/Jifty/Plugin/Chart.pm
Log:
r75692 at onn: sartak | 2008-11-17 19:43:17 -0500
Allow renderers with :: in their name
Modified: jifty/trunk/lib/Jifty/Plugin/Chart.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Plugin/Chart.pm (original)
+++ jifty/trunk/lib/Jifty/Plugin/Chart.pm Mon Nov 17 19:43:24 2008
@@ -135,26 +135,31 @@
}
# Prepend Jifty::Plugin::Chart::Renderer:: if we think we need to
- if ( $renderer_class !~ /::/ ) {
- $renderer_class = __PACKAGE__.'::Renderer::'.$renderer_class;
- }
-
- # Check to see if we already loaded this one
- my $renderer = $self->renderers->{ $renderer_class };
- return $renderer if defined $renderer;
-
- # Tell perl to load the class
- $renderer_class->require
- or warn $@;
+ my @renderer_classes = (
+ $renderer_class,
+ __PACKAGE__ . '::Renderer::' . $renderer_class,
+ );
+
+ for my $renderer_class (@renderer_classes) {
+ # Check to see if we already loaded this one
+ my $renderer = $self->renderers->{ $renderer_class };
+ return $renderer if defined $renderer;
+
+ # Tell perl to load the class
+ unless ($renderer_class->require) {
+ warn $@ unless $@ =~ /^Can't locate /;
+ next;
+ }
- # Initialize the renderer
- $renderer = $renderer_class->new( %{ $self->plugin_args } );
+ # Initialize the renderer
+ $renderer = $renderer_class->new( %{ $self->plugin_args } );
- # Remember it
- $self->renderers->{ $renderer_class } = $renderer;
+ # Remember it
+ $self->renderers->{ $renderer_class } = $renderer;
- # Return it!
- return $renderer;
+ # Return it!
+ return $renderer;
+ }
}
=head1 SEE ALSO
More information about the Jifty-commit
mailing list