Annotation of parser3/src/classes/memcached.C, revision 1.1
1.1 ! moko 1: /** @file
! 2: Parser: memcached class.
! 3:
! 4: Copyright (c) 2001-2012 Art. Lebedev Studio (http://www.artlebedev.com)
! 5: Authors:
! 6: Ivan Poluyanov <ivan-poluyanov@yandex.ru>
! 7: Artem Stepanov <timofei1394@thesecure.in>
! 8: */
! 9:
! 10: #include "pa_vmethod_frame.h"
! 11:
! 12: #include "pa_request.h"
! 13: #include "pa_vstring.h"
! 14: #include "pa_vmemcached.h"
! 15:
! 16: volatile const char * IDENT_MEMCACHED_C="$Id: memcached.C,v 1.9 2012-03-16 09:24:07 moko Exp $";
! 17:
! 18: class MMemcached: public Methoded {
! 19: public: // VStateless_class
! 20: Value* create_new_value(Pool&) { return new VMemcached(); }
! 21: public:
! 22: MMemcached();
! 23: };
! 24:
! 25: DECLARE_CLASS_VAR(memcached, new MMemcached, 0);
! 26:
! 27: static void _open(Request& r, MethodParams& params) {
! 28: const String& connect_string=params.as_string(0, "connection string must be string");
! 29: VMemcached& self=GET_SELF(r, VMemcached);
! 30: self.open(connect_string);
! 31: }
! 32:
! 33: static void _delete(Request& r, MethodParams& params) {
! 34: const String& key=params.as_string(0, "key must be string");
! 35:
! 36: VMemcached& self=GET_SELF(r, VMemcached);
! 37: self.remove(key);
! 38: }
! 39:
! 40: MMemcached::MMemcached() : Methoded("memcached") {
! 41: add_native_method("open", Method::CT_DYNAMIC, _open, 1, 1);
! 42: add_native_method("delete", Method::CT_DYNAMIC, _delete, 1, 1);
! 43: }
E-mail: