00001
00002
00004
00005 #if !defined(AFX_LART_H__7C794BB6_3BDF_40CD_984A_6225DB1F6239__INCLUDED_)
00006 #define AFX_LART_H__7C794BB6_3BDF_40CD_984A_6225DB1F6239__INCLUDED_
00007
00008 #if _MSC_VER > 1000
00009 #pragma once
00010 #endif // _MSC_VER > 1000
00011
00012 #include <abuse/analyze.h>
00013 #include <list>
00014 #include <string>
00015 #include <stdexcept>
00016 #include "PropertyBag.h"
00017
00018 class Lart
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 {
00032 public:
00033 Lart(const PropertyBag& pb,HWND hFather);
00034 virtual ~Lart()=0;
00035 bool sendLarts(const std::string& uce,const std::list<AbuseDesks>& lst,const std::string& analysis);
00036 protected:
00037
00038 void buildLart(std::string uce,const AbuseDesks& abuse);
00039
00040 virtual std::list<AbuseDesks> filterLarts(std::list<AbuseDesks>& lst,bool& bCanceled,std::string uce,std::string analysis)throw(std::runtime_error);
00041
00042 virtual void sendLart(const std::list<std::string>& dest,const std::string& subj,const std::string& text)const throw(std::runtime_error)=0;
00043
00044 virtual std::string getSelfMail()const;
00045
00046 virtual std::string Lart::getCCMail()const;
00047
00048 std::string substituteVariables(const std::string& onWhat,const AbuseDesks& abuse,const std::string& uce);
00049 const PropertyBag& m_prop;
00050 HWND m_hFather;
00051 };
00052
00053 #endif // !defined(AFX_LART_H__7C794BB6_3BDF_40CD_984A_6225DB1F6239__INCLUDED_)