Annotation of parser3/src/include/pa_sapi.h, revision 1.22.2.8.2.5

1.1       paf         1: /** @file
                      2:        Parser: web server api interface object decl.
                      3: 
1.22.2.4  paf         4:        Copyright (c) 2001-2003 ArtLebedev Group (http://www.artlebedev.com)
1.18      paf         5:        Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1       paf         6: */
                      7: 
                      8: #ifndef PA_SAPI_H
                      9: #define PA_SAPI_H
1.20      paf        10: 
1.22.2.8.2.5! paf        11: static const char* IDENT_SAPI_H="$Date: 2003/03/24 09:39:55 $";
1.22.2.2  paf        12: 
                     13: // includes
1.1       paf        14: 
1.22.2.8.2.1  paf        15: 
1.1       paf        16: #include "pa_types.h"
1.22.2.6  paf        17: #include "pa_array.h"
1.22.2.2  paf        18: 
                     19: // forwards
1.22.2.1  paf        20: class SAPI_Info;
1.5       paf        21: 
1.4       paf        22: /// target web-Server API
1.1       paf        23: struct SAPI {
1.5       paf        24:        /// log error message
1.22.2.4  paf        25:        static void log(SAPI_Info& info, const char* fmt, ...);
1.22.2.8  paf        26:        /// log error message & exit
1.22.2.4  paf        27:        static void die(const char* fmt, ...);
1.22.2.8  paf        28:        /// log error message & abort[write core]
                     29:        static void abort(const char* fmt, ...);
1.19      paf        30:        /// environment strings
1.22.2.8.2.5! paf        31:        static const char* const* environment(SAPI_Info& info);
1.12      parser     32:        /// get environment string
1.22.2.8.2.1  paf        33:        static char* get_env(SAPI_Info& info, const char* name);
1.1       paf        34:        /// read POST request bytes
1.22.2.1  paf        35:        static size_t read_post(SAPI_Info& info, char *buf, size_t max_bytes);
1.12      parser     36:        /// add response header attribute [but do not send it to client]
1.22.2.5  paf        37:        static void add_header_attribute(SAPI_Info& info, 
                     38:                const char* dont_store_key, const char* dont_store_value);
1.12      parser     39:        /// send collected header attributes to client
1.22.2.1  paf        40:        static void send_header(SAPI_Info& info);
1.1       paf        41:        /// output body bytes
1.22.2.1  paf        42:        static void send_body(SAPI_Info& info, const void *buf, size_t size);
1.1       paf        43: };
                     44: 
                     45: #endif

E-mail: