Tripletail
view release on metacpan or search on metacpan
lib/Tripletail/Filter.pm view on Meta::CPAN
# -----------------------------------------------------------------------------
# Tripletail::Filter - CGIåºåå å·¥
# -----------------------------------------------------------------------------
package Tripletail::Filter;
use strict;
use warnings;
use Tripletail;
1;
sub _new {
my $class = shift;
my $this = bless {} => $class;
# æ¢ã«ããããåºåãããã©ãã
$this->{header_flushed} = undef;
# ç½®æããããã(setHeaderã§è¨å®ããããã®)
$this->{replacement} = {}; # {ãã¼ => å¤}
# 追å ããããã(addHeaderã§è¨å®ããããã®)
$this->{addition} = {}; # {ãã¼ => [å¤, ...]}
$this->{option} = { @_ };
$this;
}
sub setHeader {
my $this = shift;
my $key = shift;
my $value = shift;
if(!defined($key)) {
die __PACKAGE__."#setHeader: arg[1] is not defined. (第1弿°ãæå®ããã¦ãã¾ãã)\n";
} elsif(ref($key)) {
die __PACKAGE__."#setHeader: arg[1] is a reference. [$key] (第1弿°ããªãã¡ã¬ã³ã¹ã§ã)\n";
}
if(!defined($value)) {
die __PACKAGE__."#setHeader: arg[2] is not defined. (第1弿°ãæå®ããã¦ãã¾ãã)\n";
} elsif(ref($value)) {
die __PACKAGE__."#setHeader: arg[2] is a reference. [$value] (第1弿°ããªãã¡ã¬ã³ã¹ã§ã)\n";
}
$this->{replacement}{$key} = $value;
$this;
}
sub addHeader {
my $this = shift;
my $key = shift;
my $value = shift;
if(!defined($key)) {
die __PACKAGE__."#addHeader: arg[1] is not defined. (第1弿°ãæå®ããã¦ãã¾ãã)\n";
} elsif(ref($key)) {
die __PACKAGE__."#addHeader: arg[1] is a reference. [$key] (第1弿°ããªãã¡ã¬ã³ã¹ã§ã)\n";
}
if(!defined($value)) {
die __PACKAGE__."#addHeader: arg[2] is not defined. (第2弿°ãæå®ããã¦ãã¾ãã)\n";
} elsif(ref($value)) {
die __PACKAGE__."#addHeader: arg[2] is a reference. [$value] (第2弿°ããªãã¡ã¬ã³ã¹ã§ã)\n";
}
my $old = $this->{addition}{$key};
if($old) {
push @$old, $value;
} else {
$this->{addition}{$key} = [$value];
}
( run in 1.680 second using v1.01-cache-2.11-cpan-751830e7986 )