Skip to content
This repository was archived by the owner on Aug 29, 2025. It is now read-only.

Commit 3a1a065

Browse files
committed
Apply requested code changes from PR #8
1 parent e8ae342 commit 3a1a065

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

src/Program.cs

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,14 @@
1010
using Microsoft.Graph.Cli.Utils;
1111
using Microsoft.Kiota.Authentication.Azure;
1212
using Microsoft.Kiota.Http.HttpClientLibrary;
13+
using Microsoft.Kiota.Http.HttpClientLibrary.Middleware;
14+
using Microsoft.Kiota.Http.HttpClientLibrary.Middleware.Options;
1315
using System.CommandLine;
1416
using System.CommandLine.Builder;
1517
using System.CommandLine.Hosting;
1618
using System.CommandLine.Parsing;
1719
using System.IO;
20+
using System.Linq;
1821
using System.Net.Http;
1922
using System.Reflection;
2023
using System.Threading.Tasks;
@@ -23,7 +26,7 @@ namespace Microsoft.Graph.Cli
2326
{
2427
class Program
2528
{
26-
const string SdkVersionHeaderValueFormatString = "{0}-cli-{1}.{2}.{3}";
29+
const string SdkVersionHeaderValueFormatString = "{0}-cli/{1}.{2}.{3}";
2730

2831
static async Task<int> Main(string[] args)
2932
{
@@ -39,16 +42,28 @@ static async Task<int> Main(string[] args)
3942

4043
var credential = await authServiceFactory.GetTokenCredentialAsync(authStrategy, authSettings.TenantId, authSettings.ClientId);
4144
var authProvider = new AzureIdentityAuthenticationProvider(credential);
42-
var httpClient = new HttpClient();
45+
var defaultHandlers = KiotaClientFactory.CreateDefaultHandlers();
46+
4347
var assemblyVersion = Assembly.GetExecutingAssembly().GetName().Version;
4448
var sdkVersionHeaderValue = string.Format(
4549
SdkVersionHeaderValueFormatString,
4650
"graph",
4751
assemblyVersion.Major,
4852
assemblyVersion.Minor,
4953
assemblyVersion.Build);
50-
httpClient.DefaultRequestHeaders.Add("SdkVersion", sdkVersionHeaderValue);
51-
var core = new HttpClientRequestAdapter(authProvider, null, null, httpClient);
54+
55+
var telemetryHandlerOption = new TelemetryHandlerOption {
56+
TelemetryConfigurator = (request) => {
57+
request.Headers.Add("SdkVersion", sdkVersionHeaderValue);
58+
return request;
59+
}
60+
};
61+
var telemetryHandler = new TelemetryHandler(telemetryHandlerOption);
62+
defaultHandlers.Add(telemetryHandler);
63+
var finalHandler = KiotaClientFactory.ChainHandlersCollectionAndGetFirstLink(KiotaClientFactory.GetDefaultHttpMessageHandler(), defaultHandlers.ToArray());
64+
65+
using var httpClient = KiotaClientFactory.Create(finalHandler);
66+
var core = new HttpClientRequestAdapter(authProvider, httpClient: httpClient);
5267
var client = new GraphClient(core);
5368
var builder = BuildCommandLine(client);
5469

src/msgraph-cli.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<SelfContained>false</SelfContained>
1111
<PublishReadyToRun>true</PublishReadyToRun>
1212
<AssemblyName>mgc</AssemblyName>
13-
<Version>0.1.0-preview1</Version>
13+
<Version>0.1.0-preview.1</Version>
1414
</PropertyGroup>
1515

1616
<ItemGroup>

0 commit comments

Comments
 (0)