[msbuild] Merge the CreatePkgInfo[TaskBase] classes. (#19642)

This commit is contained in:
Rolf Bjarne Kvinge 2023-12-15 19:01:24 +01:00 коммит произвёл GitHub
Родитель 8c6f07e6ef
Коммит 838428b02d
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
2 изменённых файлов: 12 добавлений и 21 удалений

Просмотреть файл

@ -1,20 +0,0 @@
using Microsoft.Build.Framework;
using Xamarin.Messaging.Build.Client;
namespace Xamarin.MacDev.Tasks {
public class CreatePkgInfo : CreatePkgInfoTaskBase, ICancelableTask {
public override bool Execute ()
{
if (ShouldExecuteRemotely ())
return new TaskRunner (SessionId, BuildEngine4).RunAsync (this).Result;
return base.Execute ();
}
public void Cancel ()
{
if (ShouldExecuteRemotely ())
BuildConnection.CancelAsync (BuildEngine4).Wait ();
}
}
}

Просмотреть файл

@ -4,11 +4,13 @@ using System.IO;
using Microsoft.Build.Framework;
using Microsoft.Build.Utilities;
using Xamarin.Messaging.Build.Client;
// Disable until we get around to enable + fix any issues.
#nullable disable
namespace Xamarin.MacDev.Tasks {
public abstract class CreatePkgInfoTaskBase : XamarinTask {
public class CreatePkgInfo : XamarinTask, ICancelableTask {
static readonly byte [] PkgInfoData = { 0X41, 0X50, 0X50, 0X4C, 0x3f, 0x3f, 0x3f, 0x3f };
#region Inputs
@ -19,6 +21,9 @@ namespace Xamarin.MacDev.Tasks {
public override bool Execute ()
{
if (ShouldExecuteRemotely ())
return new TaskRunner (SessionId, BuildEngine4).RunAsync (this).Result;
if (!File.Exists (OutputPath)) {
Directory.CreateDirectory (Path.GetDirectoryName (OutputPath));
@ -29,5 +34,11 @@ namespace Xamarin.MacDev.Tasks {
return true;
}
public void Cancel ()
{
if (ShouldExecuteRemotely ())
BuildConnection.CancelAsync (BuildEngine4).Wait ();
}
}
}