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%41F608450399.cm preserve=no//## end module%41F608450399.cm//## begin module%41F608450399.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%41F608450399.cp//## Module: TransactionSpecificationValue%41F608450399; Pseudo Package specification//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4//## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\TransactionSpecificationValue.h#ifndef TransactionSpecificationValue_h#define TransactionSpecificationValue_h 1//## begin module%41F608450399.additionalIncludes preserve=no//## end module%41F608450399.additionalIncludes//## begin module%41F608450399.includes preserve=yes#include <iostream>#include <string>//## end module%41F608450399.includes// FieldExpression#include "FieldExpression.h"class TransactionSpecification;class DefinedVariableTable;class EvaluationContext;//## begin module%41F608450399.additionalDeclarations preserve=yes//## end module%41F608450399.additionalDeclarations//## begin TransactionSpecificationValue%41F608450399.preface preserve=yes//## end TransactionSpecificationValue%41F608450399.preface//## Class: TransactionSpecificationValue%41F608450399; private// A value of a field in a transaction specification. During transaction// generation, specifications are instantiated by evaluating its values.//## Category: TransactionTestManager::Transaction Specification%41FD9D7902B3//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4//## Persistence: Transient//## Cardinality/Multiplicity: n//## Uses: <unnamed>%420472570148;Iteration { -> }//## Uses: <unnamed>%4204725F0233;TestScenario { -> }//## Uses: <unnamed>%4204728C01D5;XMLSchema::IXmlSchemaWrapperSchema { -> }//## Uses: <unnamed>%420AD8DF0202;DefinedVariableTable { -> F}//## Uses: <unnamed>%421176A70068;EvaluationContext { -> F}class TransactionSpecificationValue{//## begin TransactionSpecificationValue%41F608450399.initialDeclarations preserve=yes//## end TransactionSpecificationValue%41F608450399.initialDeclarationspublic://## Constructors (specified)//## Operation: TransactionSpecificationValue%420429860176// This constructor creates an instance for a given xpath.TransactionSpecificationValue (const std::string &xPath, // The xpath of the field.TransactionSpecification& transaction // The transaction for which this field is defined. While we do not accept// ownership over this instance, we do assume its validity for the remainder// of our lifetime.);//## Operation: TransactionSpecificationValue%41F705C90020// This constructor expects values for all attributes.TransactionSpecificationValue (const std::string &xPath, // The xpath of the field.const std::string &value, // The value.const bool &obsolete // Of value true when the value is obsolete, and of value false otherwise.);//## Destructor (generated)virtual ~TransactionSpecificationValue();//## Other Operations (specified)//## Operation: evaluate%420AC7E6015D// Evaluate the expression of this field, and evaluate to true, or to false// when any expression cannot be evaluated.const bool evaluate (std::string &value, // The resulting value.const bool &sideEffect, // When true, evaluation is allowed to have side effects, otherwise side// effects must be suppressed. For example, when true, a call to a sequence// generator may allocate a new number from the sequence: when false, the call// must not change the sate of the sequence generator.//// One usage of this: when generating a transaction side effects are allowed,// when rendering the hint to display for a field value side effects are not// allowed.EvaluationContext& evaluationContext, // The evaluation context.bool &postponed // Set the actual argument to true when evaluation is postponed, and to false// otherwise.);//## Operation: getExpression%41F7167C0014// Evaluate to the expression of this instance.const std::string & getExpression () const;//## Operation: getXPath%41F766AF01D4// Evaluate to the xpath of this instance.const std::string & getXPath () const;//## Operation: isMarked%41F7058D0276// Evaluate to true when this value is marked, and to false otherwise.const bool isMarked () const;//## Operation: isObsolete%41F7228502A8// Evaluate to true when this value is obsolete, and to false otherwise.const bool isObsolete () const;//## Operation: mark%41F705930342// Mark this value.void mark ();//## Operation: setExpression%42042A51030C// Set the expression of this instance, and evaluate to the resulting value.const std::string & setExpression (const std::string &value // The value.);//## Operation: unmark%41F7070602A0// Unmark this value.void unmark ();// Additional Public Declarations//## begin TransactionSpecificationValue%41F608450399.public preserve=yes//## end TransactionSpecificationValue%41F608450399.publicprotected:// Additional Protected Declarations//## begin TransactionSpecificationValue%41F608450399.protected preserve=yes//## end TransactionSpecificationValue%41F608450399.protectedprivate://## Constructors (generated)TransactionSpecificationValue();TransactionSpecificationValue(const TransactionSpecificationValue &right);//## Assignment Operation (generated)TransactionSpecificationValue & operator=(const TransactionSpecificationValue &right);// Data Members for Class Attributes//## Attribute: marked%41F704800286// Of value true when this field is marked, and false otherwise.//## begin TransactionSpecificationValue::marked%41F704800286.attr preserve=no private: bool {VA} falsebool m_marked;//## end TransactionSpecificationValue::marked%41F704800286.attr//## Attribute: obsolete%41F7222B01BE// Of value true when the value is obsolete, and of value false otherwise.//## begin TransactionSpecificationValue::obsolete%41F7222B01BE.attr preserve=no private: bool {VA}bool m_obsolete;//## end TransactionSpecificationValue::obsolete%41F7222B01BE.attr//## Attribute: inPayload%41F763980317// When true, the value is in the payload, otherwise it is in the header.//## begin TransactionSpecificationValue::inPayload%41F763980317.attr preserve=no private: bool {VA}bool m_inPayload;//## end TransactionSpecificationValue::inPayload%41F763980317.attr//## Attribute: xPath%41F7044B0228// The xpath of the field.//## begin TransactionSpecificationValue::xPath%41F7044B0228.attr preserve=no private: std::string {VA}std::string m_xPath;//## end TransactionSpecificationValue::xPath%41F7044B0228.attr// Data Members for Associations//## Association: TransactionTestManager::Transaction Generation::<unnamed>%4204701D02DA//## Role: TransactionSpecificationValue::transaction%4204701E002B// The transaction for which this field is defined. While we do not accept// ownership over this instance, we do assume its validity for the remainder of// our lifetime.//## begin TransactionSpecificationValue::transaction%4204701E002B.role preserve=no private: TransactionSpecification {1 -> 1RFHAN}TransactionSpecification *m_transaction;//## end TransactionSpecificationValue::transaction%4204701E002B.role//## Association: TransactionTestManager::Symbol Table::<unnamed>%420AC6610015//## Role: TransactionSpecificationValue::expression%420AC661015D// expression//## begin TransactionSpecificationValue::expression%420AC661015D.role preserve=no private: FieldExpression {1 -> 1VHgAN}FieldExpression m_expression;//## end TransactionSpecificationValue::expression%420AC661015D.role// Additional Private Declarations//## begin TransactionSpecificationValue%41F608450399.private preserve=yes//## end TransactionSpecificationValue%41F608450399.privateprivate: //## implementation// Additional Implementation Declarations//## begin TransactionSpecificationValue%41F608450399.implementation preserve=yes//## end TransactionSpecificationValue%41F608450399.implementation};//## begin TransactionSpecificationValue%41F608450399.postscript preserve=yes//## end TransactionSpecificationValue%41F608450399.postscript// Class TransactionSpecificationValue//## begin module%41F608450399.epilog preserve=yes//## end module%41F608450399.epilog#endif