#pragma interface #ifndef TLMPWEBSQL_H #define TLMPWEBSQL_H //#include #include #define _TLMP_websession_sql ___v1 struct WEBSESSION_SQL_INFO { const char *user; time_t lastaccess; time_t since; // How many seconds since lastaccess const char *realm; }; struct _F_websession_sql{ void logout(); #define _F_websession_sql_auth(nom) bool nom auth(WEBSESSION_SQL_INFO &info, const char *passwd) virtual _F_websession_sql_auth( ); #define _F_websession_sql_exec(nom) void nom exec(WEBSESSION_SQL_INFO &info) virtual _F_websession_sql_exec( )=0; }; struct _F_websession_sql___v1{ class _F_websession_sql___v1_private *priv; void logout(); #define _F_websession_sql___v1_validsession(nom) void nom validsession(WEBSESSION_SQL_INFO &info, bool &reject) virtual _F_websession_sql___v1_validsession( ); #define _F_websession_sql___v1_nosession(nom) void nom nosession(WEBSESSION_SQL_INFO &info) virtual _F_websession_sql___v1_nosession( ); #define _F_websession_sql___v1_auth(nom) bool nom auth(WEBSESSION_SQL_INFO &info, const char *passwd) virtual _F_websession_sql___v1_auth( ); #define _F_websession_sql___v1_exec(nom) void nom exec(WEBSESSION_SQL_INFO &info) virtual _F_websession_sql___v1_exec( )=0; }; #ifndef NSQL_H #include #endif #ifndef TLMPWEB_H #include #endif class W_NSQL_FIELD: public W_VAR, public NSQL_FIELD{ /*~PROTOBEG~ W_NSQL_FIELD */ public: W_NSQL_FIELD (const char *_name); W_NSQL_FIELD (const char *_name, unsigned _flags); std::string getvalstr () const; void setempty (void); void setinitval (const char *val); /*~PROTOEND~ W_NSQL_FIELD */ }; // Variation of NSQL_RECORD where all fields are loaded // from the HTTP request. class W_NSQL_RECORD: public NSQL_RECORD{ /*~PROTOBEG~ W_NSQL_RECORD */ /*~PROTOEND~ W_NSQL_RECORD */ }; #include "tlmpwebsql.p" #endif