Subversion Repositories DevTools

Rev

Rev 2222 | 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%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
 
2222 sbetterm 34
class DefinedVariableTable;
35
class SequenceCollection;
36
class TimeEstimate;
37
class ProgressBar;
2218 sbetterm 38
namespace XMLSchema {
39
class IXmlSchemaWrapperElement;
40
} // namespace XMLSchema
41
 
42
class TransactionSpecification;
2228 sbetterm 43
class IHash;
2222 sbetterm 44
class ICryptographicServerProxy;
45
class IMessageDigest;
2218 sbetterm 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.
2228 sbetterm 76
      IHash *hash, 	// The hash.
2222 sbetterm 77
      ICryptographicServerProxy* cryptographicServer, 	// The cryptographic server.
2218 sbetterm 78
      TimeEstimate& timeEstimate	// The time estimate.
79
      );
80
 
81
    //## Destructor (generated)
82
      virtual ~EvaluationContext();
83
 
84
 
85
    //## Other Operations (specified)
2222 sbetterm 86
      //## Operation: getCryptographicServer%422EAADF0074
87
      //	Evaluate to the cryptographic server.
88
      ICryptographicServerProxy& getCryptographicServer ();
89
 
2228 sbetterm 90
      //## Operation: getHash%4288378902B6
91
      //	Evaluate to the hash.
92
      IHash & getHash ();
93
 
2218 sbetterm 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
 
2222 sbetterm 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
 
2218 sbetterm 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
 
2222 sbetterm 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
 
2228 sbetterm 132
      //## Operation: haveHash%4288378902F4
133
      //	Evaluate to true when there is a hash, and to false otherwise.
134
      const bool haveHash () const;
135
 
2218 sbetterm 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
 
2222 sbetterm 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
 
2218 sbetterm 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
208
      //## end EvaluationContext%42116B3700AD.public
209
 
210
  protected:
211
    // Additional Protected Declarations
212
      //## begin EvaluationContext%42116B3700AD.protected preserve=yes
213
      //## end EvaluationContext%42116B3700AD.protected
214
 
215
  private:
216
    //## Constructors (generated)
2222 sbetterm 217
      EvaluationContext();
218
 
2218 sbetterm 219
      EvaluationContext(const EvaluationContext &right);
220
 
221
    //## Assignment Operation (generated)
222
      EvaluationContext & operator=(const EvaluationContext &right);
223
 
2222 sbetterm 224
    // Data Members for Class Attributes
225
 
226
      //## Attribute: scenarioIndex%4236AC61013A
227
      //	The number of times that the current scenario has been played into the
228
      //	transaction stream.
229
      //## begin EvaluationContext::scenarioIndex%4236AC61013A.attr preserve=no  private: unsigned {UA} 0
230
      unsigned m_scenarioIndex;
231
      //## end EvaluationContext::scenarioIndex%4236AC61013A.attr
232
 
2218 sbetterm 233
    // Data Members for Associations
234
 
235
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42116B7F005F
236
      //## Role: EvaluationContext::transaction%42116B7F0224
237
      //	The transaction within which the expression is to be evaluated.  While we do
238
      //	not accept ownership over this instance, we do assume its validity for the
239
      //	remainder of our lifetime.
240
      //## begin EvaluationContext::transaction%42116B7F0224.role preserve=no  private: TransactionSpecification {1 -> 1RFHAN}
241
      TransactionSpecification *m_transaction;
242
      //## end EvaluationContext::transaction%42116B7F0224.role
243
 
244
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42116BB5039B
245
      //## Role: EvaluationContext::symbolTable%42116BB601E5
246
      //	The collection of defined symbols.  While we do not accept ownership over
247
      //	this instance, we do assume its validity for the remainder of our lifetime.
248
      //## begin EvaluationContext::symbolTable%42116BB601E5.role preserve=no  private: DefinedVariableTable {1 -> 1RFHAN}
249
      DefinedVariableTable *m_symbolTable;
250
      //## end EvaluationContext::symbolTable%42116BB601E5.role
251
 
252
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%42116C0D038B
253
      //## Role: EvaluationContext::progressBar%42116C0E036C
254
      //	The progress bar that we notify of progress.  While we do not accept
255
      //	ownership over this instance, we do assume its validity for the remainder of
256
      //	our lifetime.
257
      //## begin EvaluationContext::progressBar%42116C0E036C.role preserve=no  private: ProgressBar {1 -> 1RFHAN}
258
      ProgressBar *m_progressBar;
259
      //## end EvaluationContext::progressBar%42116C0E036C.role
260
 
261
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4211706801AA
262
      //## Role: EvaluationContext::sequences%421170680331
263
      //	The sequence generators available to this expression.  While we do not
264
      //	accept ownership over this instance, we do assume its validity for the
265
      //	remainder of our lifetime.
266
      //## begin EvaluationContext::sequences%421170680331.role preserve=no  private: SequenceCollection {1 -> 1RFHAN}
267
      SequenceCollection *m_sequences;
268
      //## end EvaluationContext::sequences%421170680331.role
269
 
270
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4211CFBE00B9
271
      //## Role: EvaluationContext::estimate%4211CFBE0359
272
      //	The time estimate for generation.  While we do not accept ownership over
273
      //	this instance, we do assume its validity for the remainder of our lifetime.
274
      //## begin EvaluationContext::estimate%4211CFBE0359.role preserve=no  private: TimeEstimate {1 -> 1RFHAN}
275
      TimeEstimate *m_estimate;
276
      //## end EvaluationContext::estimate%4211CFBE0359.role
277
 
278
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4211D40002CC
279
      //## Role: EvaluationContext::digest%4211D4010155
280
      //	The digest.
281
      //## begin EvaluationContext::digest%4211D4010155.role preserve=no  private: IMessageDigest {1 -> 1RFHAN}
282
      IMessageDigest *m_digest;
283
      //## end EvaluationContext::digest%4211D4010155.role
284
 
285
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4212D78001F6
286
      //## Role: EvaluationContext::schemaElement%4212D7810188
287
      //	The schema element.
288
      //## begin EvaluationContext::schemaElement%4212D7810188.role preserve=no  private: XMLSchema::IXmlSchemaWrapperElement {1 -> 1RFHAN}
289
      XMLSchema::IXmlSchemaWrapperElement *m_schemaElement;
290
      //## end EvaluationContext::schemaElement%4212D7810188.role
291
 
2222 sbetterm 292
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%422EAA4D02AE
293
      //## Role: EvaluationContext::cryptographicServer%422EAA4E02BB
294
      //	The cryptographic server.
295
      //## begin EvaluationContext::cryptographicServer%422EAA4E02BB.role preserve=no  private: ICryptographicServerProxy {1 -> 1RFHAN}
296
      ICryptographicServerProxy *m_cryptographicServer;
297
      //## end EvaluationContext::cryptographicServer%422EAA4E02BB.role
298
 
2228 sbetterm 299
      //## Association: TransactionTestManager::Transaction Generation::<unnamed>%4288373E01C7
300
      //## Role: EvaluationContext::hash%4288373F007E
301
      //	The hash.
302
      //## begin EvaluationContext::hash%4288373F007E.role preserve=no  private: IHash {1 -> 1RFHAN}
303
      IHash *m_hash;
304
      //## end EvaluationContext::hash%4288373F007E.role
305
 
2218 sbetterm 306
    // Additional Private Declarations
307
      //## begin EvaluationContext%42116B3700AD.private preserve=yes
308
      //## end EvaluationContext%42116B3700AD.private
309
 
310
  private: //## implementation
311
    // Additional Implementation Declarations
312
      //## begin EvaluationContext%42116B3700AD.implementation preserve=yes
313
      //## end EvaluationContext%42116B3700AD.implementation
314
 
315
};
316
 
317
//## begin EvaluationContext%42116B3700AD.postscript preserve=yes
318
//## end EvaluationContext%42116B3700AD.postscript
319
 
320
// Class EvaluationContext 
321
 
322
//## begin module%42116B3700AD.epilog preserve=yes
323
//## end module%42116B3700AD.epilog
324
 
325
 
326
#endif