|
1 |
| -using System; |
| 1 | +using Amazon.AwsToolkit.Telemetry.Events.Generator.Core.Models; |
| 2 | +using Amazon.AwsToolkit.Telemetry.Events.Generator.Core.Utils; |
| 3 | +using System; |
2 | 4 | using System.CodeDom;
|
3 | 5 | using System.CodeDom.Compiler;
|
4 | 6 | using System.Collections.Generic;
|
5 | 7 | using System.Globalization;
|
6 | 8 | using System.IO;
|
7 | 9 | using System.Linq;
|
8 | 10 | using System.Reflection;
|
9 |
| -using Amazon.AwsToolkit.Telemetry.Events.Generator.Models; |
10 |
| -using Amazon.AwsToolkit.Telemetry.Events.Generator.Utils; |
11 | 11 |
|
12 |
| -namespace Amazon.AwsToolkit.Telemetry.Events.Generator |
| 12 | +namespace Amazon.AwsToolkit.Telemetry.Events.Generator.Core |
13 | 13 | {
|
14 | 14 | /// <summary>
|
15 | 15 | /// Generates code that allows programs like the Toolkit to instantiate and publish Telemetry Events
|
@@ -112,9 +112,9 @@ public string Build()
|
112 | 112 | blankNamespace.Imports.Add(new CodeNamespaceImport("System.Collections.Generic"));
|
113 | 113 | // All generated code is expected to be placed in, or somewhere with a dependency on,
|
114 | 114 | // AwsToolkit.Telemetry.Events.Generated
|
115 |
| - if (_namespace != Options.DefaultEventsNamespace) |
| 115 | + if (_namespace != Constants.DefaultEventsNamespace) |
116 | 116 | {
|
117 |
| - blankNamespace.Imports.Add(new CodeNamespaceImport(Options.DefaultEventsNamespace)); |
| 117 | + blankNamespace.Imports.Add(new CodeNamespaceImport(Constants.DefaultEventsNamespace)); |
118 | 118 | }
|
119 | 119 | blankNamespace.Imports.Add(new CodeNamespaceImport("Amazon.AwsToolkit.Telemetry.Events.Core"));
|
120 | 120 |
|
@@ -295,8 +295,13 @@ private CodeTypeDeclaration CreateMetricDataClass(Metric metric)
|
295 | 295 |
|
296 | 296 | // Initialize the passive field based on this metric declaration
|
297 | 297 | // Generate: this.Passive = true/false;
|
298 |
| - var valueFieldRef = new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "Passive"); |
299 |
| - typeConstructor.Statements.Add(new CodeAssignStatement(valueFieldRef, new CodePrimitiveExpression(metric.passive))); |
| 298 | + var passiveFieldRef = new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "Passive"); |
| 299 | + typeConstructor.Statements.Add(new CodeAssignStatement(passiveFieldRef, new CodePrimitiveExpression(metric.passive))); |
| 300 | + |
| 301 | + // Initialize the TrackPerformance field based on this metric declaration |
| 302 | + // Generate: this.TrackPerformance = true/false; |
| 303 | + var performanceFieldRef = new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "TrackPerformance"); |
| 304 | + typeConstructor.Statements.Add(new CodeAssignStatement(performanceFieldRef, new CodePrimitiveExpression(metric.trackPerformance))); |
300 | 305 |
|
301 | 306 | cls.Members.Add(typeConstructor);
|
302 | 307 |
|
@@ -399,6 +404,7 @@ private CodeMemberMethod CreateRecordMetricMethodByDataClass(Metric metric)
|
399 | 404 | tryStatements.Add(new CodeAssignStatement(new CodeFieldReferenceExpression(datum, "MetricName"), new CodePrimitiveExpression(metric.name)));
|
400 | 405 | tryStatements.Add(new CodeAssignStatement(new CodeFieldReferenceExpression(datum, "Unit"), GetMetricUnitExpression(metric)));
|
401 | 406 | tryStatements.Add(new CodeAssignStatement(new CodeFieldReferenceExpression(datum, "Passive"), new CodeFieldReferenceExpression(payload, "Passive")));
|
| 407 | + tryStatements.Add(new CodeAssignStatement(new CodeFieldReferenceExpression(datum, "TrackPerformance"), new CodeFieldReferenceExpression(payload, "TrackPerformance"))); |
402 | 408 |
|
403 | 409 | // Set Datum.Value to (payload.Value ?? 1)
|
404 | 410 | var payloadValue = new CodeFieldReferenceExpression(payload, "Value");
|
|
0 commit comments