Subversion Repositories DevTools

Rev

Rev 2218 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2218 sbetterm 1
//## begin module%1.7%.codegen_version preserve=yes
2
//   Read the documentation to learn more about C++ code generator
3
//   versioning.
4
//## end module%1.7%.codegen_version
5
 
6
//## begin module%420310A60071.cm preserve=no
7
//## end module%420310A60071.cm
8
 
9
//## begin module%420310A60071.cp preserve=no
10
//	C O P Y R I G H T   N O T I C E
11
//	This material is confidential to ERG and may not be disclosed in whole
12
//	or in part to any third party nor used in any manner whatsoever other
13
//	than for the purposes expressly consented to by ERG in writing.
14
//
15
//	This material is also copyright and may not be reproduced, stored in a
16
//	retrieval system or transmitted in any form or by any means in whole or
17
//	in part without the express written consent of ERG.
18
//## end module%420310A60071.cp
19
 
20
//## Module: Iteration%420310A60071; Pseudo Package specification
21
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
22
//## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\Iteration.h
23
 
24
#ifndef Iteration_h
25
#define Iteration_h 1
26
 
27
//## begin module%420310A60071.additionalIncludes preserve=no
28
//## end module%420310A60071.additionalIncludes
29
 
30
//## begin module%420310A60071.includes preserve=yes
31
//## end module%420310A60071.includes
32
 
33
 
2228 sbetterm 34
class EvaluationContext;
35
class TransactionStream;
36
class TestScenario;
2218 sbetterm 37
namespace XMLSchema {
2228 sbetterm 38
class IXmlSchemaWrapperSchema;
2218 sbetterm 39
class IXmlSchemaWrapperFactory;
2228 sbetterm 40
 
2218 sbetterm 41
} // namespace XMLSchema
42
 
43
//## begin module%420310A60071.additionalDeclarations preserve=yes
44
#include <map>
45
#include <string>
46
#include <vector>
47
//## end module%420310A60071.additionalDeclarations
48
 
49
 
50
//## begin Iteration%420310A60071.preface preserve=yes
51
//## end Iteration%420310A60071.preface
52
 
53
//## Class: Iteration%420310A60071; private
54
//	An iteration.
55
//## Category: TransactionTestManager::Transaction Generation%4202F8EE0128
56
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
57
//## Persistence: Transient
58
//## Cardinality/Multiplicity: n
59
 
60
 
61
 
62
//## Uses: <unnamed>%42081A2300E3;TransactionStream { -> F}
63
//## Uses: <unnamed>%4208BF50034A;XMLSchema::IXmlSchemaWrapperString { -> }
64
//## Uses: <unnamed>%421173520074;EvaluationContext { -> F}
65
 
66
class Iteration 
67
{
68
  //## begin Iteration%420310A60071.initialDeclarations preserve=yes
69
  //## end Iteration%420310A60071.initialDeclarations
70
 
71
  public:
72
    //## Constructors (specified)
73
      //## Operation: Iteration%420311980081
74
      //	The only constructor.
75
      Iteration (const std::string &projectCode, 	// The project code to which this iteration belongs.
76
      const int &iteration, 	// The numeric identifier of this iteration.
77
      XMLSchema::IXmlSchemaWrapperFactory &factory, 	// The factory.  While we do not accept ownership over this instance, we do
78
      	// assume its validity for the remainder of our lifetime.
79
      XMLSchema::IXmlSchemaWrapperSchema &schema, 	// The schema.  While we do not accept ownership over this instance, we do
80
      	// assume its validity for the remainder of our lifetime.
81
      const std::string &schemaHandle	// The handle to the schema that we are using in this iteration.
82
      );
83
 
84
    //## Destructor (generated)
85
      virtual ~Iteration();
86
 
87
 
88
    //## Other Operations (specified)
2228 sbetterm 89
      //## Operation: findTestScenario%428D756A034D
90
      //	Evaluate to the given test scenario.  When the test scenario doesn't exist,
91
      //	raise an exception.
92
      TestScenario& findTestScenario (const int &scenario	// The identity of the test scenario.
93
      );
94
 
2218 sbetterm 95
      //## Operation: generate%42045A4D0198
96
      //	Generate the transactions for the scenarios defined for this iteration and
97
      //	evaluate to true, or to false when any transaction cannot be generated.
98
      const bool generate (TransactionStream& stream, 	// The stream into which to generate.
99
      const bool &generateHeaders, 	// When true, the transaction stream contains transaction header.  Otherwise,
100
      	// the transaction steam does not contain transaction headers.
101
      EvaluationContext& evaluationContext	// The evaluation context.
102
      );
103
 
104
      //## Operation: getFormatVersion%4208BDE6025B
105
      //	Evaluate to the format version of the schema for this iteration.
106
      const int getFormatVersion () const;
107
 
108
      //## Operation: getIterationId%4203119303AD
109
      //	Evaluate to the identifier of this iteration.
110
      const int & getIterationId () const;
111
 
112
      //## Operation: getProjectCode%4203118E02F2
113
      //	Evaluate to the project code of this iteration.
114
      const std::string & getProjectCode () const;
115
 
116
      //## Operation: getSchema%420460A8000E
117
      //	Evaluate to the schema.
118
      XMLSchema::IXmlSchemaWrapperSchema & getSchema () const;
119
 
120
      //## Operation: getSchemaWrapperFactory%42045F8B030B
121
      //	Evaluate to the factory.
122
      XMLSchema::IXmlSchemaWrapperFactory & getSchemaWrapperFactory () const;
123
 
124
      //## Operation: getTestScenario%420312AF031E
125
      //	Evaluate to the given test scenario.  When the test scenario doesn't already
126
      //	exist, create it.
127
      TestScenario& getTestScenario (const int &scenario	// The identity of the test scenario.
128
      );
129
 
130
      //## Operation: getTransactionCount%420890E2017C
131
      //	Evaluate to the number of transactions in this iteration.
132
      const unsigned getTransactionCount () const;
133
 
134
    // Additional Public Declarations
135
      //## begin Iteration%420310A60071.public preserve=yes
136
      //## end Iteration%420310A60071.public
137
 
138
  protected:
139
    // Additional Protected Declarations
140
      //## begin Iteration%420310A60071.protected preserve=yes
141
      //## end Iteration%420310A60071.protected
142
 
143
  private:
144
    //## Constructors (generated)
145
      Iteration();
146
 
147
      Iteration(const Iteration &right);
148
 
149
    //## Assignment Operation (generated)
150
      Iteration & operator=(const Iteration &right);
151
 
152
    // Data Members for Class Attributes
153
 
154
      //## Attribute: iteration%4203121C0255
155
      //	The numeric identifier of this iteration.
156
      //## begin Iteration::iteration%4203121C0255.attr preserve=no  private: int {VAC} 
157
      const int m_iteration;
158
      //## end Iteration::iteration%4203121C0255.attr
159
 
160
      //## Attribute: projectCode%4203121B0284
161
      //	The project code to which this iteration belongs.
162
      //## begin Iteration::projectCode%4203121B0284.attr preserve=no  private: std::string {VAC} 
163
      const std::string m_projectCode;
164
      //## end Iteration::projectCode%4203121B0284.attr
165
 
166
      //## Attribute: schemaHandle%42045F8E01A4
167
      //	The handle to the schema that we are using in this iteration.
168
      //## begin Iteration::schemaHandle%42045F8E01A4.attr preserve=no  private: std::string {VA} schemaHandle
169
      std::string m_schemaHandle;
170
      //## end Iteration::schemaHandle%42045F8E01A4.attr
171
 
172
    // Data Members for Associations
173
 
174
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4203130E01B6
175
      //## Role: Iteration::scenario%4203130E038B
176
      //	The collection of scenarios that have been defined for this iteration.
177
      //## Qualifier: scenario%4203132A033D; int
178
      //	The scenario.
179
      //## begin Iteration::scenario%4203130E038B.role preserve=no  private: TestScenario {1 -> 1RFHgAN}
180
      std::map<int, TestScenario *> m_scenario;
181
      //## end Iteration::scenario%4203130E038B.role
182
 
183
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42044D9D008F
184
      //## Role: Iteration::schema%42044D9D037D
185
      //	The schema.  While we do not accept ownership over this instance, we do
186
      //	assume its validity for the remainder of our lifetime.
187
      //## begin Iteration::schema%42044D9D037D.role preserve=no  private: XMLSchema::IXmlSchemaWrapperSchema {1 -> 1RFHAN}
188
      XMLSchema::IXmlSchemaWrapperSchema *m_schema;
189
      //## end Iteration::schema%42044D9D037D.role
190
 
191
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4204658D0094
192
      //## Role: Iteration::factory%4204658E0065
193
      //	The factory.  While we do not accept ownership over this instance, we do
194
      //	assume its validity for the remainder of our lifetime.
195
      //## begin Iteration::factory%4204658E0065.role preserve=no  private: XMLSchema::IXmlSchemaWrapperFactory {1 -> 1RFHAN}
196
      XMLSchema::IXmlSchemaWrapperFactory *m_factory;
197
      //## end Iteration::factory%4204658E0065.role
198
 
199
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42070E4700D3
200
      //## Role: Iteration::orderedScenarioCollection%42070E47024A
201
      //	The collection of scenarios in generation order.
202
      //## begin Iteration::orderedScenarioCollection%42070E47024A.role preserve=no  private: TestScenario {1 -> *RFHAN}
203
      std::vector< TestScenario * > m_orderedScenarioCollection;
204
      //## end Iteration::orderedScenarioCollection%42070E47024A.role
205
 
206
    // Additional Private Declarations
207
      //## begin Iteration%420310A60071.private preserve=yes
208
      //## end Iteration%420310A60071.private
209
 
210
  private: //## implementation
211
    // Additional Implementation Declarations
212
      //## begin Iteration%420310A60071.implementation preserve=yes
213
      //## end Iteration%420310A60071.implementation
214
 
215
};
216
 
217
//## begin Iteration%420310A60071.postscript preserve=yes
218
//## end Iteration%420310A60071.postscript
219
 
220
// Class Iteration 
221
 
222
//## begin module%420310A60071.epilog preserve=yes
223
//## end module%420310A60071.epilog
224
 
225
 
226
#endif