00001 // OSB library ********************************************* -*- C++ -*- 00008 /* 00009 AUTHOR(S): Stephan Broennimann (vb) 00010 00011 RCS information 00012 $Name: OSB_060808 $ 00013 $Revision: 1.26 $ 00014 00015 License 00016 OSB rating and billing library for communication networks 00017 Copyright (C) 2004, 2005, 2006 OSB systems 00018 00019 This file may be distributed and/or modify under the terms of the 00020 GNU General Public License (GPL) as published by the Free Software 00021 Foundation which is provided in the file LICENSE.GPL included in the 00022 packaging of this file. 00023 00024 The file is distributed in the hope that it will be useful, but WITHOUT 00025 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00026 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00027 for more details. 00028 00029 Holders of a OSB Commercial License may use this file under the terms 00030 and conditions of this commercial license. 00031 */ 00032 #ifndef _CHARGETRAITSGW_H_ 00033 #define _CHARGETRAITSGW_H_ 00034 00035 // ********************************************************************* 00036 // Included header files 00037 // + standard includes 00038 00039 // + local headers 00040 #include "osbid.h" 00041 #include "chargetraits.h" 00042 00043 // ********************************************************************* 00044 // class declarations 00045 namespace OSB_DB { 00046 class Session; 00047 } 00048 00049 // ************************************************************************ 00050 // namespace extensions 00051 namespace OSB_DB { 00052 00056 class ChargeTraitsGw 00057 { 00059 ChargeTraitsGw(const ChargeTraitsGw& rhs); 00061 ChargeTraitsGw& operator=(const ChargeTraitsGw& rhs); 00062 public: 00064 ChargeTraitsGw() {} 00065 00075 long fetch( 00076 const Session& session, 00077 OSB_LIB::ChargeTraitsList::List* pCtList 00078 ); 00079 00092 bool insert( 00093 const Session& session, 00094 OSB_LIB::ChargeTraits& ct 00095 ); 00096 00105 bool delChargeTraits( 00106 const Session& session, 00107 const OSB_LIB::ChargeTraits& ct 00108 ); 00109 00110 }; 00111 00115 class TaxTraitsGw { 00117 TaxTraitsGw(const TaxTraitsGw&); 00119 TaxTraitsGw& operator=(const TaxTraitsGw&rhs); 00120 public: 00122 TaxTraitsGw() {} 00123 00132 long fetch( 00133 const Session& session, 00134 OSB_LIB::TaxTraitsList* pTaxTraitsList = 0 00135 ); 00136 00137 private: 00138 OSB_LIB::TaxTraitsList cache_; 00139 }; 00140 00141 } // namespace OSB_DB 00142 #endif // #ifndef _CHARGETRAITSGW_H_