Subversion Repositories DevTools

Rev

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