Dynamic lib selection and deployment
[anna.git] / include / anna / diameter / app / defines.hpp
1 // ANNA - Anna is Not Nothingness Anymore                                                         //
2 //                                                                                                //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo                         //
4 //                                                                                                //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite                           //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
7
8
9 #ifndef anna_diameter_app_defines_hpp
10 #define anna_diameter_app_defines_hpp
11
12 #include <anna/core/tracing/Logger.hpp>
13
14
15 #define ASSERT_APP_GETAVP(source)\
16 try { source; }\
17 catch (anna::RuntimeException &ex) {\
18 if (emode == anna::Exception::Mode::Throw) throw ex;\
19    LOGWARNING(\
20       if (emode == anna::Exception::Mode::Trace)\
21          anna::Logger::warning(ex.getText(), ANNA_FILE_LOCATION);\
22    );\
23    LOGDEBUG(\
24       if (emode == anna::Exception::Mode::Ignore)\
25          anna::Logger::debug(ex.getText(), ANNA_FILE_LOCATION);\
26    );\
27 }\
28 return NULL;
29
30
31 #endif
32