Bari.Plugins.PythonScripts.Scripting.ScriptRunnerBase.GetTool C# (CSharp) Method

GetTool() private method

private GetTool ( string uri, string fileName, Project project ) : string
uri string
fileName string
project Project
return string
        private string GetTool(string uri, string fileName, Project project)
        {
            var referenceBuilder = referenceBuilderFactory.CreateReferenceBuilder(
                new Reference(new Uri(uri), ReferenceType.Build), project);

            var buildContext = buildContextFactory.CreateBuildContext();
            buildContext.AddBuilder(referenceBuilder);
            var files = buildContext.Run(referenceBuilder);
            var file = files.FirstOrDefault(f => Path.GetFileName(f).Equals(fileName, StringComparison.InvariantCultureIgnoreCase));
            var localTargetRoot = (LocalFileSystemDirectory)targetRoot;

            if (file != null)
                return Path.Combine(localTargetRoot.AbsolutePath, file);
            else
                return null;
        }