--- parser3/src/include/pa_request_charsets.h 2003/03/20 08:11:13 1.1.2.3.2.2 +++ parser3/src/include/pa_request_charsets.h 2015/10/26 01:21:56 1.7 @@ -1,16 +1,18 @@ /** @file Parser: request charsets class decl. - Copyright (c) 2001-2003 ArtLebedev Group (http://www.artlebedev.com) + Copyright (c) 2001-2015 Art. Lebedev Studio (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) */ #ifndef PA_REQUEST_CHARSETS_H #define PA_REQUEST_CHARSETS_H -static const char* IDENT_REQUEST_CHARSETS_H="$Date: 2003/03/20 08:11:13 $"; +#define IDENT_PA_REQUEST_CHARSETS_H "$Id: pa_request_charsets.h,v 1.7 2015/10/26 01:21:56 moko Exp $" class Request_charsets { + friend class Temp_client_charset; + Charset *fsource; Charset *fclient; Charset *fmail; @@ -28,4 +30,19 @@ public: Charset& mail() const { return *fmail; } void set_mail(Charset& amail) { fmail=&amail; } }; +class Temp_client_charset { + Request_charsets& fcharsets; + Charset &fclient; +public: + + Temp_client_charset(Request_charsets& acharsets, Charset& aclient): + fcharsets(acharsets), + fclient(acharsets.client()) { + fcharsets.set_client(aclient); + } + ~Temp_client_charset(){ + fcharsets.set_client(fclient); + } +}; + #endif