softviewprocessor.h

Go to the documentation of this file.
00001 // OSB library ************************************************ -*- C++ -*-
00010 /*
00011   AUTHOR(S): Venkatesan (vn)
00012 
00013   RCS information
00014    $Name: OSB_060808 $
00015    $Revision: 1.8 $
00016 
00017   License
00018    OSB rating and billing library for communication networks
00019    Copyright (C) 2004, 2005, 2006  OSB systems
00020 
00021    This file may be distributed and/or modify under the terms of the
00022    GNU General Public License (GPL) as published by the Free Software
00023    Foundation which is provided in the file LICENSE.GPL included in the
00024    packaging of this file.
00025 
00026    The file is distributed in the hope that it will be useful, but WITHOUT
00027    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00028    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
00029    for more details.
00030 
00031    Holders of a OSB Commercial License may use this file under the terms
00032    and conditions of this commercial license.
00033  */
00034 #ifndef _SOFTVIEWPROCESSOR_H_
00035 #define _SOFTVIEWPROCESSOR_H_
00036 
00037 // ************************************************************************
00038 // included header files
00039 // + standard includes
00040 
00041 // + local headers
00042 #include "cdrpostprocessor.h"
00043 
00044 // ************************************************************************
00045 // namespace extensions
00046 namespace OSB_LIB {
00047 
00048 // ************************************************************************
00049 // forward declarations
00050     class SoftviewProcessor;
00051 
00052 // ************************************************************************
00053 // class definitions
00059     struct SoftviewCdr
00060     {
00061         std::string callId_;            
00062         std::string callingPartyNo_;    
00063         std::string calledPartyNo_;     
00064         Id2<NetworkElement> elementId_; 
00065         std::string inTrunkGroup_;      
00066         long inTrunkNo_;                
00067         std::string outTrunkGroup_;     
00068         long outTrunkNo_;               
00069         long callLeg_;                  
00070         DateTime startTime_;            
00071         DateTime connectTime_;          
00072         long callDuration_;             
00073         long releaseCause_;             
00074     };
00075 
00082     class SoftviewProcessor: public CdrPostProcessor {
00083     public:
00085        SoftviewProcessor();
00087        ~SoftviewProcessor();
00091         void startTransaction();
00100         CdrPostProcessor::ProcessStatus processCdr(Cdr& cdr);
00105         void stopTransaction(OSB_DB::Session& session);
00106     private:
00108         std::string transactionId_;
00110         std::vector<SoftviewCdr> softviewCdrs_;
00111     };
00112 }                                       // namespace OSB_LIB
00113 #endif                                  // #ifndef _SOFTVIEWPROCESSOR_H_

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