summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2012-07-22 15:00:04 -0500
committerJesse Luehrs <doy@tozt.net>2012-07-22 15:00:04 -0500
commit4fb535c843c19862eb49bf196e32a37ff6aa84c9 (patch)
treeb819b5a933b5937280dee5b066cd4b4dd0784bef /lib
parentfe96b02a26a13b9f3172faa474f0c791036722e0 (diff)
downloadweb-request-4fb535c843c19862eb49bf196e32a37ff6aa84c9.tar.gz
web-request-4fb535c843c19862eb49bf196e32a37ff6aa84c9.zip
move this to a builder
Diffstat (limited to 'lib')
-rw-r--r--lib/Web/Request.pm16
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/Web/Request.pm b/lib/Web/Request.pm
index ecc5e26..e2173e9 100644
--- a/lib/Web/Request.pm
+++ b/lib/Web/Request.pm
@@ -365,7 +365,7 @@ has all_uploads => (
has encoding => (
is => 'rw',
isa => 'Str',
- default => 'iso-8859-1',
+ builder => 'default_encoding',
trigger => sub {
my $self = shift;
$self->_clear_encoding_obj;
@@ -400,9 +400,6 @@ sub new_from_request {
return $class->new_from_env(HTTP::Message::PSGI::req_to_psgi($req));
}
-sub response_class { 'Web::Response' }
-sub upload_class { 'Web::Request::Upload' }
-
sub new_response {
my $self = shift;
@@ -454,6 +451,10 @@ sub param {
$self->parameters->{$key};
}
+sub response_class { 'Web::Response' }
+sub upload_class { 'Web::Request::Upload' }
+sub default_encoding { 'iso8859-1' }
+
__PACKAGE__->meta->make_immutable;
no Moose;
@@ -480,7 +481,7 @@ A L<PSGI> environment hashref.
=item encoding
The encoding to use for decoding all input in the request. Defaults to
-'iso-8859-1'.
+the value of C<default_encoding>.
=back
@@ -670,6 +671,11 @@ Returns the name of the class to use when creating a new upload object for
C<uploads> or C<all_uploads>. Defaults to L<Web::Request::Upload>. This can be
overridden in a subclass.
+=method default_encoding
+
+Returns the name of the default encoding to use for C<encode> and C<decode>.
+Defaults to iso8859-1. This can be overridden in a subclass.
+
=head1 BUGS
No known bugs.