Subversion Repositories DevTools

Rev

Rev 2263 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2263 kivins 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%42116B3700AD.cm preserve=no
7
//## end module%42116B3700AD.cm
8
 
9
//## begin module%42116B3700AD.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%42116B3700AD.cp
19
 
20
//## Module: EvaluationContext%42116B3700AD; Pseudo Package specification
21
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
22
//## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\EvaluationContext.h
23
 
24
#ifndef EvaluationContext_h
25
#define EvaluationContext_h 1
26
 
27
//## begin module%42116B3700AD.additionalIncludes preserve=no
28
//## end module%42116B3700AD.additionalIncludes
29
 
30
//## begin module%42116B3700AD.includes preserve=yes
31
//## end module%42116B3700AD.includes
32
 
33
 
34
class DefinedVariableTable;
35
class SequenceCollection;
36
class TimeEstimate;
37
class ProgressBar;
38
namespace XMLSchema {
39
class IXmlSchemaWrapperElement;
40
} // namespace XMLSchema
41
 
42
class TransactionSpecification;
43
class IHash;
44
class ICryptographicServerProxy;
45
class IMessageDigest;
46
 
47
//## begin module%42116B3700AD.additionalDeclarations preserve=yes
48
//## end module%42116B3700AD.additionalDeclarations
49
 
50
 
51
//## begin EvaluationContext%42116B3700AD.preface preserve=yes
52
//## end EvaluationContext%42116B3700AD.preface
53
 
54
//## Class: EvaluationContext%42116B3700AD; private
55
//	This class encapsulates the context for evaluating expressions.
56
//## Category: TransactionTestManager::Transaction Generation%4202F8EE0128
57
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
58
//## Persistence: Transient
59
//## Cardinality/Multiplicity: n
60
 
61
 
62
 
63
class EvaluationContext 
64
{
65
  //## begin EvaluationContext%42116B3700AD.initialDeclarations preserve=yes
66
  //## end EvaluationContext%42116B3700AD.initialDeclarations
67
 
68
  public:
69
    //## Constructors (specified)
70
      //## Operation: EvaluationContext%42116FD901D9
71
      //	This constructor accepts values for most context items.
72
      EvaluationContext (DefinedVariableTable& symbolTable, 	// The symbol table with which the expression is to be evaluated.
73
      SequenceCollection& sequences, 	// The sequence generators.
74
      ProgressBar& progressBar, 	// The progress bar that is to be notified of progress.
75
      IMessageDigest* messageDigest, 	// The message digest.
76
      IHash *hash, 	// The hash.
77
      ICryptographicServerProxy* cryptographicServer, 	// The cryptographic server.
78
      TimeEstimate& timeEstimate	// The time estimate.
79
      );
80
 
81
    //## Destructor (generated)
82
      virtual ~EvaluationContext();
83
 
84
 
85
    //## Other Operations (specified)
86
      //## Operation: getCryptographicServer%422EAADF0074
87
      //	Evaluate to the cryptographic server.
88
      ICryptographicServerProxy& getCryptographicServer ();
89
 
90
      //## Operation: getHash%4288378902B6
91
      //	Evaluate to the hash.
92
      IHash & getHash ();
93
 
94
      //## Operation: getMessageDigest%4211C6C901B5
95
      //	Evaluate to the message digest.
96
      IMessageDigest& getMessageDigest ();
97
 
98
      //## Operation: getProgressBar%42116CAA0204
99
      //	Evaluate to the progress bar that is to be notified of progress.
100
      ProgressBar& getProgressBar ();
101
 
102
      //## Operation: getScenarioIndex%4236AD17026A
103
      //	Evaluate to the number of times that the current scenario has been played
104
      //	into the transaction stream.
105
      const unsigned & getScenarioIndex () const;
106
 
107
      //## Operation: getSchemaElement%4212D7B702C1
108
      //	Evaluate to the schema element with which the expression is to be evaluated.
109
      XMLSchema::IXmlSchemaWrapperElement & getSchemaElement ();
110
 
111
      //## Operation: getSequenceCollection%421170BF0053
112
      //	Evaluate to the sequence generators available to this expression.
113
      SequenceCollection& getSequenceCollection ();
114
 
115
      //## Operation: getSymbolTable%42116CA901D6
116
      //	Evaluate to the symbol table with which the expression is to be evaluated.
117
      DefinedVariableTable& getSymbolTable ();
118
 
119
      //## Operation: getTimeEstimate%4211D01E02E6
120
      //	Evaluate to the time estimate.
121
      TimeEstimate& getTimeEstimate ();
122
 
123
      //## Operation: getTransaction%42116C8703D9
124
      //	Evaluate to the transaction within which the expression is to be evaluated.
125
      TransactionSpecification& getTransaction ();
126
 
127
      //## Operation: haveCryptographicServer%422EAADF00B2
128
      //	Evaluate to true when there is a cryptographic server, and to false
129
      //	otherwise.
130
      const bool haveCryptographicServer () const;
131
 
132
      //## Operation: haveHash%4288378902F4
133
      //	Evaluate to true when there is a hash, and to false otherwise.
134
      const bool haveHash () const;
135
 
136
      //## Operation: haveMessageDigest%4211C6ED01C4
137
      //	Evaluate to true when there is a message digest, and to false otherwise.
138
      const bool haveMessageDigest () const;
139
 
140
      //## Operation: haveProgressBar%42116E850298
141
      //	Evaluate to true when there is a progress bar that is to be notified of
142
      //	progress, and to false otherwise.
143
      const bool haveProgressBar () const;
144
 
145
      //## Operation: haveSchemaElement%4212D7B702FF
146
      //	Evaluate to true when there is a schema element with which the expression is
147
      //	to be evaluated, and to false otherwise.
148
      const bool haveSchemaElement () const;
149
 
150
      //## Operation: haveSequenceCollection%421170BF0081
151
      //	Evaluate to true when there is a collection of sequence generators available
152
      //	to this expression, and to false otherwise.
153
      const bool haveSequenceCollection () const;
154
 
155
      //## Operation: haveSymbolTable%42116E8502B8
156
      //	Evaluate to true when there is a symbol table with which the expression is
157
      //	to be evaluated, and to false otherwise.
158
      const bool haveSymbolTable () const;
159
 
160
      //## Operation: haveTransaction%42116E8502D7
161
      //	Evaluate to true when there is a transaction within which the expression is
162
      //	to be evaluated, and to false otherwise.
163
      const bool haveTransaction ();
164
 
165
      //## Operation: setProgressBar%42116CAA01E5
166
      //	Set the progress bar.
167
      void setProgressBar (ProgressBar& progressBar	// The progress bar that is to be notified of progress.  While we do not
168
      	// accept ownership over this instance, we do assume its validity for the
169
      	// remainder of our lifetime.
170
      );
171
 
172
      //## Operation: setScenarioIndex%4236AD170299
173
      //	Set the number of times that the current scenario has been played into the
174
      //	transaction stream.
175
      void setScenarioIndex (const unsigned &value	// The new value.
176
      );
177
 
178
      //## Operation: setSchemaElement%4212D7B7031F
179
      //	Set the schema element.
180
      void setSchemaElement (XMLSchema::IXmlSchemaWrapperElement &schemaElement	// The schema element which the expression is to be evaluated.  While we do
181
      	// not accept ownership over this instance, we do assume its validity for the
182
      	// remainder of our lifetime.
183
      );
184
 
185
      //## Operation: setSequenceCollection%421170BF0091
186
      //	Set the sequence generators available to this expression.
187
      void setSequenceCollection (SequenceCollection& sequenceCollection	// The sequence generators available to this expression.  While we do not
188
      	// accept ownership over this instance, we do assume its validity for the
189
      	// remainder of our lifetime.
190
      );
191
 
192
      //## Operation: setSymbolTable%42116CA901B6
193
      //	Set the symbol table.
194
      void setSymbolTable (DefinedVariableTable& symbolTable	// The symbol table with which the expression is to be evaluated.  While we do
195
      	// not accept ownership over this instance, we do assume its validity for the
196
      	// remainder of our lifetime.
197
      );
198
 
199
      //## Operation: setTransaction%42116C60036C
200
      //	Set the transaction.
201
      void setTransaction (TransactionSpecification& transaction	// The transaction within which the expression is to be evaluated.  While we
202
      	// do not accept ownership over this instance, we do assume its validity for
203
      	// the remainder of our lifetime.
204
      );
205
 
206
    // Additional Public Declarations
207
      //## begin EvaluationContext%42116B3700AD.public preserve=yes
2267 kivins 208
      const std::string & getStartTime ( ) const; 
209
      void setStartTime (const std::string &startTime	// The value.
210
      );
2263 kivins 211
      //## end EvaluationContext%42116B3700AD.public
212
 
213
  protected:
214
    // Additional Protected Declarations
215
      //## begin EvaluationContext%42116B3700AD.protected preserve=yes
216
      //## end EvaluationContext%42116B3700AD.protected
217
 
218
  private:
219
    //## Constructors (generated)
220
      EvaluationContext();
221
 
222
      EvaluationContext(const EvaluationContext &right);
223
 
224
    //## Assignment Operation (generated)
225
      EvaluationContext & operator=(const EvaluationContext &right);
226
 
227
    // Data Members for Class Attributes
228
 
229
      //## Attribute: scenarioIndex%4236AC61013A
230
      //	The number of times that the current scenario has been played into the
231
      //	transaction stream.
232
      //## begin EvaluationContext::scenarioIndex%4236AC61013A.attr preserve=no  private: unsigned {UA} 0
233
      unsigned m_scenarioIndex;
234
      //## end EvaluationContext::scenarioIndex%4236AC61013A.attr
235
 
236
    // Data Members for Associations
237
 
238
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42116B7F005F
239
      //## Role: EvaluationContext::transaction%42116B7F0224
240
      //	The transaction within which the expression is to be evaluated.  While we do
241
      //	not accept ownership over this instance, we do assume its validity for the
242
      //	remainder of our lifetime.
243
      //## begin EvaluationContext::transaction%42116B7F0224.role preserve=no  private: TransactionSpecification {1 -> 1RFHAN}
244
      TransactionSpecification *m_transaction;
245
      //## end EvaluationContext::transaction%42116B7F0224.role
246
 
247
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42116BB5039B
248
      //## Role: EvaluationContext::symbolTable%42116BB601E5
249
      //	The collection of defined symbols.  While we do not accept ownership over
250
      //	this instance, we do assume its validity for the remainder of our lifetime.
251
      //## begin EvaluationContext::symbolTable%42116BB601E5.role preserve=no  private: DefinedVariableTable {1 -> 1RFHAN}
252
      DefinedVariableTable *m_symbolTable;
253
      //## end EvaluationContext::symbolTable%42116BB601E5.role
254
 
255
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42116C0D038B
256
      //## Role: EvaluationContext::progressBar%42116C0E036C
257
      //	The progress bar that we notify of progress.  While we do not accept
258
      //	ownership over this instance, we do assume its validity for the remainder of
259
      //	our lifetime.
260
      //## begin EvaluationContext::progressBar%42116C0E036C.role preserve=no  private: ProgressBar {1 -> 1RFHAN}
261
      ProgressBar *m_progressBar;
262
      //## end EvaluationContext::progressBar%42116C0E036C.role
263
 
264
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4211706801AA
265
      //## Role: EvaluationContext::sequences%421170680331
266
      //	The sequence generators available to this expression.  While we do not
267
      //	accept ownership over this instance, we do assume its validity for the
268
      //	remainder of our lifetime.
269
      //## begin EvaluationContext::sequences%421170680331.role preserve=no  private: SequenceCollection {1 -> 1RFHAN}
270
      SequenceCollection *m_sequences;
271
      //## end EvaluationContext::sequences%421170680331.role
272
 
273
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4211CFBE00B9
274
      //## Role: EvaluationContext::estimate%4211CFBE0359
275
      //	The time estimate for generation.  While we do not accept ownership over
276
      //	this instance, we do assume its validity for the remainder of our lifetime.
277
      //## begin EvaluationContext::estimate%4211CFBE0359.role preserve=no  private: TimeEstimate {1 -> 1RFHAN}
278
      TimeEstimate *m_estimate;
279
      //## end EvaluationContext::estimate%4211CFBE0359.role
280
 
281
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4211D40002CC
282
      //## Role: EvaluationContext::digest%4211D4010155
283
      //	The digest.
284
      //## begin EvaluationContext::digest%4211D4010155.role preserve=no  private: IMessageDigest {1 -> 1RFHAN}
285
      IMessageDigest *m_digest;
286
      //## end EvaluationContext::digest%4211D4010155.role
287
 
288
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4212D78001F6
289
      //## Role: EvaluationContext::schemaElement%4212D7810188
290
      //	The schema element.
291
      //## begin EvaluationContext::schemaElement%4212D7810188.role preserve=no  private: XMLSchema::IXmlSchemaWrapperElement {1 -> 1RFHAN}
292
      XMLSchema::IXmlSchemaWrapperElement *m_schemaElement;
293
      //## end EvaluationContext::schemaElement%4212D7810188.role
294
 
295
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%422EAA4D02AE
296
      //## Role: EvaluationContext::cryptographicServer%422EAA4E02BB
297
      //	The cryptographic server.
298
      //## begin EvaluationContext::cryptographicServer%422EAA4E02BB.role preserve=no  private: ICryptographicServerProxy {1 -> 1RFHAN}
299
      ICryptographicServerProxy *m_cryptographicServer;
300
      //## end EvaluationContext::cryptographicServer%422EAA4E02BB.role
301
 
302
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4288373E01C7
303
      //## Role: EvaluationContext::hash%4288373F007E
304
      //	The hash.
305
      //## begin EvaluationContext::hash%4288373F007E.role preserve=no  private: IHash {1 -> 1RFHAN}
306
      IHash *m_hash;
307
      //## end EvaluationContext::hash%4288373F007E.role
308
 
309
    // Additional Private Declarations
310
      //## begin EvaluationContext%42116B3700AD.private preserve=yes
2267 kivins 311
      std::string m_shiftStartTime; 
2263 kivins 312
      //## end EvaluationContext%42116B3700AD.private
313
 
314
  private: //## implementation
315
    // Additional Implementation Declarations
316
      //## begin EvaluationContext%42116B3700AD.implementation preserve=yes
317
      //## end EvaluationContext%42116B3700AD.implementation
318
 
2267 kivins 319
 
2263 kivins 320
};
321
 
322
//## begin EvaluationContext%42116B3700AD.postscript preserve=yes
323
//## end EvaluationContext%42116B3700AD.postscript
324
 
325
// Class EvaluationContext 
326
 
327
//## begin module%42116B3700AD.epilog preserve=yes
328
//## end module%42116B3700AD.epilog
329
 
330
 
331
#endif