cdrpostprocessor.h

Go to the documentation of this file.
00001 // OSB library ********************************************* -*- C++ -*-
00009 /*
00010   AUTHOR(S): Venkatesan (vn)
00011 
00012   RCS information
00013    $Name: OSB_060808 $
00014    $Revision: 1.8 $
00015 
00016   License
00017    OSB rating and billing library for communication networks
00018    Copyright (C) 2004, 2005, 2006  OSB systems
00019 
00020    This file may be distributed and/or modify under the terms of the
00021    GNU General Public License (GPL) as published by the Free Software
00022    Foundation which is provided in the file LICENSE.GPL included in the
00023    packaging of this file.
00024 
00025    The file is distributed in the hope that it will be useful, but WITHOUT
00026    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00027    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
00028    for more details.
00029 
00030    Holders of a OSB Commercial License may use this file under the terms
00031    and conditions of this commercial license.
00032  */
00033 #ifndef _CDRPOSTPROCESSOR_H_
00034 #define _CDRPOSTPROCESSOR_H_
00035 
00036 // *********************************************************************
00037 // included header files
00038 // + standard includes
00039 
00040 // + local headers
00041 #include "cdr.h"
00042 
00043 // ************************************************************************
00044 // namespace extensions
00045 namespace OSB_LIB {
00046 
00047 // *********************************************************************
00048 // type definitions
00049     class CdrPostProcessor;
00050 
00051 // *********************************************************************
00052 // class definitions
00059     class CdrPostProcessor {
00060     public:
00062         enum ProcessStatus {
00063             psUnknown = 0,              // Status Unknown.
00064             psSuccess,                  // Successfully processed.
00065             psError,                    // Error cdr.
00066             psFilter                    // Filter cdr.
00067         };
00068     public:
00070         virtual ~CdrPostProcessor();
00074         virtual void startTransaction();
00081         virtual ProcessStatus processCdr(Cdr& cdr);
00087         virtual void stopTransaction(OSB_DB::Session& session);
00088     };
00089 }                                       // namespace OSB_LIB
00090 #endif                                  // #ifndef _CDRPOSTPROCESSOR_H_

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