File Coverage

blib/lib/Apache/Emulator/Apache/Constants.pm
Criterion Covered Total %
statement 63 70 90.0
branch n/a
condition n/a
subroutine 21 28 75.0
pod 0 7 0.0
total 84 105 80.0


line stmt bran cond sub pod time code
1             package Apache::Emulator::Apache::Constants;
2             package Apache::Constants;
3 1     1   858 use strict;
  1         2  
  1         31  
4 1     1   4 use vars qw (%EXPORT_TAGS @EXPORT_OK $EXPORT @ISA);
  1         1  
  1         248  
5             require Exporter;
6             @ISA = qw(Exporter);
7              
8             my @common = qw(OK
9             DECLINED
10             DONE
11             NOT_FOUND
12             FORBIDDEN
13             AUTH_REQUIRED
14             SERVER_ERROR);
15              
16 0     0 0   sub OK { 0 }
17 0     0 0   sub DECLINED { -1 }
18 0     0 0   sub DONE { -2 }
19 0     0 0   sub NOT_FOUND { 404 }
20 0     0 0   sub FORBIDDEN { 403 }
21 0     0 0   sub AUTH_REQUIRED { 401 }
22 0     0 0   sub SERVER_ERROR { 500 }
23              
24             my(@methods) = qw(M_CONNECT
25             M_DELETE
26             M_GET
27             M_INVALID
28             M_OPTIONS
29             M_POST
30             M_PUT
31             M_TRACE
32             M_PATCH
33             M_PROPFIND
34             M_PROPPATCH
35             M_MKCOL
36             M_COPY
37             M_MOVE
38             M_LOCK
39             M_UNLOCK
40             METHODS);
41              
42             my(@options) = qw(OPT_NONE OPT_INDEXES OPT_INCLUDES
43             OPT_SYM_LINKS OPT_EXECCGI OPT_UNSET OPT_INCNOEXEC
44             OPT_SYM_OWNER OPT_MULTI OPT_ALL);
45              
46             my(@server) = qw(MODULE_MAGIC_NUMBER
47             SERVER_VERSION SERVER_BUILT);
48              
49             my(@response) = qw(DOCUMENT_FOLLOWS
50             MOVED
51             REDIRECT
52             USE_LOCAL_COPY
53             BAD_REQUEST
54             BAD_GATEWAY
55             RESPONSE_CODES
56             NOT_IMPLEMENTED
57             NOT_AUTHORITATIVE
58             CONTINUE);
59              
60             #define DOCUMENT_FOLLOWS HTTP_OK
61             #define PARTIAL_CONTENT HTTP_PARTIAL_CONTENT
62             #define MULTIPLE_CHOICES HTTP_MULTIPLE_CHOICES
63             #define MOVED HTTP_MOVED_PERMANENTLY
64             #define REDIRECT HTTP_MOVED_TEMPORARILY
65             #define USE_LOCAL_COPY HTTP_NOT_MODIFIED
66             #define BAD_REQUEST HTTP_BAD_REQUEST
67             #define AUTH_REQUIRED HTTP_UNAUTHORIZED
68             #define FORBIDDEN HTTP_FORBIDDEN
69             #define NOT_FOUND HTTP_NOT_FOUND
70             #define METHOD_NOT_ALLOWED HTTP_METHOD_NOT_ALLOWED
71             #define NOT_ACCEPTABLE HTTP_NOT_ACCEPTABLE
72             #define LENGTH_REQUIRED HTTP_LENGTH_REQUIRED
73             #define PRECONDITION_FAILED HTTP_PRECONDITION_FAILED
74             #define SERVER_ERROR HTTP_INTERNAL_SERVER_ERROR
75             #define NOT_IMPLEMENTED HTTP_NOT_IMPLEMENTED
76             #define BAD_GATEWAY HTTP_BAD_GATEWAY
77             #define VARIANT_ALSO_VARIES HTTP_VARIANT_ALSO_VARIES
78              
79             my(@satisfy) = qw(SATISFY_ALL SATISFY_ANY SATISFY_NOSPEC);
80              
81             my(@remotehost) = qw(REMOTE_HOST
82             REMOTE_NAME
83             REMOTE_NOLOOKUP
84             REMOTE_DOUBLE_REV);
85              
86 1     1   5 use constant REMOTE_HOST => 0;
  1         2  
  1         81  
87 1     1   6 use constant REMOTE_NAME => 1;
  1         1  
  1         55  
88 1     1   6 use constant REMOTE_NOLOOKUP => 2;
  1         2  
  1         47  
89 1     1   5 use constant REMOTE_DOUBLE_REV => 3;
  1         1  
  1         61  
90              
91             my(@http) = qw(HTTP_OK
92             HTTP_MOVED_TEMPORARILY
93             HTTP_MOVED_PERMANENTLY
94             HTTP_METHOD_NOT_ALLOWED
95             HTTP_NOT_MODIFIED
96             HTTP_UNAUTHORIZED
97             HTTP_FORBIDDEN
98             HTTP_NOT_FOUND
99             HTTP_BAD_REQUEST
100             HTTP_INTERNAL_SERVER_ERROR
101             HTTP_NOT_ACCEPTABLE
102             HTTP_NO_CONTENT
103             HTTP_PRECONDITION_FAILED
104             HTTP_SERVICE_UNAVAILABLE
105             HTTP_VARIANT_ALSO_VARIES);
106              
107 1     1   4 use constant HTTP_OK => 200;
  1         2  
  1         37  
108 1     1   9 use constant HTTP_MOVED_TEMPORARILY => 302;
  1         2  
  1         45  
109 1     1   3 use constant HTTP_MOVED_PERMANENTLY => 301;
  1         2  
  1         40  
110 1     1   4 use constant HTTP_METHOD_NOT_ALLOWED => 405;
  1         1  
  1         29  
111 1     1   4 use constant HTTP_NOT_MODIFIED => 304;
  1         6  
  1         34  
112 1     1   4 use constant HTTP_UNAUTHORIZED => 401;
  1         1  
  1         35  
113 1     1   3 use constant HTTP_FORBIDDEN => 403;
  1         2  
  1         32  
114 1     1   5 use constant HTTP_NOT_FOUND => 404;
  1         1  
  1         32  
115 1     1   4 use constant HTTP_BAD_REQUEST => 400;
  1         2  
  1         34  
116 1     1   5 use constant HTTP_INTERNAL_SERVER_ERROR => 500;
  1         1  
  1         45  
117 1     1   5 use constant HTTP_NOT_ACCEPTABLE => 406;
  1         1  
  1         35  
118 1     1   4 use constant HTTP_NO_CONTENT => 204;
  1         2  
  1         63  
119 1     1   5 use constant HTTP_PRECONDITION_FAILED => 412;
  1         1  
  1         39  
120 1     1   4 use constant HTTP_SERVICE_UNAVAILABLE => 503;
  1         2  
  1         28  
121 1     1   4 use constant HTTP_VARIANT_ALSO_VARIES => 506;
  1         1  
  1         167  
122              
123             my(@config) = qw(DECLINE_CMD);
124             my(@types) = qw(DIR_MAGIC_TYPE);
125             my(@override) = qw(
126             OR_NONE
127             OR_LIMIT
128             OR_OPTIONS
129             OR_FILEINFO
130             OR_AUTHCFG
131             OR_INDEXES
132             OR_UNSET
133             OR_ALL
134             ACCESS_CONF
135             RSRC_CONF);
136             my(@args_how) = qw(
137             RAW_ARGS
138             TAKE1
139             TAKE2
140             ITERATE
141             ITERATE2
142             FLAG
143             NO_ARGS
144             TAKE12
145             TAKE3
146             TAKE23
147             TAKE123);
148              
149             my $rc = [@common, @response];
150              
151             %EXPORT_TAGS = (
152             common => \@common,
153             config => \@config,
154             response => $rc,
155             http => \@http,
156             options => \@options,
157             methods => \@methods,
158             remotehost => \@remotehost,
159             satisfy => \@satisfy,
160             server => \@server,
161             types => \@types,
162             args_how => \@args_how,
163             override => \@override,
164             #deprecated
165             response_codes => $rc,
166             );
167              
168             @EXPORT_OK = (
169             @response,
170             @http,
171             @options,
172             @methods,
173             @remotehost,
174             @satisfy,
175             @server,
176             @config,
177             @types,
178             @args_how,
179             @override,
180             );
181              
182             *EXPORT = \@common;
183              
184             1;
185              
186