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%4212D05100DB.cm preserve=no
//## end module%4212D05100DB.cm

//## begin module%4212D05100DB.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%4212D05100DB.cp

//## Module: MacQualification%4212D05100DB; Pseudo Package body
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
//## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\MacQualification.cpp

//## begin module%4212D05100DB.additionalIncludes preserve=no
//## end module%4212D05100DB.additionalIncludes

//## begin module%4212D05100DB.includes preserve=yes
#pragma warn -com
#include <LoggingMacros.h>
#pragma warn +com
//## end module%4212D05100DB.includes

// Iteration
#include "Iteration.h"
// TestScenario
#include "TestScenario.h"
// IXmlSchemaWrapperString
#include "IXmlSchemaWrapperString.h"
// IXmlSchemaWrapperElement
#include "IXmlSchemaWrapperElement.h"
// IXmlSchemaWrapperFactory
#include "IXmlSchemaWrapperFactory.h"
// MacQualification
#include "MacQualification.h"
// EvaluationContext
#include "EvaluationContext.h"
// TransactionStructure
#include "TransactionStructure.h"
// TransactionSpecification
#include "TransactionSpecification.h"
//## begin module%4212D05100DB.additionalDeclarations preserve=yes
#include <sstream>
//## end module%4212D05100DB.additionalDeclarations


// Class MacQualification 

//## begin MacQualification::datatype%4236A1AE03DB.attr preserve=no  private: static AnsiString {VAC} "Struct"
const AnsiString MacQualification::g_datatype = "Struct";
//## end MacQualification::datatype%4236A1AE03DB.attr

//## begin MacQualification::isInMac%4212F476023C.attr preserve=no  private: static AnsiString {VAC} "true"
const AnsiString MacQualification::g_isInMac = "true";
//## end MacQualification::isInMac%4212F476023C.attr

//## Operation: MacQualification%4212D08F0291
MacQualification::MacQualification (EvaluationContext& evaluationContext)
  //## begin MacQualification::MacQualification%4212D08F0291.hasinit preserve=no
      : m_inMac(0),
        m_evaluationContext(0),
        m_datatype(0)
  //## end MacQualification::MacQualification%4212D08F0291.hasinit
  //## begin MacQualification::MacQualification%4212D08F0291.initialization preserve=yes
  //## end MacQualification::MacQualification%4212D08F0291.initialization
{
  //## begin MacQualification::MacQualification%4212D08F0291.body preserve=yes

        m_evaluationContext     = &evaluationContext;

        m_inMac = &evaluationContext.
                getTransaction().
                        getScenario().
                                getIteration().
                                        getSchemaWrapperFactory().
                                                createString();
        m_datatype = &evaluationContext.
                getTransaction().
                        getScenario().
                                getIteration().
                                        getSchemaWrapperFactory().
                                                createString();

  //## end MacQualification::MacQualification%4212D08F0291.body
}


MacQualification::~MacQualification()
{
  //## begin MacQualification::~MacQualification%4212D05100DB_dest.body preserve=yes

        if ( m_inMac )
        {
                m_evaluationContext->
                        getTransaction().
                                getScenario().
                                        getIteration().
                                                getSchemaWrapperFactory().
                                                        destroyString( *m_inMac );
                m_inMac = 0;
        }

        if ( m_datatype )
        {
                m_evaluationContext->
                        getTransaction().
                                getScenario().
                                        getIteration().
                                                getSchemaWrapperFactory().
                                                        destroyString( *m_datatype );
                m_datatype = 0;
        }

        m_evaluationContext = 0;        // We don't own this.

  //## end MacQualification::~MacQualification%4212D05100DB_dest.body
}



//## Other Operations (implementation)
//## Operation: qualifySerialisation%423688600282
const bool XSW_STDCALL MacQualification::qualifySerialisation (XMLSchema::IXmlSchemaWrapperElement& element)
{
  //## begin MacQualification::qualifySerialisation%423688600282.body preserve=yes

        if ( !element.isField() ||
                 ( element.getAttributeValue( "inMac", *m_inMac ) &&
                   g_isInMac.AnsiCompareIC( m_inMac->c_str() ) == 0 ) ||
                 ( element.getAttributeValue( "datatype", *m_datatype ) &&
                   g_datatype.AnsiCompareIC( m_datatype->c_str() ) == 0 ) )
        {
                MDETAIL( "Qualifying \"" << element.getName() << "\" for serialisation." );

                return ( true );
        }

        return ( false );

  //## end MacQualification::qualifySerialisation%423688600282.body
}

// Additional Declarations
  //## begin MacQualification%4212D05100DB.declarations preserve=yes
  //## end MacQualification%4212D05100DB.declarations

//## begin module%4212D05100DB.epilog preserve=yes
//## end module%4212D05100DB.epilog