[msbuild] Merge the ReadItemsFromFile[Task] classes. (#19875)
This commit is contained in:
Родитель
fbc97609cc
Коммит
eb2b83222d
|
@ -1,22 +0,0 @@
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using Microsoft.Build.Framework;
|
|
||||||
using Xamarin.Messaging.Build.Client;
|
|
||||||
|
|
||||||
namespace Xamarin.MacDev.Tasks {
|
|
||||||
public class ReadItemsFromFile : ReadItemsFromFileBase, ITaskCallback {
|
|
||||||
public override bool Execute ()
|
|
||||||
{
|
|
||||||
if (ShouldExecuteRemotely ())
|
|
||||||
return new TaskRunner (SessionId, BuildEngine4).RunAsync (this).Result;
|
|
||||||
|
|
||||||
return base.Execute ();
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool ShouldCopyToBuildServer (ITaskItem item) => false;
|
|
||||||
|
|
||||||
public bool ShouldCreateOutputFile (ITaskItem item) => false;
|
|
||||||
|
|
||||||
public IEnumerable<ITaskItem> GetAdditionalItemsToBeCopied () => Enumerable.Empty<ITaskItem> ();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -8,11 +8,13 @@ using Microsoft.Build.Utilities;
|
||||||
using Microsoft.Build.Tasks;
|
using Microsoft.Build.Tasks;
|
||||||
using System.Xml.Linq;
|
using System.Xml.Linq;
|
||||||
|
|
||||||
|
using Xamarin.Messaging.Build.Client;
|
||||||
|
|
||||||
// Disable until we get around to enable + fix any issues.
|
// Disable until we get around to enable + fix any issues.
|
||||||
#nullable disable
|
#nullable disable
|
||||||
|
|
||||||
namespace Xamarin.MacDev.Tasks {
|
namespace Xamarin.MacDev.Tasks {
|
||||||
public abstract class ReadItemsFromFileBase : XamarinTask {
|
public class ReadItemsFromFile : XamarinTask, ITaskCallback {
|
||||||
static readonly XNamespace XmlNs = XNamespace.Get ("http://schemas.microsoft.com/developer/msbuild/2003");
|
static readonly XNamespace XmlNs = XNamespace.Get ("http://schemas.microsoft.com/developer/msbuild/2003");
|
||||||
|
|
||||||
static readonly XName ItemGroupElementName = XmlNs + "ItemGroup";
|
static readonly XName ItemGroupElementName = XmlNs + "ItemGroup";
|
||||||
|
@ -35,6 +37,9 @@ namespace Xamarin.MacDev.Tasks {
|
||||||
|
|
||||||
public override bool Execute ()
|
public override bool Execute ()
|
||||||
{
|
{
|
||||||
|
if (ShouldExecuteRemotely ())
|
||||||
|
return new TaskRunner (SessionId, BuildEngine4).RunAsync (this).Result;
|
||||||
|
|
||||||
var result = new List<ITaskItem> ();
|
var result = new List<ITaskItem> ();
|
||||||
foreach (var file in File) {
|
foreach (var file in File) {
|
||||||
// XDocument.Load(string) takes a string to a URI, not a file path, so with certain characters that becomes a problem.
|
// XDocument.Load(string) takes a string to a URI, not a file path, so with certain characters that becomes a problem.
|
||||||
|
@ -68,5 +73,11 @@ namespace Xamarin.MacDev.Tasks {
|
||||||
|
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool ShouldCopyToBuildServer (ITaskItem item) => false;
|
||||||
|
|
||||||
|
public bool ShouldCreateOutputFile (ITaskItem item) => false;
|
||||||
|
|
||||||
|
public IEnumerable<ITaskItem> GetAdditionalItemsToBeCopied () => Enumerable.Empty<ITaskItem> ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче