diff options
Diffstat (limited to 'tools/lldb-mi/MICmdArgSet.cpp')
-rw-r--r-- | tools/lldb-mi/MICmdArgSet.cpp | 672 |
1 files changed, 343 insertions, 329 deletions
diff --git a/tools/lldb-mi/MICmdArgSet.cpp b/tools/lldb-mi/MICmdArgSet.cpp index b0bee357cd6b..290f9eef8a9d 100644 --- a/tools/lldb-mi/MICmdArgSet.cpp +++ b/tools/lldb-mi/MICmdArgSet.cpp @@ -8,15 +8,15 @@ //===----------------------------------------------------------------------===// //++ -// File: MICmdArgSet.cpp +// File: MICmdArgSet.cpp // -// Overview: CMICmdArgSet implementation. +// Overview: CMICmdArgSet implementation. // -// Environment: Compilers: Visual C++ 12. -// gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1 -// Libraries: See MIReadmetxt. +// Environment: Compilers: Visual C++ 12. +// gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1 +// Libraries: See MIReadmetxt. // -// Copyright: None. +// Copyright: None. //-- // In-house headers: @@ -26,395 +26,409 @@ #include "MICmnLog.h" //++ ------------------------------------------------------------------------------------ -// Details: CMICmdArgSet constructor. -// Type: Method. -// Args: None. -// Return: None. -// Throws: None. +// Details: CMICmdArgSet constructor. +// Type: Method. +// Args: None. +// Return: None. +// Throws: None. //-- -CMICmdArgSet::CMICmdArgSet( void ) -: m_bIsArgsPresentButNotHandledByCmd( false ) -, m_constStrCommaSpc( ", " ) +CMICmdArgSet::CMICmdArgSet(void) + : m_bIsArgsPresentButNotHandledByCmd(false) + , m_constStrCommaSpc(", ") { } //++ ------------------------------------------------------------------------------------ -// Details: CMICmdArgSet destructor. -// Type: Method. -// Args: None. -// Return: None. -// Throws: None. +// Details: CMICmdArgSet destructor. +// Type: Method. +// Args: None. +// Return: None. +// Throws: None. //-- -CMICmdArgSet::~CMICmdArgSet( void ) +CMICmdArgSet::~CMICmdArgSet(void) { - // Tidy up - Destroy(); + // Tidy up + Destroy(); } //++ ------------------------------------------------------------------------------------ -// Details: Release resources used by *this container object. -// Type: Method. -// Args: None. -// Return: None. -// Throws: None. +// Details: Release resources used by *this container object. +// Type: Method. +// Args: None. +// Return: None. +// Throws: None. //-- -void CMICmdArgSet::Destroy( void ) +void +CMICmdArgSet::Destroy(void) { - // Delete command argument objects - if( !m_setCmdArgs.empty() ) - { - SetCmdArgs_t::iterator it = m_setCmdArgs.begin(); - while( it != m_setCmdArgs.end() ) - { - CMICmdArgValBase * pArg( *it ); - delete pArg; - - // Next - ++it; - } - m_setCmdArgs.clear(); - } - - m_setCmdArgsThatNotValid.clear(); - m_setCmdArgsThatAreMissing.clear(); - m_setCmdArgsNotHandledByCmd.clear(); - m_setCmdArgsMissingInfo.clear(); - m_bIsArgsPresentButNotHandledByCmd = false; + // Delete command argument objects + if (!m_setCmdArgs.empty()) + { + SetCmdArgs_t::iterator it = m_setCmdArgs.begin(); + while (it != m_setCmdArgs.end()) + { + CMICmdArgValBase *pArg(*it); + delete pArg; + + // Next + ++it; + } + m_setCmdArgs.clear(); + } + + m_setCmdArgsThatNotValid.clear(); + m_setCmdArgsThatAreMissing.clear(); + m_setCmdArgsNotHandledByCmd.clear(); + m_setCmdArgsMissingInfo.clear(); + m_bIsArgsPresentButNotHandledByCmd = false; } //++ ------------------------------------------------------------------------------------ -// Details: Retrieve the state flag indicating that the command set up ready to parse -// command arguments or options found that one or more arguments was indeed -// present but not handled. This is given as a warning in the MI log file. -// Type: Method. -// Args: None. -// Return: bool - True = one or more args not handled, false = all args handled -// Throws: None. +// Details: Retrieve the state flag indicating that the command set up ready to parse +// command arguments or options found that one or more arguments was indeed +// present but not handled. This is given as a warning in the MI log file. +// Type: Method. +// Args: None. +// Return: bool - True = one or more args not handled, false = all args handled +// Throws: None. //-- -bool CMICmdArgSet::IsArgsPresentButNotHandledByCmd( void ) const +bool +CMICmdArgSet::IsArgsPresentButNotHandledByCmd(void) const { - return m_bIsArgsPresentButNotHandledByCmd; + return m_bIsArgsPresentButNotHandledByCmd; } - + //++ ------------------------------------------------------------------------------------ -// Details: Add the list of command's arguments to parse and validate another one. -// Type: Method. -// Args: vArg - (R) A command argument object. -// Return: MIstatus::success - Functional succeeded. -// MIstatus::failure - Functional failed. -// Throws: None. +// Details: Add the list of command's arguments to parse and validate another one. +// Type: Method. +// Args: vArg - (R) A command argument object. +// Return: MIstatus::success - Functional succeeded. +// MIstatus::failure - Functional failed. +// Throws: None. //-- -bool CMICmdArgSet::Add( const CMICmdArgValBase & vArg ) +bool +CMICmdArgSet::Add(const CMICmdArgValBase &vArg) { - CMICmdArgValBase * pArg = const_cast< CMICmdArgValBase * >( &vArg ); - m_setCmdArgs.push_back( pArg ); + CMICmdArgValBase *pArg = const_cast<CMICmdArgValBase *>(&vArg); + m_setCmdArgs.push_back(pArg); - return MIstatus::success; + return MIstatus::success; } //++ ------------------------------------------------------------------------------------ -// Details: After validating an options line of text (the context) and there is a failure, -// it is likely a mandatory command argument that is required is missing. This -// function returns the argument that should be present. -// Type: Method. -// Args: None. -// Return: SetCmdArgs_t & - Set of argument objects. -// Throws: None. +// Details: After validating an options line of text (the context) and there is a failure, +// it is likely a mandatory command argument that is required is missing. This +// function returns the argument that should be present. +// Type: Method. +// Args: None. +// Return: SetCmdArgs_t & - Set of argument objects. +// Throws: None. //-- -const CMICmdArgSet::SetCmdArgs_t & CMICmdArgSet::GetArgsThatAreMissing( void ) const +const CMICmdArgSet::SetCmdArgs_t & +CMICmdArgSet::GetArgsThatAreMissing(void) const { - return m_setCmdArgsThatAreMissing; + return m_setCmdArgsThatAreMissing; } //++ ------------------------------------------------------------------------------------ -// Details: After validating an options line of text (the context) and there is a failure, -// it may be because one or more arguments were unable to extract a value. This -// function returns the argument that were found to be invalid. -// Type: Method. -// Args: None. -// Return: SetCmdArgs_t & - Set of argument objects. -// Throws: None. +// Details: After validating an options line of text (the context) and there is a failure, +// it may be because one or more arguments were unable to extract a value. This +// function returns the argument that were found to be invalid. +// Type: Method. +// Args: None. +// Return: SetCmdArgs_t & - Set of argument objects. +// Throws: None. //-- -const CMICmdArgSet::SetCmdArgs_t & CMICmdArgSet::GetArgsThatInvalid( void ) const +const CMICmdArgSet::SetCmdArgs_t & +CMICmdArgSet::GetArgsThatInvalid(void) const { - return m_setCmdArgsThatNotValid; -} + return m_setCmdArgsThatNotValid; +} //++ ------------------------------------------------------------------------------------ -// Details: The list of argument or option (objects) that were specified by the command -// and so recognised when parsed but were not handled. Ideally the command -// should handle all arguments and options presented to it. The command sends -// warning to the MI log file to say that these options were not handled. -// Used as one way to determine option that maybe should really be implemented -// and not just ignored. -// Type: Method. -// Args: None. -// Return: SetCmdArgs_t & - Set of argument objects. -// Throws: None. +// Details: The list of argument or option (objects) that were specified by the command +// and so recognised when parsed but were not handled. Ideally the command +// should handle all arguments and options presented to it. The command sends +// warning to the MI log file to say that these options were not handled. +// Used as one way to determine option that maybe should really be implemented +// and not just ignored. +// Type: Method. +// Args: None. +// Return: SetCmdArgs_t & - Set of argument objects. +// Throws: None. //-- -const CMICmdArgSet::SetCmdArgs_t & CMICmdArgSet::GetArgsNotHandledByCmd( void ) const +const CMICmdArgSet::SetCmdArgs_t & +CMICmdArgSet::GetArgsNotHandledByCmd(void) const { - return m_setCmdArgsNotHandledByCmd; + return m_setCmdArgsNotHandledByCmd; } //++ ------------------------------------------------------------------------------------ -// Details: Given a set of command argument objects parse the context option string to -// find those argument and retrieve their value. If the function fails call -// GetArgsThatAreMissing() to see which commands that were mandatory were -// missing or failed to parse. -// Type: Method. -// Args: vStrMiCmd - (R) Command's name. -// vCmdArgsText - (RW) A command's options or argument. -// Return: MIstatus::success - Functional succeeded. -// MIstatus::failure - Functional failed. -// Throws: None. +// Details: Given a set of command argument objects parse the context option string to +// find those argument and retrieve their value. If the function fails call +// GetArgsThatAreMissing() to see which commands that were mandatory were +// missing or failed to parse. +// Type: Method. +// Args: vStrMiCmd - (R) Command's name. +// vCmdArgsText - (RW) A command's options or argument. +// Return: MIstatus::success - Functional succeeded. +// MIstatus::failure - Functional failed. +// Throws: None. //-- -bool CMICmdArgSet::Validate( const CMIUtilString & vStrMiCmd, CMICmdArgContext & vwCmdArgsText ) +bool +CMICmdArgSet::Validate(const CMIUtilString &vStrMiCmd, CMICmdArgContext &vwCmdArgsText) { - m_cmdArgContext = vwCmdArgsText; - - // Iterate all the arguments or options required by a command - const MIuint nArgs = vwCmdArgsText.GetNumberArgsPresent(); - MIuint nArgsMandatoryCnt = 0; - SetCmdArgs_t::const_iterator it = m_setCmdArgs.begin(); - while( it != m_setCmdArgs.end() ) - { - const CMICmdArgValBase * pArg( *it ); - const CMIUtilString & rArgName( pArg->GetName() ); MIunused( rArgName ); - if( pArg->GetIsMandatory() ) - nArgsMandatoryCnt++; - if( !const_cast< CMICmdArgValBase * >( pArg )->Validate( vwCmdArgsText ) ) - { - if( pArg->GetIsMandatory() && !pArg->GetFound() ) - m_setCmdArgsThatAreMissing.push_back( const_cast< CMICmdArgValBase * >( pArg ) ); - else if( pArg->GetFound() ) - { - if( pArg->GetIsMissingOptions() ) - m_setCmdArgsMissingInfo.push_back( const_cast< CMICmdArgValBase * >( pArg ) ); - else if( !pArg->GetValid() ) - m_setCmdArgsThatNotValid.push_back( const_cast< CMICmdArgValBase * >( pArg ) ); - } - } - if( pArg->GetFound() && !pArg->GetIsHandledByCmd() ) - { - m_bIsArgsPresentButNotHandledByCmd = true; - m_setCmdArgsNotHandledByCmd.push_back( const_cast< CMICmdArgValBase * >( pArg ) ); - } - - // Next - ++it; - } - - // Check that one or more argument objects have any issues to report... - - if( nArgs < nArgsMandatoryCnt ) - { - SetErrorDescription( CMIUtilString::Format( MIRSRC( IDS_CMD_ARGS_ERR_N_OPTIONS_REQUIRED ), nArgsMandatoryCnt ) ); - return MIstatus::failure; - } - - if( IsArgsPresentButNotHandledByCmd() ) - WarningArgsNotHandledbyCmdLogFile( vStrMiCmd ); - - return ValidationFormErrorMessages( vwCmdArgsText ); + m_cmdArgContext = vwCmdArgsText; + + // Iterate all the arguments or options required by a command + const MIuint nArgs = vwCmdArgsText.GetNumberArgsPresent(); + MIuint nArgsMandatoryCnt = 0; + SetCmdArgs_t::const_iterator it = m_setCmdArgs.begin(); + while (it != m_setCmdArgs.end()) + { + const CMICmdArgValBase *pArg(*it); + const CMIUtilString &rArgName(pArg->GetName()); + MIunused(rArgName); + if (pArg->GetIsMandatory()) + nArgsMandatoryCnt++; + if (!const_cast<CMICmdArgValBase *>(pArg)->Validate(vwCmdArgsText)) + { + if (pArg->GetIsMandatory() && !pArg->GetFound()) + m_setCmdArgsThatAreMissing.push_back(const_cast<CMICmdArgValBase *>(pArg)); + else if (pArg->GetFound()) + { + if (pArg->GetIsMissingOptions()) + m_setCmdArgsMissingInfo.push_back(const_cast<CMICmdArgValBase *>(pArg)); + else if (!pArg->GetValid()) + m_setCmdArgsThatNotValid.push_back(const_cast<CMICmdArgValBase *>(pArg)); + } + } + if (pArg->GetFound() && !pArg->GetIsHandledByCmd()) + { + m_bIsArgsPresentButNotHandledByCmd = true; + m_setCmdArgsNotHandledByCmd.push_back(const_cast<CMICmdArgValBase *>(pArg)); + } + + // Next + ++it; + } + + // Check that one or more argument objects have any issues to report... + + if (nArgs < nArgsMandatoryCnt) + { + SetErrorDescription(CMIUtilString::Format(MIRSRC(IDS_CMD_ARGS_ERR_N_OPTIONS_REQUIRED), nArgsMandatoryCnt)); + return MIstatus::failure; + } + + if (IsArgsPresentButNotHandledByCmd()) + WarningArgsNotHandledbyCmdLogFile(vStrMiCmd); + + return ValidationFormErrorMessages(vwCmdArgsText); } //++ ------------------------------------------------------------------------------------ -// Details: Having validated the command's options text and failed for some reason form -// the error message made up with the faults found. -// Type: Method. -// vCmdArgsText - (RW) A command's options or argument. -// Return: MIstatus::success - Functional succeeded. -// MIstatus::failure - Functional failed. -// Throws: None. +// Details: Having validated the command's options text and failed for some reason form +// the error message made up with the faults found. +// Type: Method. +// vCmdArgsText - (RW) A command's options or argument. +// Return: MIstatus::success - Functional succeeded. +// MIstatus::failure - Functional failed. +// Throws: None. //-- -bool CMICmdArgSet::ValidationFormErrorMessages( const CMICmdArgContext & vwCmdArgsText ) +bool +CMICmdArgSet::ValidationFormErrorMessages(const CMICmdArgContext &vwCmdArgsText) { - CMIUtilString strListMissing; - CMIUtilString strListInvalid; - CMIUtilString strListMissingInfo; - const bool bArgsMissing = (m_setCmdArgsThatAreMissing.size() > 0); - const bool bArgsInvalid = (m_setCmdArgsThatNotValid.size() > 0); - const bool bArgsMissingInfo = (m_setCmdArgsMissingInfo.size() > 0); - if( !(bArgsMissing || bArgsInvalid || bArgsMissingInfo) ) - return MIstatus::success; - if( bArgsMissing ) - { - MIuint i = 0; - SetCmdArgs_t::const_iterator it = m_setCmdArgsThatAreMissing.begin(); - while( it != m_setCmdArgsThatAreMissing.end() ) - { - if( i++ > 0 ) - strListMissing += m_constStrCommaSpc; - - const CMICmdArgValBase * pArg( *it ); - strListMissing += pArg->GetName(); - - // Next - ++it; - } - } - if( bArgsInvalid ) - { - MIuint i = 0; - SetCmdArgs_t::const_iterator it = m_setCmdArgsThatNotValid.begin(); - while( it != m_setCmdArgsThatNotValid.end() ) - { - if( i++ > 0 ) - strListMissing += m_constStrCommaSpc; - - const CMICmdArgValBase * pArg( *it ); - strListInvalid += pArg->GetName(); - - // Next - ++it; - } - } - if( bArgsMissingInfo ) - { - MIuint i = 0; - SetCmdArgs_t::const_iterator it = m_setCmdArgsMissingInfo.begin(); - while( it != m_setCmdArgsMissingInfo.end() ) - { - if( i++ > 0 ) - strListMissingInfo += m_constStrCommaSpc; - - const CMICmdArgValBase * pArg( *it ); - strListMissingInfo += pArg->GetName(); - - // Next - ++it; - } - } - - bool bHaveOneError = false; - CMIUtilString strError = MIRSRC( IDS_CMD_ARGS_ERR_PREFIX_MSG ); - if( bArgsMissing && bArgsInvalid ) - { - bHaveOneError = true; - strError += CMIUtilString::Format( MIRSRC( IDS_CMD_ARGS_ERR_VALIDATION_MAN_INVALID ), strListMissing.c_str(), strListInvalid.c_str() ); - } - if( bArgsMissing ) - { - if( bHaveOneError ) - strError += ". "; - bHaveOneError = true; - strError += CMIUtilString::Format( MIRSRC( IDS_CMD_ARGS_ERR_VALIDATION_MANDATORY ), strListMissing.c_str() ); - } - if( bArgsMissingInfo ) - { - if( bHaveOneError ) - strError += ". "; - bHaveOneError = true; - strError += CMIUtilString::Format( MIRSRC( IDS_CMD_ARGS_ERR_VALIDATION_MISSING_INF ), strListMissingInfo.c_str() ); - } - if( bArgsInvalid ) - { - if( bHaveOneError ) - strError += ". "; - bHaveOneError = true; - strError += CMIUtilString::Format( MIRSRC( IDS_CMD_ARGS_ERR_VALIDATION_INVALID ), strListInvalid.c_str() ); - } - if( !vwCmdArgsText.IsEmpty() ) - { - if( bHaveOneError ) - strError += ". "; - bHaveOneError = true; - strError += CMIUtilString::Format( MIRSRC( IDS_CMD_ARGS_ERR_CONTEXT_NOT_ALL_EATTEN ), vwCmdArgsText.GetArgsLeftToParse().c_str() ); - } - - if( bHaveOneError ) - { - SetErrorDescription( strError ); - return MIstatus::failure; - } - - return MIstatus::success; + CMIUtilString strListMissing; + CMIUtilString strListInvalid; + CMIUtilString strListMissingInfo; + const bool bArgsMissing = (m_setCmdArgsThatAreMissing.size() > 0); + const bool bArgsInvalid = (m_setCmdArgsThatNotValid.size() > 0); + const bool bArgsMissingInfo = (m_setCmdArgsMissingInfo.size() > 0); + if (!(bArgsMissing || bArgsInvalid || bArgsMissingInfo)) + return MIstatus::success; + if (bArgsMissing) + { + MIuint i = 0; + SetCmdArgs_t::const_iterator it = m_setCmdArgsThatAreMissing.begin(); + while (it != m_setCmdArgsThatAreMissing.end()) + { + if (i++ > 0) + strListMissing += m_constStrCommaSpc; + + const CMICmdArgValBase *pArg(*it); + strListMissing += pArg->GetName(); + + // Next + ++it; + } + } + if (bArgsInvalid) + { + MIuint i = 0; + SetCmdArgs_t::const_iterator it = m_setCmdArgsThatNotValid.begin(); + while (it != m_setCmdArgsThatNotValid.end()) + { + if (i++ > 0) + strListMissing += m_constStrCommaSpc; + + const CMICmdArgValBase *pArg(*it); + strListInvalid += pArg->GetName(); + + // Next + ++it; + } + } + if (bArgsMissingInfo) + { + MIuint i = 0; + SetCmdArgs_t::const_iterator it = m_setCmdArgsMissingInfo.begin(); + while (it != m_setCmdArgsMissingInfo.end()) + { + if (i++ > 0) + strListMissingInfo += m_constStrCommaSpc; + + const CMICmdArgValBase *pArg(*it); + strListMissingInfo += pArg->GetName(); + + // Next + ++it; + } + } + + bool bHaveOneError = false; + CMIUtilString strError = MIRSRC(IDS_CMD_ARGS_ERR_PREFIX_MSG); + if (bArgsMissing && bArgsInvalid) + { + bHaveOneError = true; + strError += CMIUtilString::Format(MIRSRC(IDS_CMD_ARGS_ERR_VALIDATION_MAN_INVALID), strListMissing.c_str(), strListInvalid.c_str()); + } + if (bArgsMissing) + { + if (bHaveOneError) + strError += ". "; + bHaveOneError = true; + strError += CMIUtilString::Format(MIRSRC(IDS_CMD_ARGS_ERR_VALIDATION_MANDATORY), strListMissing.c_str()); + } + if (bArgsMissingInfo) + { + if (bHaveOneError) + strError += ". "; + bHaveOneError = true; + strError += CMIUtilString::Format(MIRSRC(IDS_CMD_ARGS_ERR_VALIDATION_MISSING_INF), strListMissingInfo.c_str()); + } + if (bArgsInvalid) + { + if (bHaveOneError) + strError += ". "; + bHaveOneError = true; + strError += CMIUtilString::Format(MIRSRC(IDS_CMD_ARGS_ERR_VALIDATION_INVALID), strListInvalid.c_str()); + } + if (!vwCmdArgsText.IsEmpty()) + { + if (bHaveOneError) + strError += ". "; + bHaveOneError = true; + strError += CMIUtilString::Format(MIRSRC(IDS_CMD_ARGS_ERR_CONTEXT_NOT_ALL_EATTEN), vwCmdArgsText.GetArgsLeftToParse().c_str()); + } + + if (bHaveOneError) + { + SetErrorDescription(strError); + return MIstatus::failure; + } + + return MIstatus::success; } //++ ------------------------------------------------------------------------------------ -// Details: Ask if the command's argument options text had any arguments. -// Type: Method. -// Args: None. -// Return: bool - True = Has one or more arguments present, false = no arguments. -// Throws: None. +// Details: Ask if the command's argument options text had any arguments. +// Type: Method. +// Args: None. +// Return: bool - True = Has one or more arguments present, false = no arguments. +// Throws: None. //-- -bool CMICmdArgSet::IsArgContextEmpty( void ) const +bool +CMICmdArgSet::IsArgContextEmpty(void) const { - return m_cmdArgContext.IsEmpty(); + return m_cmdArgContext.IsEmpty(); } //++ ------------------------------------------------------------------------------------ -// Details: Retrieve the number of arguments that are being used for the command. -// Type: Method. -// Args: None. -// Return: MIuint - Argument count. -// Throws: None. +// Details: Retrieve the number of arguments that are being used for the command. +// Type: Method. +// Args: None. +// Return: MIuint - Argument count. +// Throws: None. //-- -MIuint CMICmdArgSet::GetCount( void ) const +MIuint +CMICmdArgSet::GetCount(void) const { - return m_setCmdArgs.size(); + return m_setCmdArgs.size(); } - + //++ ------------------------------------------------------------------------------------ -// Details: Given a set of command argument objects retrieve the argument with the -// specified name. -// Type: Method. -// Args: vpArg - (W) A pointer to a command's argument object. -// Return: True - Argument found. -// False - Argument not found. -// Throws: None. +// Details: Given a set of command argument objects retrieve the argument with the +// specified name. +// Type: Method. +// Args: vpArg - (W) A pointer to a command's argument object. +// Return: True - Argument found. +// False - Argument not found. +// Throws: None. //-- -bool CMICmdArgSet::GetArg( const CMIUtilString & vArgName, CMICmdArgValBase *& vpArg ) const +bool +CMICmdArgSet::GetArg(const CMIUtilString &vArgName, CMICmdArgValBase *&vpArg) const { - bool bFound = false; - SetCmdArgs_t::const_iterator it = m_setCmdArgs.begin(); - while( it != m_setCmdArgs.end() ) - { - CMICmdArgValBase * pArg( *it ); - if( pArg->GetName() == vArgName ) - { - bFound = true; - vpArg = pArg; - break; - } - - // Next - ++it; - } - - return bFound; + bool bFound = false; + SetCmdArgs_t::const_iterator it = m_setCmdArgs.begin(); + while (it != m_setCmdArgs.end()) + { + CMICmdArgValBase *pArg(*it); + if (pArg->GetName() == vArgName) + { + bFound = true; + vpArg = pArg; + break; + } + + // Next + ++it; + } + + return bFound; } - + //++ ------------------------------------------------------------------------------------ -// Details: Write a warning message to the MI Log file about the command's arguments or -// options that were found present but not handled. -// Type: Method. -// Args: vrCmdName - (R) The command's name. -// Return: None. -// Throws: None. +// Details: Write a warning message to the MI Log file about the command's arguments or +// options that were found present but not handled. +// Type: Method. +// Args: vrCmdName - (R) The command's name. +// Return: None. +// Throws: None. //-- -void CMICmdArgSet::WarningArgsNotHandledbyCmdLogFile( const CMIUtilString & vrCmdName ) +void +CMICmdArgSet::WarningArgsNotHandledbyCmdLogFile(const CMIUtilString &vrCmdName) { #if MICONFIG_GIVE_WARNING_CMD_ARGS_NOT_HANDLED - CMIUtilString strArgsNotHandled; - const CMICmdArgSet::SetCmdArgs_t & rSetArgs = GetArgsNotHandledByCmd(); - MIuint nCnt = 0; - CMICmdArgSet::SetCmdArgs_t::const_iterator it = rSetArgs.begin(); - while( it != rSetArgs.end() ) - { - if( nCnt++ > 0 ) - strArgsNotHandled += m_constStrCommaSpc; - const CMICmdArgValBase * pArg = *it; - strArgsNotHandled += pArg->GetName(); - - // Next - ++it; - } - - const CMIUtilString strWarningMsg( CMIUtilString::Format( MIRSRC( IDS_CMD_WRN_ARGS_NOT_HANDLED ), vrCmdName.c_str(), strArgsNotHandled.c_str() ) ); - m_pLog->WriteLog( strWarningMsg ); + CMIUtilString strArgsNotHandled; + const CMICmdArgSet::SetCmdArgs_t &rSetArgs = GetArgsNotHandledByCmd(); + MIuint nCnt = 0; + CMICmdArgSet::SetCmdArgs_t::const_iterator it = rSetArgs.begin(); + while (it != rSetArgs.end()) + { + if (nCnt++ > 0) + strArgsNotHandled += m_constStrCommaSpc; + const CMICmdArgValBase *pArg = *it; + strArgsNotHandled += pArg->GetName(); + + // Next + ++it; + } + + const CMIUtilString strWarningMsg( + CMIUtilString::Format(MIRSRC(IDS_CMD_WRN_ARGS_NOT_HANDLED), vrCmdName.c_str(), strArgsNotHandled.c_str())); + m_pLog->WriteLog(strWarningMsg); #endif // MICONFIG_GIVE_WARNING_CMD_ARGS_NOT_HANDLED } |