File: Server.pm

package info (click to toggle)
lemonldap-ng 1.9.7-3%2Bdeb9u2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 39,024 kB
  • sloc: perl: 37,552; makefile: 922; sh: 472; sql: 5
file content (33 lines) | stat: -rw-r--r-- 998 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package Lemonldap::NG::Handler::API::PSGI::Server;

use strict;

use base 'Lemonldap::NG::Handler::API::PSGI';

*cgiName       = *Lemonldap::NG::Handler::API::PSGI::cgiName;
*uri_with_args = *Lemonldap::NG::Handler::API::PSGI::uri_with_args;

# In server mode, headers are not passed to a PSGI application but returned
# to the server

## @method void set_header_in(hash headers)
# sets or modifies request headers
# @param headers hash containing header names => header value
sub set_header_in {
    my ( $class, %headers ) = @_;
    for my $k ( keys %headers ) {
        $Lemonldap::NG::Handler::API::PSGI::request->{ cgiName($k) } =
          $Lemonldap::NG::Handler::API::PSGI::request->{respHeaders}->{$k} =
          $headers{$k};
    }
}

sub unset_header_in {
    my ( $class, $header ) = @_;
    delete $Lemonldap::NG::Handler::API::PSGI::request->{respHeaders}
      ->{$header};
    $header =~ s/-/_/g;
    delete $Lemonldap::NG::Handler::API::PSGI::request->{ cgiName($header) };
}

1;