00001 // OSB library ********************************************* -*- C++ -*- 00008 /* 00009 AUTHOR(S): Andreas Huggel (ahu) 00010 00011 RCS information 00012 $Name: OSB_060808 $ 00013 $Revision: 1.25 $ 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 _BILLCYCLEGW_H_ 00033 #define _BILLCYCLEGW_H_ 00034 00035 // ********************************************************************* 00036 // included header files 00037 // + standard includes 00038 // + local headers 00039 00040 // ********************************************************************* 00041 // class declarations 00042 namespace OSB_DB { 00043 class Session; 00044 } 00045 00046 namespace OSB_LIB { 00047 class BillcycleList; 00048 class IntervalBillcycle; 00049 class MidMonthBillcycle; 00050 } 00051 00052 // ********************************************************************* 00053 // namespace extensions 00054 namespace OSB_DB { 00055 00056 // ********************************************************************* 00057 // class definitions 00058 00065 class BillcycleGw { 00066 public: 00076 static long fetch( 00077 const Session& session, 00078 OSB_LIB::BillcycleList& bcList 00079 ); 00080 00091 static bool fetchIntervalBillcycle( 00092 const Session& session, 00093 OSB_LIB::IntervalBillcycle* bc 00094 ); 00095 00106 static bool fetchMidMonthBillcycle( 00107 const Session& session, 00108 OSB_LIB::MidMonthBillcycle* bc 00109 ); 00110 00111 private: 00113 BillcycleGw(); 00114 00115 }; // struct BillcycleGw 00116 00117 // ********************************************************************* 00118 // inline definitions 00119 00120 } // namespace OSB_DB 00121 #endif // #ifndef _BILLCYCLEGW_H_