diff --git a/msbuild/Xamarin.MacDev.Tasks/Tasks/OptimizeImage.cs b/msbuild/Xamarin.MacDev.Tasks/Tasks/OptimizeImage.cs deleted file mode 100644 index ba0aad74ff..0000000000 --- a/msbuild/Xamarin.MacDev.Tasks/Tasks/OptimizeImage.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System.Collections.Generic; -using System.Linq; -using Microsoft.Build.Framework; -using Xamarin.Messaging.Build.Client; - -namespace Xamarin.MacDev.Tasks { - public class OptimizeImage : OptimizeImageTaskBase, ITaskCallback { - public override bool Execute () - { - if (ShouldExecuteRemotely ()) - return new TaskRunner (SessionId, BuildEngine4).RunAsync (this).Result; - - return base.Execute (); - } - - public bool ShouldCopyToBuildServer (ITaskItem item) => !OutputImages.Contains (item); - - public bool ShouldCreateOutputFile (ITaskItem item) => true; - - public IEnumerable GetAdditionalItemsToBeCopied () => Enumerable.Empty (); - - public override void Cancel () - { - base.Cancel (); - - if (!string.IsNullOrEmpty (SessionId)) - BuildConnection.CancelAsync (BuildEngine4).Wait (); - } - } -} diff --git a/msbuild/Xamarin.MacDev.Tasks/Tasks/OptimizeImageTaskBase.cs b/msbuild/Xamarin.MacDev.Tasks/Tasks/OptimizeImageTaskBase.cs index 925c524baf..4bb4ec158a 100644 --- a/msbuild/Xamarin.MacDev.Tasks/Tasks/OptimizeImageTaskBase.cs +++ b/msbuild/Xamarin.MacDev.Tasks/Tasks/OptimizeImageTaskBase.cs @@ -1,14 +1,18 @@ using System; +using System.Collections.Generic; using System.IO; +using System.Linq; using Microsoft.Build.Utilities; using Microsoft.Build.Framework; +using Xamarin.Messaging.Build.Client; + // Disable until we get around to enable + fix any issues. #nullable disable namespace Xamarin.MacDev.Tasks { - public abstract class OptimizeImageTaskBase : XamarinToolTask { + public class OptimizeImage : XamarinToolTask, ITaskCallback { ITaskItem inputImage; ITaskItem outputImage; @@ -83,6 +87,9 @@ namespace Xamarin.MacDev.Tasks { public override bool Execute () { + if (ShouldExecuteRemotely ()) + return new TaskRunner (SessionId, BuildEngine4).RunAsync (this).Result; + var result = true; for (var index = 0; index < this.InputImages.Length && index < this.OutputImages.Length; index++) { @@ -101,5 +108,19 @@ namespace Xamarin.MacDev.Tasks { return result; } + + public bool ShouldCopyToBuildServer (ITaskItem item) => !OutputImages.Contains (item); + + public bool ShouldCreateOutputFile (ITaskItem item) => true; + + public IEnumerable GetAdditionalItemsToBeCopied () => Enumerable.Empty (); + + public override void Cancel () + { + base.Cancel (); + + if (!string.IsNullOrEmpty (SessionId)) + BuildConnection.CancelAsync (BuildEngine4).Wait (); + } } }