Added DBIx::Class::WebForm
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Utils.pm
index c76a247..8fe7043 100644 (file)
@@ -1,7 +1,6 @@
 package Catalyst::Utils;
 
 use strict;
-use attributes ();
 use Catalyst::Exception;
 use File::Spec;
 use HTTP::Request;
@@ -24,7 +23,9 @@ See L<Catalyst>.
 
 =item appprefix($class)
 
-Returns the application prefix for the class
+Returns the application prefix for the class.
+
+       MyApp::Foo becomes myapp_foo
 
 =cut
 
@@ -35,14 +36,6 @@ sub appprefix {
     return $class;
 }
 
-=item attrs($coderef)
-
-Returns attributes for coderef in a arrayref
-
-=cut
-
-sub attrs { attributes::get( $_[0] ) || [] }
-
 =item class2appclass($class);
 
 Returns the appclass for class.
@@ -205,23 +198,26 @@ sub prefix {
     return $name;
 }
 
-=item reflect_actions($class);
+=item request($request)
 
-Returns an arrayref containing all actions of a component class.
+Returns a HTTP::Request object.
 
 =cut
 
-sub reflect_actions {
-    my $class   = shift;
-    my $actions = [];
-    eval '$actions = $class->_action_cache';
-
-    if ($@) {
-        Catalyst::Exception->throw( message =>
-              qq/Couldn't reflect actions of component "$class", "$@"/ );
+sub request {
+    my $request = shift;
+    unless ( ref $request ) {
+        if ( $request =~ m/http/i ) {
+            $request = URI->new($request)->canonical;
+        }
+        else {
+            $request = URI->new( 'http://localhost' . $request )->canonical;
+        }
     }
-
-    return $actions;
+    unless ( ref $request eq 'HTTP::Request' ) {
+        $request = HTTP::Request->new( 'GET', $request );
+    }
+    return $request;
 }
 
 =back