#include <utilities/mvc/mvc_interfaces.h>
Открытые члены | |
virtual void | AddRedirectionRule (const char *CommandOriginal, const char *CommandRedirected) |
virtual const char * | RedirectCommand (const char *CommandOriginal) |
virtual | ~CommandRedirections () |
Закрытые данные | |
std::map< std::string, std::string > | Rules |
Таблица перенаправления команд (в основном для событий).
См. определение в файле mvc_interfaces.h строка 89
virtual nitro::CommandRedirections::~CommandRedirections | ( | ) | [inline, virtual] |
void nitro::CommandRedirections::AddRedirectionRule | ( | const char * | CommandOriginal, | |
const char * | CommandRedirected | |||
) | [virtual] |
Создания правила перенаправления.
CommandOriginal | - Исходное название команды. | |
CommandRedirected | - Название команды после перенаправления. |
nitro::exception | - В случае ошибки кидается исключение этого типа с описанием ошибки. |
См. определение в файле mvc_interfaces.cpp строка 17
Перекрестные ссылки nitro::exception::code(), Rules и nitro::exception::what().
{ try { std::map< std::string , std::string >::iterator i( Rules.find( std::string( CommandOriginal ) ) ); if( i == Rules.end() ) { Rules.insert( std::pair< std::string , std::string >( std::string( CommandOriginal ) , std::string( CommandRedirected ) ) ); } else { throw( nitro::exception( std::string( "Redirection for rule \"" ) + CommandOriginal + "\" was already defined : " + i->first + " => " + i->second , 1 ) ); } } catch( nitro::exception e ) { throw( nitro::exception( std::string( "CommandRedirections::AddRedirectionRule( const char * CommandOriginal , const char * CommandRedirected )::" )+ e.what() , e.code() ) ); } catch( ... ) { throw( nitro::exception( "CommandRedirections::AddRedirectionRule( const char * CommandOriginal , const char * CommandRedirected )::An error occured" , 1 ) ); } }
const char * nitro::CommandRedirections::RedirectCommand | ( | const char * | CommandOriginal | ) | [virtual] |
Функция перенаправления команды.
CommandOriginal | - Исходное название команды. |
nitro::exception | - В случае ошибки кидается исключение этого типа с описанием ошибки. |
См. определение в файле mvc_interfaces.cpp строка 42
Перекрестные ссылки nitro::exception::code(), Rules и nitro::exception::what().
{ try { std::map< std::string , std::string >::iterator i( Rules.find( std::string( CommandOriginal ) ) ); if( i == Rules.end() ) { return( i->second.c_str() ); } else { return( CommandOriginal ); } } catch( nitro::exception e ) { throw( nitro::exception( std::string( "CommandRedirections::RedirectCommand( const char * CommandOriginal )::" )+ e.what() , e.code() ) ); } catch( ... ) { throw( nitro::exception( "CommandRedirections::RedirectCommand( const char * CommandOriginal )::An error occured" , 1 ) ); } return( NULL ); }
std::map< std::string , std::string > nitro::CommandRedirections::Rules [private] |
Правила перенаправления команд.
См. определение в файле mvc_interfaces.h строка 168
Используется в AddRedirectionRule() и RedirectCommand().