accountar-gw.h

Go to the documentation of this file.
00001 // OSB library ********************************************* -*- C++ -*-
00008 /*
00009   AUTHOR(S): Lilian Qin Lan (lan)
00010 
00011   RCS information
00012    $Name: OSB_060808 $
00013    $Revision: 1.12 $
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 _ACCOUNTARGW_H_
00033 #define _ACCOUNTARGW_H_
00034 
00035 // *********************************************************************
00036 // included header files
00037 // + standard includes
00038 
00039 // + local headers
00040 #include "osbid.h"
00041 #include "accountar.h"
00042 
00043 // ************************************************************************
00044 // class declarations
00045 namespace OSB_DB {
00046     class Session;
00047 }
00048 
00049 // ************************************************************************
00050 // namespace extensions
00051 namespace OSB_DB {
00052 
00053 // *********************************************************************
00054 // class definitions
00055 
00059     class AccountArGw {
00061         AccountArGw(const AccountArGw& rhs);
00063         AccountArGw& operator=(const AccountArGw& rhs);
00064     public:
00066         AccountArGw() {}
00067 
00082         void fetchBalance(
00083             const Session&            session,
00084             const OSB_LIB::Associate& associate,
00085             const OSB_LIB::DateTime&  ts,
00086                   OSB_LIB::MoneyList& dest
00087         );
00088 
00104         long fetchTransactions(
00105                   OSB_LIB::TransactionList& transactions,
00106             const Session&                  session,
00107             const OSB_LIB::Associate&       associate,
00108             const OSB_LIB::DateTime&        start,
00109             const OSB_LIB::DateTime&        end
00110         );
00111 
00125         long fetchDuedays(
00126             const Session&            session,
00127             const OSB_LIB::Associate& associate
00128         );
00129 
00140         bool updateInvoice(
00141             const Session&              session,
00142             const OSB_LIB::Associate&   associate,
00143             const OSB_LIB::Contract&    contract,
00144             const OSB_LIB::InvoiceInfo& invInfo
00145         );
00146 
00147     };                                  // class AccountArGw
00148 
00149 }                                       // namespace OSB_DB
00150 #endif                                  // #ifndef _ACCOUNTARGW_H_

Generated on Sat Sep 2 14:06:31 2006 for OSB Library by  doxygen 1.4.7