Annotation of parser3/src/include/pa_sapi.h, revision 1.7
1.1 paf 1: /** @file
2: Parser: web server api interface object decl.
3:
4: Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
5:
6: Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf)
7:
1.7 ! paf 8: $Id: pa_sapi.h,v 1.6 2001/04/09 09:48:18 paf Exp $
1.1 paf 9: */
10:
11: #ifndef PA_SAPI_H
12: #define PA_SAPI_H
13:
14: #include "pa_pool.h"
15: #include "pa_types.h"
16:
1.5 paf 17: class Array;
18: class String;
19: class Hash;
20:
1.4 paf 21: /// target web-Server API
1.1 paf 22: struct SAPI {
1.5 paf 23: /// log error message
24: static void log(Pool& pool, const char *fmt, ...);
25: ///
1.1 paf 26: static const char *get_env(Pool& pool, const char *name);
27: /// read POST request bytes
1.6 paf 28: static size_t read_post(Pool& pool, char *buf, size_t max_bytes);
1.1 paf 29: /// add response header attribute
30: static void add_header_attribute(Pool& pool, const char *key, const char *value);
31: /// add response header attribute
32: static void send_header(Pool& pool);
33: /// output body bytes
1.3 paf 34: static void send_body(Pool& pool, const void *buf, size_t size);
1.5 paf 35: /// @return exit_status
1.7 ! paf 36: static int execute(Pool& pool,
! 37: const String& file_spec,
1.5 paf 38: const Hash *env,
39: const Array *argv,
40: const String& in, String& out, String& err);
1.1 paf 41: };
42:
43: #endif
E-mail: