Changeset 289


Ignore:
Timestamp:
09/11/07 19:23:09 (13 years ago)
Author:
Eoin
Message:

Alert dispatcher working.

Files:
7 edited

Legend:

Unmodified
Added
Removed
  • Halite.pnproj

    r285 r289  
    1 <Project name="Halite"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="res" path="res\"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="res24" path="res24\"><File path="ad.ico"></File><File path="ae.ico"></File><File path="af.ico"></File><File path="ag.ico"></File><File path="ai.ico"></File><File path="al.ico"></File><File path="am.ico"></File><File path="an.ico"></File><File path="ao.ico"></File><File path="ar.ico"></File><File path="as.ico"></File><File path="at.ico"></File><File path="au.ico"></File><File path="aw.ico"></File><File path="ax.ico"></File><File path="az.ico"></File><File path="ba.ico"></File><File path="bb.ico"></File><File path="bd.ico"></File><File path="be.ico"></File><File path="bf.ico"></File><File path="bg.ico"></File><File path="bh.ico"></File><File path="bi.ico"></File><File path="bj.ico"></File><File path="bm.ico"></File><File path="bn.ico"></File><File path="bo.ico"></File><File path="br.ico"></File><File path="bs.ico"></File><File path="bt.ico"></File><File path="bw.ico"></File><File path="by.ico"></File><File path="bz.ico"></File><File path="ca.ico"></File><File path="cc.ico"></File><File path="cd.ico"></File><File path="cf.ico"></File><File path="cg.ico"></File><File path="ch.ico"></File><File path="ci.ico"></File><File path="ck.ico"></File><File path="cl.ico"></File><File path="cm.ico"></File><File path="cn.ico"></File><File path="co.ico"></File><File path="cr.ico"></File><File path="cu.ico"></File><File path="cv.ico"></File><File path="cx.ico"></File><File path="cy.ico"></File><File path="cz.ico"></File><File path="de.ico"></File><File path="dj.ico"></File><File path="dk.ico"></File><File path="dm.ico"></File><File path="do.ico"></File><File path="dz.ico"></File><File path="ec.ico"></File><File path="ee.ico"></File><File path="eg.ico"></File><File path="eh.ico"></File><File path="er.ico"></File><File path="es.ico"></File><File path="et.ico"></File><File path="fi.ico"></File><File path="fj.ico"></File><File path="fk.ico"></File><File path="fm.ico"></File><File path="fo.ico"></File><File path="fr.ico"></File><File path="ga.ico"></File><File path="gb.ico"></File><File path="gd.ico"></File><File path="ge.ico"></File><File path="gg.ico"></File><File path="gh.ico"></File><File path="gi.ico"></File><File path="gk.ico"></File><File path="gl.ico"></File><File path="gm.ico"></File><File path="gn.ico"></File><File path="gp.ico"></File><File path="gq.ico"></File><File path="gr.ico"></File><File path="gs.ico"></File><File path="gt.ico"></File><File path="gu.ico"></File><File path="gw.ico"></File><File path="gy.ico"></File><File path="hk.ico"></File><File path="hn.ico"></File><File path="hr.ico"></File><File path="ht.ico"></File><File path="hu.ico"></File><File path="Icons.h"></File><File path="Icons.rc"></File><File path="id.ico"></File><File path="ie.ico"></File><File path="il.ico"></File><File path="im.ico"></File><File path="in.ico"></File><File path="io.ico"></File><File path="iq.ico"></File><File path="ir.ico"></File><File path="is.ico"></File><File path="it.ico"></File><File path="je.ico"></File><File path="jm.ico"></File><File path="jo.ico"></File><File path="jp.ico"></File><File path="ke.ico"></File><File path="kg.ico"></File><File path="kh.ico"></File><File path="ki.ico"></File><File path="km.ico"></File><File path="kn.ico"></File><File path="kp.ico"></File><File path="kr.ico"></File><File path="kw.ico"></File><File path="ky.ico"></File><File path="kz.ico"></File><File path="la.ico"></File><File path="lb.ico"></File><File path="lc.ico"></File><File path="li.ico"></File><File path="lk.ico"></File><File path="lr.ico"></File><File path="ls.ico"></File><File path="lt.ico"></File><File path="lu.ico"></File><File path="lv.ico"></File><File path="ly.ico"></File><File path="ma.ico"></File><File path="mc.ico"></File><File path="md.ico"></File><File path="me.ico"></File><File path="mg.ico"></File><File path="mh.ico"></File><File path="mk.ico"></File><File path="ml.ico"></File><File path="mm.ico"></File><File path="mn.ico"></File><File path="mo.ico"></File><File path="mp.ico"></File><File path="mq.ico"></File><File path="mr.ico"></File><File path="ms.ico"></File><File path="mt.ico"></File><File path="mu.ico"></File><File path="mv.ico"></File><File path="mw.ico"></File><File path="mx.ico"></File><File path="my.ico"></File><File path="mz.ico"></File><File path="na.ico"></File><File path="nc.ico"></File><File path="ne.ico"></File><File path="nf.ico"></File><File path="ng.ico"></File><File path="ni.ico"></File><File path="nl.ico"></File><File path="no.ico"></File><File path="not.ico"></File><File path="np.ico"></File><File path="nr.ico"></File><File path="nu.ico"></File><File path="nz.ico"></File><File path="om.ico"></File><File path="pa.ico"></File><File path="pe.ico"></File><File path="pf.ico"></File><File path="pg.ico"></File><File path="ph.ico"></File><File path="pk.ico"></File><File path="pl.ico"></File><File path="pm.ico"></File><File path="pn.ico"></File><File path="pr.ico"></File><File path="ps.ico"></File><File path="pt.ico"></File><File path="pw.ico"></File><File path="py.ico"></File><File path="qa.ico"></File><File path="ro.ico"></File><File path="rs.ico"></File><File path="ru.ico"></File><File path="rw.ico"></File><File path="sa.ico"></File><File path="sb.ico"></File><File path="sc.ico"></File><File path="sd.ico"></File><File path="se.ico"></File><File path="sg.ico"></File><File path="sh.ico"></File><File path="si.ico"></File><File path="sk.ico"></File><File path="sl.ico"></File><File path="sm.ico"></File><File path="sn.ico"></File><File path="so.ico"></File><File path="sr.ico"></File><File path="st.ico"></File><File path="sv.ico"></File><File path="sy.ico"></File><File path="sz.ico"></File><File path="tc.ico"></File><File path="td.ico"></File><File path="Template.rc"></File><File path="tf.ico"></File><File path="tg.ico"></File><File path="th.ico"></File><File path="tj.ico"></File><File path="tk.ico"></File><File path="tl.ico"></File><File path="tm.ico"></File><File path="tn.ico"></File><File path="to.ico"></File><File path="tr.ico"></File><File path="tt.ico"></File><File path="tv.ico"></File><File path="tw.ico"></File><File path="tz.ico"></File><File path="ua.ico"></File><File path="ug.ico"></File><File path="us.ico"></File><File path="uy.ico"></File><File path="uz.ico"></File><File path="va.ico"></File><File path="vc.ico"></File><File path="ve.ico"></File><File path="vg.ico"></File><File path="vi.ico"></File><File path="vn.ico"></File><File path="vu.ico"></File><File path="wf.ico"></File><File path="ws.ico"></File><File path="ye.ico"></File><File path="yu.ico"></File><File path="za.ico"></File><File path="zm.ico"></File><File path="zw.ico"></File></MagicFolder><File path="afxres.h"></File><File path="English.rtf"></File><File path="Halite.aps"></File><File path="Halite.ico"></File><File path="Halite.rc"></File><File path="Icons.rc"></File><File path="Manifest.xml"></File><File path="resource.h"></File><File path="toolbar.bmp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="src" path="src\"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="advtabs" path="advtabs\"><File path="Debug.cpp"></File><File path="Debug.hpp"></File><File path="Files.cpp"></File><File path="Files.hpp"></File><File path="Peers.cpp"></File><File path="Peers.hpp"></File><File path="ThemeTestDialog.hpp"></File><File path="Torrent.cpp"></File><File path="Torrent.hpp"></File><File path="Tracker.cpp"></File><File path="Tracker.hpp"></File><File path="TrackerAddDialog.hpp"></File><File path="TrackerListView.cpp"></File><File path="TrackerListView.hpp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="global" path="global\"><File path="InheritEnum.hpp"></File><File path="ini.cpp"></File><File path="ini.hpp"></File><File path="ini_adapter.cpp"></File><File path="ini_adapter.hpp"></File><File path="logger.cpp"></File><File path="logger.hpp"></File><File path="string_conv.cpp"></File><File path="string_conv.hpp"></File><File path="tinyxml.cpp"></File><File path="tinyxml.hpp"></File><File path="tinyxmlerror.cpp"></File><File path="tinyxmlparser.cpp"></File><File path="unicode.hpp"></File><File path="utf8.hpp"></File><File path="wtl_app.cpp"></File><File path="wtl_app.hpp"></File></MagicFolder><File path="AdvHaliteDialog.cpp"></File><File path="AdvHaliteDialog.hpp"></File><File path="ConfigOptions.cpp"></File><File path="ConfigOptions.hpp"></File><File path="CSSFileDialog.hpp"></File><File path="DdxEx.hpp"></File><File path="DebugDialog.hpp"></File><File path="DropFileTarget.h"></File><File path="halConfig.cpp"></File><File path="halConfig.hpp"></File><File path="halEvent.cpp"></File><File path="halEvent.hpp"></File><File path="Halite.cpp"></File><File path="Halite.hpp"></File><File path="HaliteDialog.cpp"></File><File path="HaliteDialog.hpp"></File><File path="HaliteDialogBase.hpp"></File><File path="HaliteEditCtrl.hpp"></File><File path="HaliteIni.hpp"></File><File path="HaliteListManager.hpp"></File><File path="HaliteListView.cpp"></File><File path="HaliteListView.hpp"></File><File path="HaliteListViewCtrl.hpp"></File><File path="HaliteSortListViewCtrl.hpp"></File><File path="HaliteTabCtrl.hpp"></File><File path="HaliteTabPage.hpp"></File><File path="HaliteUpdateLock.hpp"></File><File path="HaliteWindow.cpp"></File><File path="HaliteWindow.hpp"></File><File path="halTorrent.cpp"></File><File path="halTorrent.hpp"></File><File path="halTorrentInternal.hpp"></File><File path="halXmlRpc.cpp"></File><File path="halXmlRpc.hpp"></File><File path="NTray.cpp"></File><File path="NTray.hpp"></File><File path="ProgressDialog.hpp"></File><File path="SimpleHtml.h"></File><File path="SplashDialog.hpp"></File><File path="SSFileDialog.hpp"></File><File path="stdAfx.cpp"></File><File path="stdAfx.hpp"></File><File path="UxthemeWrapper.cpp"></File><File path="UxthemeWrapper.hpp"></File><File path="WinAPIMutex.hpp"></File><File path="WinAPIWaitableTimer.hpp"></File></MagicFolder><File path="Jamfile.v2"></File></Project> 
     1<Project name="Halite"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="res" path="res\"><File path="afxres.h"></File><File path="English.rtf"></File><File path="Halite.aps"></File><File path="Halite.ico"></File><File path="Halite.rc"></File><File path="Manifest.xml"></File><File path="resource.h"></File><File path="toolbar.bmp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="src" path="src\"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="advtabs" path="advtabs\"><File path="Debug.cpp"></File><File path="Debug.hpp"></File><File path="Files.cpp"></File><File path="Files.hpp"></File><File path="Peers.cpp"></File><File path="Peers.hpp"></File><File path="ThemeTestDialog.hpp"></File><File path="Torrent.cpp"></File><File path="Torrent.hpp"></File><File path="Tracker.cpp"></File><File path="Tracker.hpp"></File><File path="TrackerAddDialog.hpp"></File><File path="TrackerListView.cpp"></File><File path="TrackerListView.hpp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="global" path="global\"><File path="InheritEnum.hpp"></File><File path="ini.cpp"></File><File path="ini.hpp"></File><File path="ini_adapter.cpp"></File><File path="ini_adapter.hpp"></File><File path="logger.cpp"></File><File path="logger.hpp"></File><File path="string_conv.cpp"></File><File path="string_conv.hpp"></File><File path="tinyxml.cpp"></File><File path="tinyxml.hpp"></File><File path="tinyxmlerror.cpp"></File><File path="tinyxmlparser.cpp"></File><File path="unicode.hpp"></File><File path="utf8.hpp"></File><File path="wtl_app.cpp"></File><File path="wtl_app.hpp"></File></MagicFolder><File path="AdvHaliteDialog.cpp"></File><File path="AdvHaliteDialog.hpp"></File><File path="ConfigOptions.cpp"></File><File path="ConfigOptions.hpp"></File><File path="CSSFileDialog.hpp"></File><File path="DdxEx.hpp"></File><File path="DebugDialog.hpp"></File><File path="DropFileTarget.h"></File><File path="halConfig.cpp"></File><File path="halConfig.hpp"></File><File path="halEvent.cpp"></File><File path="halEvent.hpp"></File><File path="Halite.cpp"></File><File path="Halite.hpp"></File><File path="HaliteDialog.cpp"></File><File path="HaliteDialog.hpp"></File><File path="HaliteDialogBase.hpp"></File><File path="HaliteEditCtrl.hpp"></File><File path="HaliteIni.hpp"></File><File path="HaliteListManager.hpp"></File><File path="HaliteListView.cpp"></File><File path="HaliteListView.hpp"></File><File path="HaliteListViewCtrl.hpp"></File><File path="HaliteSortListViewCtrl.hpp"></File><File path="HaliteTabCtrl.hpp"></File><File path="HaliteTabPage.hpp"></File><File path="HaliteUpdateLock.hpp"></File><File path="HaliteWindow.cpp"></File><File path="HaliteWindow.hpp"></File><File path="halTorrent.cpp"></File><File path="halTorrent.hpp"></File><File path="halTorrentInternal.hpp"></File><File path="halXmlRpc.cpp"></File><File path="halXmlRpc.hpp"></File><File path="NTray.cpp"></File><File path="NTray.hpp"></File><File path="ProgressDialog.hpp"></File><File path="SimpleHtml.h"></File><File path="SplashDialog.hpp"></File><File path="SSFileDialog.hpp"></File><File path="stdAfx.cpp"></File><File path="stdAfx.hpp"></File><File path="UxthemeWrapper.cpp"></File><File path="UxthemeWrapper.hpp"></File><File path="WinAPIMutex.hpp"></File><File path="WinAPIWaitableTimer.hpp"></File></MagicFolder><File path="Jamfile.v2"></File></Project> 
  • Halite.pnps

    r283 r289  
    1 <pd><ViewState><e p="Halite\src\advtabs" x="true"></e><e p="Halite" x="true"></e><e p="Halite\res" x="true"></e><e p="Halite\res\res24" x="false"></e><e p="Halite\src" x="true"></e><e p="Halite\src\global" x="true"></e></ViewState></pd> 
     1<pd><ViewState><e p="Halite\src\advtabs" x="true"></e><e p="Halite" x="true"></e><e p="Halite\res" x="true"></e><e p="Halite\src" x="true"></e><e p="Halite\src\global" x="true"></e></ViewState></pd> 
  • res/Halite.rc

    r287 r289  
    443443    IDS_DHTTRYANOTHERPORT         "DHT session could not start. Try selecting another port in the settings." 
    444444    IDS_SAVEPROMPT                "Select a directory to save the files to or cancel to not download torrent at all." 
    445     HAL_EVENTNONE                 "None" 
    446     HAL_EVENTDEBUG                "Debug" 
    447     HAL_EVENTINFO                 "Info" 
    448     HAL_EVENTCRITICAL             "Critical" 
    449     HAL_PEERALERT                 "Libtorrent Peer Alert: %1%." 
    450     HAL_EVENT_XMLEXP              "Xml Exception (%1%) with %2%." 
    451445    IDS_NA                        "N/A" 
    452     HAL_EVENT_TORRENTEXP          "Torrent (%1%) exception caught; %2% from %3%." 
    453     HAL_EVENT_INVTORRENT          "Invalid torrent (%1%) from %2%." 
    454446    HAL_COMPLETED_SUMMARY         "%1$.2fMB of %2$.2fMB" 
    455447    HAL_DOWNLOAD_SUMMARY          "This Session Downloaded %1$.2fMB, Uploaded %2$.2fMB, Ratio %3$.2f." 
     
    573565STRINGTABLE  
    574566BEGIN 
     567    HAL_EVENTNONE                 "None" 
     568    HAL_EVENTDEBUG                "Debug" 
     569    HAL_EVENTINFO                 "Info" 
     570    HAL_EVENTWARNING              "Warning" 
     571    HAL_EVENTCRITICAL             "Critical" 
     572         
     573    HAL_PEERALERT                 "Peer %2%: %1%." 
     574    HAL_PEER_BAN_ALERT            "Peer banned %2%. (%1%)" 
     575        HAL_HASH_FAIL_ALERT                       "Hash failed for piece %2% of %1%." 
     576        HAL_URL_SEED_ALERT                        "URL Seed %2%, %3%. (%1%)" 
     577        HAL_TRACKER_WARNING_ALERT         "Tracker warning: %2%! (%1%)" 
     578        HAL_TRACKER_ANNOUNCE_ALERT        "Tracker Announce. (%1%)" 
     579        HAL_TRACKER_ALERT                         "Alert %2%, Status code: %4%, Times %3%. (%1%)" 
     580        HAL_TRACKER_REPLY_ALERT           "%2%. %3% Peers. (%1%)" 
     581         
     582    HAL_EVENT_XMLEXP              "Xml Exception (%1%) with %2%." 
    575583        LBT_EVENT_TORRENT_FINISHED    "Torrent %1% finished." 
     584    HAL_EVENT_TORRENTEXP          "Torrent (%1%) exception caught; %2% from %3%." 
     585    HAL_EVENT_INVTORRENT          "Invalid torrent (%1%) from %2%." 
     586         
    576587        HAL_EVENT_EXP                 "Exception caught; %1%, from %2%." 
    577588        HAL_EVENT_XML_EXP             "XML exception: %1%." 
  • res/resource.h

    r287 r289  
    180180#define HAL_EVENTDEBUG                  40008 
    181181#define HAL_EVENTINFO                   40009 
     182#define HAL_EVENTWARNING                                39999 
    182183#define ID_TRAY_EXIT                    40009 
    183184#define HAL_EVENTCRITICAL               40010 
  • src/global/wtl_app.cpp

    r268 r289  
    8383        const int buffer_size = 2048; 
    8484        boost::array<wchar_t, buffer_size> buffer; 
    85         ::LoadString(_Module.GetResourceInstance(), uID, buffer.elems, buffer_size); 
     85         
     86        int size = ::LoadString(_Module.GetResourceInstance(), uID, buffer.elems, buffer_size); 
     87        assert(size != 0); 
    8688         
    8789        return std::wstring(buffer.elems); 
  • src/halEvent.cpp

    r268 r289  
    4949                return hal::app().res_wstr(HAL_EVENTINFO); 
    5050        case warning: 
    51                 return hal::app().res_wstr(HAL_EVENTINFO); 
     51                return hal::app().res_wstr(HAL_EVENTWARNING); 
    5252        case critical: 
    5353                return hal::app().res_wstr(HAL_EVENTCRITICAL); 
  • src/halTorrent.cpp

    r287 r289  
    1010 
    1111#define LBT_EVENT_TORRENT_FINISHED                                      80001 
     12#define HAL_PEER_BAN_ALERT                                                      80002 
     13#define HAL_HASH_FAIL_ALERT                                                     80003 
     14#define HAL_URL_SEED_ALERT                                                      80005 
     15#define HAL_TRACKER_WARNING_ALERT                                       80004 
     16#define HAL_TRACKER_ANNOUNCE_ALERT                                      80006 
     17#define HAL_TRACKER_ALERT                                                       80007 
     18#define HAL_TRACKER_REPLY_ALERT                                         80008 
    1219 
    1320#ifndef RC_INVOKED 
     
    237244        { 
    238245        case lbt::alert::debug: 
     246                return Event::debug; 
     247         
    239248        case lbt::alert::info: 
    240                 return Event::debug; 
     249                return Event::info; 
    241250         
    242251        case lbt::alert::warning: 
    243                 return Event::info; 
     252                return Event::warning; 
    244253         
    245254        case lbt::alert::critical: 
     
    339348                                new EventGeneral(Event::info, a.timestamp(), 
    340349                                        wformat(hal::app().res_wstr(LBT_EVENT_TORRENT_FINISHED))  
    341                                                 % hal::from_utf8(a.handle.get_torrent_info().name()) 
    342                         )       )       );                       
     350                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name())) 
     351                        )       );                       
    343352                } 
    344353                 
    345354                void operator()(lbt::peer_error_alert const& a) const 
    346355                { 
    347         //              event().post(shared_ptr<EventDetail>( 
    348         //                      new EventGeneral(Event::info, a.timestamp(), L"Hi" 
    349         //                              //wformat(hal::app().res_wstr(LBT_EVENT_TORRENT_FINISHED))  
    350         //                              //      % hal::from_utf8(a.handle.get_torrent_info().name()) 
    351         //              )       )       );                       
    352                 } 
    353                          
     356                        event().post(shared_ptr<EventDetail>( 
     357                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     358                                        wformat(hal::app().res_wstr(HAL_PEERALERT)) 
     359                                                % hal::safe_from_utf8(a.msg()) 
     360                                                % hal::safe_from_utf8(a.ip.address().to_string())) 
     361                        )       );                               
     362                } 
     363                         
     364                void operator()(lbt::peer_ban_alert const& a) const 
     365                { 
     366                        event().post(shared_ptr<EventDetail>( 
     367                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     368                                        wformat(hal::app().res_wstr(HAL_PEER_BAN_ALERT)) 
     369                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name()) 
     370                                                % hal::safe_from_utf8(a.ip.address().to_string())) 
     371                        )       );                               
     372                } 
     373                         
     374                void operator()(lbt::hash_failed_alert const& a) const 
     375                { 
     376                        event().post(shared_ptr<EventDetail>( 
     377                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     378                                        wformat(hal::app().res_wstr(HAL_HASH_FAIL_ALERT)) 
     379                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name()) 
     380                                                % a.piece_index) 
     381                        )       );                               
     382                } 
     383                         
     384                void operator()(lbt::url_seed_alert const& a) const 
     385                { 
     386                        event().post(shared_ptr<EventDetail>( 
     387                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     388                                        wformat(hal::app().res_wstr(HAL_URL_SEED_ALERT)) 
     389                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name()) 
     390                                                % hal::safe_from_utf8(a.url) 
     391                                                % hal::safe_from_utf8(a.msg())) 
     392                        )       );                               
     393                } 
     394                 
     395                void operator()(lbt::tracker_warning_alert const& a) const 
     396                { 
     397                        event().post(shared_ptr<EventDetail>( 
     398                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     399                                        wformat(hal::app().res_wstr(HAL_TRACKER_WARNING_ALERT)) 
     400                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name()) 
     401                                                % hal::safe_from_utf8(a.msg())) 
     402                        )       );                               
     403                } 
     404                 
     405                void operator()(lbt::tracker_announce_alert const& a) const 
     406                { 
     407                        event().post(shared_ptr<EventDetail>( 
     408                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     409                                        wformat(hal::app().res_wstr(HAL_TRACKER_ANNOUNCE_ALERT)) 
     410                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name())) 
     411                        )       );                               
     412                } 
     413                 
     414                void operator()(lbt::tracker_alert const& a) const 
     415                { 
     416                        event().post(shared_ptr<EventDetail>( 
     417                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     418                                        wformat(hal::app().res_wstr(HAL_TRACKER_ALERT)) 
     419                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name()) 
     420                                                % hal::safe_from_utf8(a.msg()) 
     421                                                % a.times_in_row 
     422                                                % a.status_code) 
     423                        )       );                               
     424                } 
     425                 
     426                void operator()(lbt::tracker_reply_alert const& a) const 
     427                { 
     428                        event().post(shared_ptr<EventDetail>( 
     429                                new EventGeneral(lbtAlertToHalEvent(a.severity()), a.timestamp(), 
     430                                        wformat(hal::app().res_wstr(HAL_TRACKER_REPLY_ALERT)) 
     431                                                % hal::safe_from_utf8(a.handle.get_torrent_info().name()) 
     432                                                % hal::safe_from_utf8(a.msg()) 
     433                                                % a.num_peers) 
     434                        )       );                               
     435                } 
     436                 
    354437                void operator()(lbt::alert const& a) const 
    355438                { 
    356         //              event().post(shared_ptr<EventDetail>( 
    357         //                      new EventGeneral(Event::info, a.timestamp(), L"Hi" 
    358         //                              //wformat(hal::app().res_wstr(LBT_EVENT_TORRENT_FINISHED))  
    359         //                              //      % hal::from_utf8(a.handle.get_torrent_info().name()) 
    360         //              )       )       );                       
     439                        event().post(shared_ptr<EventDetail>( 
     440                                        new EventLibtorrent(lbtAlertToHalEvent(a.severity()),  
     441                                                a.timestamp(), Event::unclassified, hal::safe_from_utf8(a.msg()))));             
    361442                } 
    362443                 
     
    365446                while (p_alert.get()) 
    366447                {        
    367 /*                      if (lbt::peer_error_alert* peer = dynamic_cast<lbt::peer_error_alert*>(p_alert.get())) 
    368                         { 
    369                                 event().post(shared_ptr<EventDetail>( 
    370                                         new EventPeerAlert(lbtAlertToHalEvent(p_alert->severity()),  
    371                                                 p_alert->timestamp(), hal::str_to_wstr(p_alert->msg()))));                       
    372                         } 
    373                         else 
    374                         { 
    375                                 event().post(shared_ptr<EventDetail>( 
    376                                         new EventLibtorrent(lbtAlertToHalEvent(p_alert->severity()),  
    377                                                 p_alert->timestamp(), Event::unclassified, hal::str_to_wstr(p_alert->msg())))); 
    378                         } 
    379 */                       
    380448                        try 
    381449                        { 
     
    384452                                lbt::torrent_finished_alert, 
    385453                                lbt::peer_error_alert, 
     454                                lbt::peer_ban_alert, 
     455                                lbt::hash_failed_alert, 
     456                                lbt::url_seed_alert, 
     457                                lbt::tracker_alert, 
     458                                lbt::tracker_warning_alert, 
     459                                lbt::tracker_announce_alert, 
     460                                lbt::tracker_reply_alert, 
    386461                                lbt::alert 
    387                         >::handle_alert(p_alert, handler); 
    388                          
    389                         p_alert = theSession.pop_alert(); 
    390                          
     462                        >::handle_alert(p_alert, handler);                       
     463                         
     464                        } 
     465                        catch(lbt::unhandled_alert&) 
     466                        { 
     467                                handler(*p_alert); 
    391468                        } 
    392469                        catch(std::exception& e) 
     
    395472                                        new EventStdException(Event::critical, e, L"alertHandler"))); 
    396473                        } 
     474                         
     475                        p_alert = theSession.pop_alert(); 
    397476                } 
    398477                 
Note: See TracChangeset for help on using the changeset viewer.