//## begin module%1.7%.codegen_version preserve=yes // Read the documentation to learn more about C++ code generator // versioning. //## end module%1.7%.codegen_version //## begin module%41FDA5210143.cm preserve=no //## end module%41FDA5210143.cm //## begin module%41FDA5210143.cp preserve=no // C O P Y R I G H T N O T I C E // This material is confidential to ERG and may not be disclosed in whole // or in part to any third party nor used in any manner whatsoever other // than for the purposes expressly consented to by ERG in writing. // // This material is also copyright and may not be reproduced, stored in a // retrieval system or transmitted in any form or by any means in whole or // in part without the express written consent of ERG. //## end module%41FDA5210143.cp //## Module: TransactionFieldTemplate%41FDA5210143; Pseudo Package body //## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4 //## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\TransactionFieldTemplate.cpp //## begin module%41FDA5210143.additionalIncludes preserve=no //## end module%41FDA5210143.additionalIncludes //## begin module%41FDA5210143.includes preserve=yes #pragma warn -com #include #pragma warn +com //## end module%41FDA5210143.includes // TransactionFieldTemplate #include "TransactionFieldTemplate.h" //## begin module%41FDA5210143.additionalDeclarations preserve=yes //## end module%41FDA5210143.additionalDeclarations // Class TransactionFieldTemplate //## Operation: TransactionFieldTemplate%41FF0D770177 TransactionFieldTemplate::TransactionFieldTemplate (const std::string ®ularExpression) //## begin TransactionFieldTemplate::TransactionFieldTemplate%41FF0D770177.hasinit preserve=no : m_compiledRegularExpression(0) //## end TransactionFieldTemplate::TransactionFieldTemplate%41FF0D770177.hasinit //## begin TransactionFieldTemplate::TransactionFieldTemplate%41FF0D770177.initialization preserve=yes , m_regularExpression( regularExpression ) //## end TransactionFieldTemplate::TransactionFieldTemplate%41FF0D770177.initialization { //## begin TransactionFieldTemplate::TransactionFieldTemplate%41FF0D770177.body preserve=yes //## end TransactionFieldTemplate::TransactionFieldTemplate%41FF0D770177.body } //## Operation: TransactionFieldTemplate%41FF272F013A TransactionFieldTemplate::TransactionFieldTemplate (const std::string ®ularExpression, const std::string &value) //## begin TransactionFieldTemplate::TransactionFieldTemplate%41FF272F013A.hasinit preserve=no : m_compiledRegularExpression(0) //## end TransactionFieldTemplate::TransactionFieldTemplate%41FF272F013A.hasinit //## begin TransactionFieldTemplate::TransactionFieldTemplate%41FF272F013A.initialization preserve=yes , m_regularExpression( regularExpression ), m_value( value ) //## end TransactionFieldTemplate::TransactionFieldTemplate%41FF272F013A.initialization { //## begin TransactionFieldTemplate::TransactionFieldTemplate%41FF272F013A.body preserve=yes //## end TransactionFieldTemplate::TransactionFieldTemplate%41FF272F013A.body } TransactionFieldTemplate::~TransactionFieldTemplate() { //## begin TransactionFieldTemplate::~TransactionFieldTemplate%41FDA5210143_dest.body preserve=yes if ( m_compiledRegularExpression ) { regfree( m_compiledRegularExpression ); delete m_compiledRegularExpression; m_compiledRegularExpression = 0; } //## end TransactionFieldTemplate::~TransactionFieldTemplate%41FDA5210143_dest.body } //## Other Operations (implementation) //## Operation: getValue%41FF21A6017E const std::string & TransactionFieldTemplate::getValue () const { //## begin TransactionFieldTemplate::getValue%41FF21A6017E.body preserve=yes return ( m_value ); //## end TransactionFieldTemplate::getValue%41FF21A6017E.body } //## Operation: isMatch%41FF654E035B const bool TransactionFieldTemplate::isMatch (const std::string &xpath) const { //## begin TransactionFieldTemplate::isMatch%41FF654E035B.body preserve=yes if ( !m_compiledRegularExpression ) { m_compiledRegularExpression = new regex_t; const int status = regcomp( m_compiledRegularExpression, m_regularExpression.c_str(), REG_ICASE ); if ( status != 0 ) { char message[ 1024 ]; regerror( status, m_compiledRegularExpression, message, sizeof( message ) ); MTHROW( std::runtime_error, \ message ); } } const int status = regexec( m_compiledRegularExpression, xpath.c_str(), 0, 0, 0 ); switch ( status ) { case 0: return ( true ); case REG_NOMATCH: return ( false ); default: { char message[ 1024 ]; regerror( status, m_compiledRegularExpression, message, sizeof( message ) ); MTHROW( std::runtime_error, \ message ); } } //## end TransactionFieldTemplate::isMatch%41FF654E035B.body } //## Operation: setValue%41FF2F7C003C const std::string & TransactionFieldTemplate::setValue (const std::string &value) { //## begin TransactionFieldTemplate::setValue%41FF2F7C003C.body preserve=yes return ( m_value = value ); //## end TransactionFieldTemplate::setValue%41FF2F7C003C.body } // Additional Declarations //## begin TransactionFieldTemplate%41FDA5210143.declarations preserve=yes //## end TransactionFieldTemplate%41FDA5210143.declarations //## begin module%41FDA5210143.epilog preserve=yes //## end module%41FDA5210143.epilog