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

//## begin module%42103A8C03B7.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%42103A8C03B7.cp

//## Module: Sequence%42103A8C03B7; Pseudo Package specification
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
//## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\Sequence.h

#ifndef Sequence_h
#define Sequence_h 1

//## begin module%42103A8C03B7.additionalIncludes preserve=no
//## end module%42103A8C03B7.additionalIncludes

//## begin module%42103A8C03B7.includes preserve=yes
//## end module%42103A8C03B7.includes

//## begin module%42103A8C03B7.additionalDeclarations preserve=yes
#include <string>
//## end module%42103A8C03B7.additionalDeclarations


//## begin Sequence%42103A8C03B7.preface preserve=yes
//## end Sequence%42103A8C03B7.preface

//## Class: Sequence%42103A8C03B7; private
//      A class for representing a sequence.
//## Category: TransactionTestManager::Sequence Generators%42103A59009B
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
//## Persistence: Transient
//## Cardinality/Multiplicity: n



class Sequence 
{
  //## begin Sequence%42103A8C03B7.initialDeclarations preserve=yes
  //## end Sequence%42103A8C03B7.initialDeclarations

  public:
    //## Constructors (specified)
      //## Operation: Sequence%421052120266
      //        The only constructor.
      Sequence (const std::string &name,        // The name of this sequence.
      const int &first  // The first value in the sequence.
      );

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


    //## Other Operations (specified)
      //## Operation: getName%4210536E010E
      //        Evaluate to the name of this sequence.
      const std::string & getName () const;

      //## Operation: getValue%421052480350
      //        Evaluate to the current value of this sequence.
      const int & getValue () const;

      //## Operation: incrementValue%4210525D0208
      //        Increment the current value and evaluate to it.
      const int & incrementValue (const int &first,     // The lower bound of the range of this sequence.
      const int &last,  // The upper bound of the range of this sequence.
      const int &increment = 1  // The value by which to increment the sequence.
      );

      //## Operation: isDirty%421199D5032E
      //        Evaluate to true when the sequence is dirty and needs to be asserted into
      //        the database, and to false otherwise.
      const bool isDirty () const;

      //## Operation: isPersisted%4210531902B4
      //        Evalaute to true when this sequence is persisted, and to false when it is
      //        transient.
      const bool & isPersisted () const;

      //## Operation: isUpdate%421053450227
      //        Evaluate to true when the sequence exists and must be updated, and to false
      //        when it is new and must be created.
      const bool & isUpdate () const;

      //## Operation: setDirty%42119A580277
      //        Set the dirty bit.
      void setDirty (const bool &value  // The new value of the dirty bit.
      );

      //## Operation: setPersist%421053B501D9
      //        Define whether this sequence is persisted or whether it is transient.
      const bool & setPersist (const bool &value        // The value.
      );

      //## Operation: setUpdate%42105401020D
      //        Define whether this sequence exists and must be updated or whether it is new
      //        and must be created.
      const bool & setUpdate (const bool &value // The value.
      );

      //## Operation: setValue%421053980341
      //        Set the current value of this sequence and evaluate to it.
      const int & setValue (const int &value    // The value.
      );

    // Additional Public Declarations
      //## begin Sequence%42103A8C03B7.public preserve=yes
      //## end Sequence%42103A8C03B7.public

  protected:
    // Additional Protected Declarations
      //## begin Sequence%42103A8C03B7.protected preserve=yes
      //## end Sequence%42103A8C03B7.protected

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

      Sequence(const Sequence &right);

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

    // Data Members for Class Attributes

      //## Attribute: dirty%421199A60050
      //        Of value true when the sequence is dirty and needs to be asserted into the
      //        database, and false otherwise.
      //## begin Sequence::dirty%421199A60050.attr preserve=no  private: bool {VA} true
      bool m_dirty;
      //## end Sequence::dirty%421199A60050.attr

      //## Attribute: name%42104040027A
      //        The name of this sequence.
      //## begin Sequence::name%42104040027A.attr preserve=no  private: std::string {VAC} name
      const std::string m_name;
      //## end Sequence::name%42104040027A.attr

      //## Attribute: persisted%42104074023B
      //        Of value true when this sequence is persisted, and false otherwise.
      //## begin Sequence::persisted%42104074023B.attr preserve=no  private: bool {VA} false
      bool m_persisted;
      //## end Sequence::persisted%42104074023B.attr

      //## Attribute: update%421040DC0383
      //        When true, the sequence already exists in the database and must be updated.
      //        When false, the sequence is new and must be created in the database.
      //## begin Sequence::update%421040DC0383.attr preserve=no  private: bool {VA} false
      bool m_update;
      //## end Sequence::update%421040DC0383.attr

      //## Attribute: value%42104051025B
      //        The current value of this sequence.
      //## begin Sequence::value%42104051025B.attr preserve=no  private: int {VA} 0
      int m_value;
      //## end Sequence::value%42104051025B.attr

    // Additional Private Declarations
      //## begin Sequence%42103A8C03B7.private preserve=yes
      //## end Sequence%42103A8C03B7.private

  private: //## implementation
    // Additional Implementation Declarations
      //## begin Sequence%42103A8C03B7.implementation preserve=yes
      //## end Sequence%42103A8C03B7.implementation

};

//## begin Sequence%42103A8C03B7.postscript preserve=yes
//## end Sequence%42103A8C03B7.postscript

// Class Sequence 

//## begin module%42103A8C03B7.epilog preserve=yes
//## end module%42103A8C03B7.epilog


#endif