00001 // tacppd Authorization pairs modifyer 00002 // (c) Copyright 2000-2005 by tacppd team and contributors 00003 // see http://tacppd.org for more information 00004 // 00005 // This program is free software; you can redistribute it and/or modify 00006 // it under the terms of the GNU General Public License as published by 00007 // the Free Software Foundation; either version 2 of the License, or 00008 // (at your option) any later version. 00009 // 00010 // This program is distributed in the hope that it will be useful, 00011 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 // GNU General Public License for more details. 00014 // 00015 // You should have received a copy of the GNU General Public License 00016 // along with this program; if not, write to the Free Software 00017 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00018 00019 // all comments which start from /** - this is comments for KDoc 00020 // for classes 00021 // @short [short description of the class] 00022 // @author [class author] 00023 // @version [class version] 00024 // @see [references to other classes or methods] 00025 // for methods 00026 // @see [references] 00027 // @return [sentence describing the return value] 00028 // @exception [list the exeptions that could be thrown] 00029 // @param [name id] [description] - can be multiple 00030 00031 #ifndef __AMODIFY_H__ 00032 #define __AMODIFY_H__ 00033 00034 #include "global.h" 00035 00036 namespace tacpp { 00037 00043 class AModifyers { 00044 public: 00047 virtual string modifyer(const char*)=0; 00050 virtual ~AModifyers() {} 00051 }; 00052 00058 class AModify_INT : public AModifyers { 00059 public: 00063 string modifyer(const char*); 00064 }; 00065 00070 class AModify_SQL : public AModifyers { 00071 public: 00075 string modifyer(const char*); 00076 }; 00077 00082 class AModify_EXT : public AModifyers { 00083 public: 00087 string modifyer(const char*); 00088 }; 00089 00095 class AModify { 00098 AModifyers *am; 00101 string name; 00104 ipaddr nas; 00107 string port; 00110 string phone; 00113 pthread_mutex_t Mutex_; 00119 string setvars(const string); 00120 public: 00123 AModify(const string,const ipaddr,const string,const string); 00126 db_user modifyer(const db_user); 00129 ~AModify(); 00130 }; 00131 00132 }; 00133 00134 #endif //__AMODIFY_H__