📄 coord_base.cc
字号:
/* * Copyright (c) 2001-2007 International Computer Science Institute * See LICENSE file for licensing, conditions, and warranties on use. * * DO NOT EDIT THIS FILE - IT IS PROGRAMMATICALLY GENERATED * * Generated by 'tgt-gen'. */#ident "$XORP: xorp/xrl/targets/coord_base.cc,v 1.19 2007/02/16 22:47:49 pavlin Exp $"#include "coord_base.hh"XrlCoordTargetBase::XrlCoordTargetBase(XrlCmdMap* cmds) : _cmds(cmds){ if (_cmds) add_handlers();}XrlCoordTargetBase::~XrlCoordTargetBase(){ if (_cmds) remove_handlers();}boolXrlCoordTargetBase::set_command_map(XrlCmdMap* cmds){ if (_cmds == 0 && cmds) { _cmds = cmds; add_handlers(); return true; } if (_cmds && cmds == 0) { remove_handlers(); _cmds = cmds; return true; } return false;}const XrlCmdErrorXrlCoordTargetBase::handle_common_0_1_get_target_name(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){ if (xa_inputs.size() != 0) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(0), XORP_UINT_CAST(xa_inputs.size()), "common/0.1/get_target_name"); return XrlCmdError::BAD_ARGS(); } if (pxa_outputs == 0) { XLOG_FATAL("Return list empty"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ string name; try { XrlCmdError e = common_0_1_get_target_name( name); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "common/0.1/get_target_name", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } /* Marshall return values */ try { pxa_outputs->add("name", name); } catch (const XrlArgs::XrlAtomFound& ) { XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */ } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_common_0_1_get_version(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){ if (xa_inputs.size() != 0) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(0), XORP_UINT_CAST(xa_inputs.size()), "common/0.1/get_version"); return XrlCmdError::BAD_ARGS(); } if (pxa_outputs == 0) { XLOG_FATAL("Return list empty"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ string version; try { XrlCmdError e = common_0_1_get_version( version); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "common/0.1/get_version", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } /* Marshall return values */ try { pxa_outputs->add("version", version); } catch (const XrlArgs::XrlAtomFound& ) { XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */ } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_common_0_1_get_status(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){ if (xa_inputs.size() != 0) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(0), XORP_UINT_CAST(xa_inputs.size()), "common/0.1/get_status"); return XrlCmdError::BAD_ARGS(); } if (pxa_outputs == 0) { XLOG_FATAL("Return list empty"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ uint32_t status; string reason; try { XrlCmdError e = common_0_1_get_status( status, reason); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "common/0.1/get_status", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } /* Marshall return values */ try { pxa_outputs->add("status", status); pxa_outputs->add("reason", reason); } catch (const XrlArgs::XrlAtomFound& ) { XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */ } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_common_0_1_shutdown(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 0) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(0), XORP_UINT_CAST(xa_inputs.size()), "common/0.1/shutdown"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = common_0_1_shutdown(); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "common/0.1/shutdown", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_coord_0_1_command(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 1) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(1), XORP_UINT_CAST(xa_inputs.size()), "coord/0.1/command"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = coord_0_1_command( xa_inputs.get_string("command")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "coord/0.1/command", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_coord_0_1_status(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){ if (xa_inputs.size() != 1) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(1), XORP_UINT_CAST(xa_inputs.size()), "coord/0.1/status"); return XrlCmdError::BAD_ARGS(); } if (pxa_outputs == 0) { XLOG_FATAL("Return list empty"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ string status; try { XrlCmdError e = coord_0_1_status( xa_inputs.get_string("peer"), status); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "coord/0.1/status", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } /* Marshall return values */ try { pxa_outputs->add("status", status); } catch (const XrlArgs::XrlAtomFound& ) { XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */ } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_coord_0_1_pending(const XrlArgs& xa_inputs, XrlArgs* pxa_outputs){ if (xa_inputs.size() != 0) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(0), XORP_UINT_CAST(xa_inputs.size()), "coord/0.1/pending"); return XrlCmdError::BAD_ARGS(); } if (pxa_outputs == 0) { XLOG_FATAL("Return list empty"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ bool pending; try { XrlCmdError e = coord_0_1_pending( pending); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "coord/0.1/pending", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } /* Marshall return values */ try { pxa_outputs->add("pending", pending); } catch (const XrlArgs::XrlAtomFound& ) { XLOG_FATAL("Duplicate atom name"); /* XXX Should never happen */ } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_datain_0_1_receive(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 6) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(6), XORP_UINT_CAST(xa_inputs.size()), "datain/0.1/receive"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = datain_0_1_receive( xa_inputs.get_string("peer"), xa_inputs.get_uint32("genid"), xa_inputs.get_bool("status"), xa_inputs.get_uint32("secs"), xa_inputs.get_uint32("micro"), xa_inputs.get_binary("data")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "datain/0.1/receive", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_datain_0_1_error(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 3) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(3), XORP_UINT_CAST(xa_inputs.size()), "datain/0.1/error"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = datain_0_1_error( xa_inputs.get_string("peer"), xa_inputs.get_uint32("genid"), xa_inputs.get_string("reason")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "datain/0.1/error", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}const XrlCmdErrorXrlCoordTargetBase::handle_datain_0_1_closed(const XrlArgs& xa_inputs, XrlArgs* /* pxa_outputs */){ if (xa_inputs.size() != 2) { XLOG_ERROR("Wrong number of arguments (%u != %u) handling %s", XORP_UINT_CAST(2), XORP_UINT_CAST(xa_inputs.size()), "datain/0.1/closed"); return XrlCmdError::BAD_ARGS(); } /* Return value declarations */ try { XrlCmdError e = datain_0_1_closed( xa_inputs.get_string("peer"), xa_inputs.get_uint32("genid")); if (e != XrlCmdError::OKAY()) { XLOG_WARNING("Handling method for %s failed: %s", "datain/0.1/closed", e.str().c_str()); return e; } } catch (const XrlArgs::XrlAtomNotFound& e) { XLOG_ERROR("Argument not found"); return XrlCmdError::BAD_ARGS(); } return XrlCmdError::OKAY();}voidXrlCoordTargetBase::add_handlers(){ if (_cmds->add_handler("common/0.1/get_target_name", callback(this, &XrlCoordTargetBase::handle_common_0_1_get_target_name)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "common/0.1/get_target_name"); } if (_cmds->add_handler("common/0.1/get_version", callback(this, &XrlCoordTargetBase::handle_common_0_1_get_version)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "common/0.1/get_version"); } if (_cmds->add_handler("common/0.1/get_status", callback(this, &XrlCoordTargetBase::handle_common_0_1_get_status)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "common/0.1/get_status"); } if (_cmds->add_handler("common/0.1/shutdown", callback(this, &XrlCoordTargetBase::handle_common_0_1_shutdown)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "common/0.1/shutdown"); } if (_cmds->add_handler("coord/0.1/command", callback(this, &XrlCoordTargetBase::handle_coord_0_1_command)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "coord/0.1/command"); } if (_cmds->add_handler("coord/0.1/status", callback(this, &XrlCoordTargetBase::handle_coord_0_1_status)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "coord/0.1/status"); } if (_cmds->add_handler("coord/0.1/pending", callback(this, &XrlCoordTargetBase::handle_coord_0_1_pending)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "coord/0.1/pending"); } if (_cmds->add_handler("datain/0.1/receive", callback(this, &XrlCoordTargetBase::handle_datain_0_1_receive)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "datain/0.1/receive"); } if (_cmds->add_handler("datain/0.1/error", callback(this, &XrlCoordTargetBase::handle_datain_0_1_error)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "datain/0.1/error"); } if (_cmds->add_handler("datain/0.1/closed", callback(this, &XrlCoordTargetBase::handle_datain_0_1_closed)) == false) { XLOG_ERROR("Failed to xrl handler finder://%s/%s", "coord", "datain/0.1/closed"); } _cmds->finalize();}voidXrlCoordTargetBase::remove_handlers(){ _cmds->remove_handler("common/0.1/get_target_name"); _cmds->remove_handler("common/0.1/get_version"); _cmds->remove_handler("common/0.1/get_status"); _cmds->remove_handler("common/0.1/shutdown"); _cmds->remove_handler("coord/0.1/command"); _cmds->remove_handler("coord/0.1/status"); _cmds->remove_handler("coord/0.1/pending"); _cmds->remove_handler("datain/0.1/receive"); _cmds->remove_handler("datain/0.1/error"); _cmds->remove_handler("datain/0.1/closed");}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -