Skip to content

Commit

Permalink
Add package/ endpoints
Browse files Browse the repository at this point in the history
  • Loading branch information
marticliment committed Feb 3, 2025
1 parent 1b93d77 commit 3ec7a85
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 3 deletions.
25 changes: 23 additions & 2 deletions src/UniGetUI.Interface.Telemetry/TelemetryHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,27 @@ public static async void Initialize()
}
}

public static async void PackageInstalled(IPackage package)
public enum OP_RESULT
{
SUCCESS,
FAILED,
CANCELED
}

public static void InstallPackage(IPackage package, OP_RESULT status)
=> PackageEndpoint(package, "install", status);

public static void UpdatePackage(IPackage package, OP_RESULT status)
=> PackageEndpoint(package, "update", status);

public static void DownloadPackage(IPackage package, OP_RESULT status)
=> PackageEndpoint(package, "download", status);

public static void UninstallPackage(IPackage package, OP_RESULT status)
=> PackageEndpoint(package, "uninstall", status);


private static async void PackageEndpoint(IPackage package, string endpoint, OP_RESULT result)
{
try
{
Expand All @@ -118,12 +138,13 @@ public static async void PackageInstalled(IPackage package)
string ID = Settings.GetValue("TelemetryClientToken");


var request = new HttpRequestMessage(HttpMethod.Post, $"{HOST}/install");
var request = new HttpRequestMessage(HttpMethod.Post, $"{HOST}/package/{endpoint}");

request.Headers.Add("clientId", ID);
request.Headers.Add("packageId", package.Id);
request.Headers.Add("managerName", package.Manager.Name);
request.Headers.Add("sourceName", package.Source.Name);
request.Headers.Add("operationResult", result.ToString());

HttpClient _httpClient = new(CoreData.GenericHttpClientParameters);
HttpResponseMessage response = await _httpClient.SendAsync(request);
Expand Down
9 changes: 8 additions & 1 deletion src/UniGetUI/AppOperationHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,8 @@ public static void Remove(AbstractOperation op)
if (file is not null)
{
var op = new DownloadOperation(package, file.Path);
op.OperationSucceeded += (_, _) => TelemetryHandler.DownloadPackage(package, TelemetryHandler.OP_RESULT.SUCCESS);
op.OperationFailed += (_, _) => TelemetryHandler.DownloadPackage(package, TelemetryHandler.OP_RESULT.FAILED);
Add(op);
return op;
}
Expand All @@ -113,7 +115,8 @@ public static void Remove(AbstractOperation op)
var options = await InstallationOptions.FromPackageAsync(package, elevated, interactive, no_integrity);
var op = new InstallPackageOperation(package, options, ignoreParallel, req);
Add(op);
op.OperationSucceeded += (_, _) => TelemetryHandler.PackageInstalled(package);
op.OperationSucceeded += (_, _) => TelemetryHandler.InstallPackage(package, TelemetryHandler.OP_RESULT.SUCCESS);
op.OperationFailed += (_, _) => TelemetryHandler.InstallPackage(package, TelemetryHandler.OP_RESULT.FAILED);
return op;
}

Expand All @@ -134,6 +137,8 @@ public static void Install(IReadOnlyList<IPackage> packages, bool? elevated = nu
var options = await InstallationOptions.FromPackageAsync(package, elevated, interactive, no_integrity);
var op = new UpdatePackageOperation(package, options, ignoreParallel, req);
Add(op);
op.OperationSucceeded += (_, _) => TelemetryHandler.UpdatePackage(package, TelemetryHandler.OP_RESULT.SUCCESS);
op.OperationFailed += (_, _) => TelemetryHandler.UpdatePackage(package, TelemetryHandler.OP_RESULT.FAILED);
return op;
}

Expand Down Expand Up @@ -171,6 +176,8 @@ public static async void ConfirmAndUninstall(IPackage? package, bool? elevated =
var options = await InstallationOptions.FromPackageAsync(package, elevated, interactive, remove_data: remove_data);
var op = new UninstallPackageOperation(package, options, ignoreParallel, req);
Add(op);
op.OperationSucceeded += (_, _) => TelemetryHandler.UninstallPackage(package, TelemetryHandler.OP_RESULT.SUCCESS);
op.OperationFailed += (_, _) => TelemetryHandler.UninstallPackage(package, TelemetryHandler.OP_RESULT.FAILED);
return op;
}

Expand Down

0 comments on commit 3ec7a85

Please sign in to comment.