1 #!/usr/bin/perl -- Just for the fscking colors.
3 package PLP::Headers; # Who cares.
14 return bless [ # Defaults.
16 'Content-Type' => 'text/html',
17 'X-PLP-Version' => $ENV{PLP_VERSION},
20 'content-type' => 'Content-Type',
21 'x-plp-version' => 'X-PLP-Version',
27 my ($self, $key) = @_;
28 return $self->[0]->{ $self->[1]->{_lc $key} };
32 my ($self, $key, $value) = @_;
33 croak 'Can\'t set headers after sending them!' if $main::INTERNAL{sentheaders};
34 if (defined $self->[1]->{_lc $key}){
35 $key = $self->[1]->{_lc $key};
37 $self->[1]->{lc $key} = $key;
39 return ($self->[0]->{$key} = $value);
43 my ($self, $key) = @_;
44 delete $self->[0]->{$key};
45 return delete $self->[1]->{_lc $key};
54 my ($self, $key) = @_;
55 return exists $self->[1]->{_lc $key};
61 return each %{ $self->[0] }; # Key only, Tie::Hash doc is wrong.
65 return each %{ $_[0]->[0] };
72 return bless {}, $_[0];
78 my ($self, @param) = @_;
79 main::SendHeaders() unless $main::INTERNAL{sentheaders};
84 my ($self, @param) = @_;
90 sub READLINE { undef }
105 %{$self->[0]} = %{ $self->[1]->() };
109 my ($class, $hash, $source) = @_;
110 return bless [$hash, $source], $class;
114 my ($self, $key) = @_;
116 return ${$self->[0]}{$key};
120 my ($self, $key, $value) = @_;
122 return ${$self->[0]}{$key} = $value;
126 my ($self, $key) = @_;
128 return delete ${$self->[0]}{key};
134 return %{$self->[0]};
138 my ($self, $key) = @_;
140 return exists ${$self->[0]}{key};
146 return exists ${$self->[0]}{key};
152 return 'PLPdummy'; # perl won't use the first key's value,