38 , m_mode_exc (
ALL ), m_mode_err( NONE )
39 , m_log(msgSvc(), name )
62 if ( status.
isFailure() ) {
return status ; }
68 if (loc == std::string::npos) {
78 }
else if (mode ==
"ALL") {
81 m_log <<
MSG::ERROR <<
"Unknown mode for Exception handling: \"" << mode
82 <<
"\". Default must be one of \"ALL\" or \"NONE\"" <<
endmsg;
87 if (loc == string::npos) {
90 key = key.substr(loc+1,key.length());
96 tok.
analyse( key,
" ",
"",
"",
"=",
"",
"");
107 if (VAL ==
"SUCCESS") {
109 }
else if ( VAL ==
"FAILURE" ) {
111 }
else if ( VAL ==
"REVOVERABLE" ) {
113 }
else if ( VAL ==
"RETHROW" ) {
115 }
else if ( VAL ==
"DEFAULT" ) {
119 <<
"\" for Algorithm " << TAG <<
std::endl
120 <<
" Must be one of: DEFAULT, SUCCESS, FAILURE, RECOVERABLE, RETHROW"
127 <<
" -> action: " << VAL <<
endmsg;
136 if (loc == std::string::npos) {
139 mode = key.substr(0,loc);
144 if (mode ==
"NONE") {
146 }
else if (mode ==
"ALL") {
150 <<
"\". Default must be one of \"ALL\" or \"NONE\"" <<
endmsg;
155 if (loc == string::npos) {
158 key = key.substr(loc+1,key.length());
162 tok2.
analyse( key,
" ",
"",
"",
"=",
"",
"");
173 if (VAL ==
"SUCCESS") {
175 }
else if ( VAL ==
"FAILURE" ) {
177 }
else if ( VAL ==
"RECOVERABLE" ) {
181 <<
"\" for Algorithm " << TAG <<
std::endl
182 <<
" Must be one of: SUCCESS, FAILURE, RECOVERABLE"
189 <<
" -> action: " << VAL <<
endmsg;
214 if (m_retCodesErr.find(alg.
name()) != m_retCodesErr.end()) {
234 if (m_mode_err ==
ALL) {
239 assert (m_mode_err == NONE );
254 if (m_retCodesExc.find(alg.
name()) != m_retCodesExc.end()) {
273 if (m_mode_exc ==
ALL) {
276 assert (m_mode_exc == NONE);
288 m_log <<
MSG::DEBUG <<
"Handling unknown exception for " << alg.
name()
299 m_log <<
MSG::DEBUG <<
"Handling std:except: \"" << exc.
what() <<
"\" for "
302 return process(alg) ;
311 m_log <<
MSG::DEBUG <<
"Handling GaudiException: \"" << exc <<
"\" for "