Annotation of parser3/src/types/pa_vrequest.C, revision 1.12
1.2 paf 1: /** @file
1.5 paf 2: Parser: @b request class.
1.2 paf 3:
1.1 paf 4: Copyright(c) 2001 ArtLebedev Group(http://www.artlebedev.com)
1.11 paf 5: Author: Alexander Petrosyan <paf@design.ru>(http://paf.design.ru)
1.2 paf 6:
1.12 ! paf 7: $Id: pa_vrequest.C,v 1.11 2001/11/05 11:46:33 paf Exp $
1.1 paf 8: */
9:
10: #include "pa_vrequest.h"
11: #include "pa_request.h"
12:
1.7 parser 13: // request: CLASS,method,field
1.12 ! paf 14: Value *VRequest::get_element(const String& name) {
! 15: // $charset
! 16: if(name==CHARSET_NAME)
! 17: return NEW VString(pool().get_charset());
! 18: else {
! 19: // $query $uri
! 20: const char *cstr=0;
! 21: if(name=="query")
! 22: cstr=frequest.info.query_string;
! 23: else if(name=="uri")
! 24: cstr=frequest.info.uri;
! 25:
! 26: String& string=*NEW String(pool());
! 27: string.APPEND_TAINTED(cstr?cstr:"", 0, "request", 0);
! 28: return NEW VString(string);
! 29: }
1.1 paf 30: }
31:
1.12 ! paf 32: void VRequest::put_element(const String& name, Value *value) {
! 33: // guard charset change
! 34: if(name==CHARSET_NAME)
! 35: pool().set_charset(value->as_string());
! 36: else
! 37: Value::put_element(name, value);
! 38: }
E-mail: