Subversion Repositories DevTools

Rev

Blame | Last modification | View Log | RSS feed

//## 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 specification
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
//## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\TransactionFieldTemplate.h

#ifndef TransactionFieldTemplate_h
#define TransactionFieldTemplate_h 1

//## begin module%41FDA5210143.additionalIncludes preserve=no
//## end module%41FDA5210143.additionalIncludes

//## begin module%41FDA5210143.includes preserve=yes
#include <pcreposix.h>
#include <string>
//## end module%41FDA5210143.includes

//## begin module%41FDA5210143.additionalDeclarations preserve=yes
//## end module%41FDA5210143.additionalDeclarations


//## begin TransactionFieldTemplate%41FDA5210143.preface preserve=yes
//## end TransactionFieldTemplate%41FDA5210143.preface

//## Class: TransactionFieldTemplate%41FDA5210143; private
//      This class represents a transaction field template.  Values for fields may
//      be specified as constant values, variables or functions.
//## Category: TransactionTestManager::Transaction Templates%41FDA12000E7
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
//## Persistence: Transient
//## Cardinality/Multiplicity: n



class TransactionFieldTemplate 
{
  //## begin TransactionFieldTemplate%41FDA5210143.initialDeclarations preserve=yes
  //## end TransactionFieldTemplate%41FDA5210143.initialDeclarations

  public:
    //## Constructors (specified)
      //## Operation: TransactionFieldTemplate%41FF0D770177
      //        This constructor takes values for all attributes.
      TransactionFieldTemplate (const std::string &regularExpression    // The regular expression that defines to which fields this template may be
        // applied.
      );

      //## Operation: TransactionFieldTemplate%41FF272F013A
      //        This constructor creates a null instance, with only the key elaborated.
      TransactionFieldTemplate (const std::string &regularExpression,   // The regular expression that defines to which fields this template may be
        // applied.
      const std::string &value  // The value of this field template.
      );

    //## Destructor (generated)
      virtual ~TransactionFieldTemplate();


    //## Other Operations (specified)
      //## Operation: getValue%41FF21A6017E
      //        Evaluate to the value of this field.
      const std::string & getValue () const;

      //## Operation: isMatch%41FF654E035B
      //        Evaluate to true when the given XPath is a match for this template, and to
      //        false otherwise.
      const bool isMatch (const std::string &xpath      // The XPath.
      ) const;

      //## Operation: setValue%41FF2F7C003C
      //        Set the value of this field to the given value and evaluate to it.
      const std::string & setValue (const std::string &value    // The value.
      );

    // Additional Public Declarations
      //## begin TransactionFieldTemplate%41FDA5210143.public preserve=yes
      //## end TransactionFieldTemplate%41FDA5210143.public

  protected:
    // Additional Protected Declarations
      //## begin TransactionFieldTemplate%41FDA5210143.protected preserve=yes
      //## end TransactionFieldTemplate%41FDA5210143.protected

  private:
    //## Constructors (generated)
      TransactionFieldTemplate();

      TransactionFieldTemplate(const TransactionFieldTemplate &right);

    //## Assignment Operation (generated)
      TransactionFieldTemplate & operator=(const TransactionFieldTemplate &right);

    // Data Members for Class Attributes

      //## Attribute: compiledRegularExpression%41FF604A0339
      //        The compiled regular expression.
      //## begin TransactionFieldTemplate::compiledRegularExpression%41FF604A0339.attr preserve=no  private: regex_t {RAM} 0
      mutable regex_t *m_compiledRegularExpression;
      //## end TransactionFieldTemplate::compiledRegularExpression%41FF604A0339.attr

      //## Attribute: regularExpression%41FF0CA9009C
      //        The regular expression that defines to which fields this template may be
      //        applied.
      //## begin TransactionFieldTemplate::regularExpression%41FF0CA9009C.attr preserve=no  private: std::string {VAC} 
      const std::string m_regularExpression;
      //## end TransactionFieldTemplate::regularExpression%41FF0CA9009C.attr

      //## Attribute: value%41FF0CDF01D5
      //        The value of this field template.
      //## begin TransactionFieldTemplate::value%41FF0CDF01D5.attr preserve=no  private: std::string {VA} 
      std::string m_value;
      //## end TransactionFieldTemplate::value%41FF0CDF01D5.attr

    // Additional Private Declarations
      //## begin TransactionFieldTemplate%41FDA5210143.private preserve=yes
      //## end TransactionFieldTemplate%41FDA5210143.private

  private: //## implementation
    // Additional Implementation Declarations
      //## begin TransactionFieldTemplate%41FDA5210143.implementation preserve=yes
      //## end TransactionFieldTemplate%41FDA5210143.implementation

};

//## begin TransactionFieldTemplate%41FDA5210143.postscript preserve=yes
//## end TransactionFieldTemplate%41FDA5210143.postscript

// Class TransactionFieldTemplate 

//## begin module%41FDA5210143.epilog preserve=yes
//## end module%41FDA5210143.epilog


#endif