Esempio n. 1
0
    public void FindAddinDirectories()
    {
        if (PackageDefinitions == null)
        {
            Logger.LogDebug("No PackageDefinitions");

            AddNugetDirectoryFromConvention();
            AddNugetDirectoryFromNugetConfig();
            AddCurrentFodyDirectoryToAddinSearch();
            AddToolsSolutionDirectoryToAddinSearch();
            AddNuGetPackageRootToAddinSearch();
        }
        else
        {
            var separator = Environment.NewLine + "    - ";
            var packageDefinitionsLogMessage = separator + string.Join(separator, PackageDefinitions);
            Logger.LogDebug($"PackageDefinitions: {packageDefinitionsLogMessage}");

            // each PackageDefinition will be of the format C:\...\packages\propertychanging.fody\1.28.0
            // so must be a Contains(.fody)
            foreach (var directory in PackageDefinitions.Where(x => x.ToLowerInvariant().Contains(".fody")))
            {
                Logger.LogDebug($"Adding weavers from package directory: '{directory}'");
                AddFiles(Directory.EnumerateFiles(directory, "*.Fody.dll"));
            }
            AddToolsSolutionDirectoryToAddinSearch();
        }
    }
Esempio n. 2
0
        public override bool Execute()
        {
            var referenceCopyLocalPaths = ReferenceCopyLocalPaths.Select(x => x.ItemSpec).ToList();
            var defineConstants         = DefineConstants.GetConstants();

            processor = new Processor
            {
                Logger = new BuildLogger
                {
                    BuildEngine = BuildEngine,
                },
                AssemblyFilePath        = AssemblyPath,
                IntermediateDirectory   = IntermediateDir,
                KeyFilePath             = KeyFilePath,
                SignAssembly            = SignAssembly,
                ProjectDirectory        = ProjectDirectory,
                References              = References,
                SolutionDirectory       = SolutionDir,
                ReferenceCopyLocalPaths = referenceCopyLocalPaths,
                DefineConstants         = defineConstants,
                NuGetPackageRoot        = NuGetPackageRoot,
                PackageDefinitions      = PackageDefinitions?.ToList(),
                DebugSymbols            = DebugSymbols
            };
            var success = processor.Execute();

            if (success)
            {
                var weavers = processor.Weavers.Select(x => x.AssemblyName);
                ExecutedWeavers = string.Join(";", weavers) + ";";
            }

            return(success);
        }
Esempio n. 3
0
 public void FindAddinDirectories()
 {
     if (PackageDefinitions == null)
     {
         AddNugetDirectoryFromConvention();
         AddNugetDirectoryFromNugetConfig();
         AddCurrentFodyDirectoryToAddinSearch();
         AddToolsSolutionDirectoryToAddinSearch();
         AddNuGetPackageRootToAddinSearch();
     }
     else
     {
         foreach (var directory in PackageDefinitions.Where(x => x.ToLowerInvariant().Contains(".fody")))
         {
             AddFiles(Directory.EnumerateFiles(directory, "*.Fody.dll"));
         }
         AddToolsSolutionDirectoryToAddinSearch();
     }
 }
 public void FindAddinDirectories()
 {
     if (PackageDefinitions == null)
     {
         AddNugetDirectoryFromConvention();
         AddNugetDirectoryFromNugetConfig();
         AddCurrentFodyDirectoryToAddinSearch();
         AddToolsSolutionDirectoryToAddinSearch();
         AddNuGetPackageRootToAddinSearch();
     }
     else
     {
         // each PackageDefinition will be of the format C:\...\packages\propertychanging.fody\1.28.0
         // so must be a Contains(.fody)
         foreach (var directory in PackageDefinitions.Where(x => x.ToLowerInvariant().Contains(".fody")))
         {
             AddFiles(Directory.EnumerateFiles(directory, "*.Fody.dll"));
         }
         AddToolsSolutionDirectoryToAddinSearch();
     }
 }
Esempio n. 5
0
    public void FindAddinDirectories()
    {
        Logger.LogDebug("FindAddinDirectories:");
        if (PackageDefinitions == null)
        {
            Logger.LogDebug("  No PackageDefinitions");

            AddNugetDirectoryFromConvention();
            AddNugetDirectoryFromNugetConfig();
            AddDerivePackagesFromMsBuildThisFileDirectory();
            AddToolsSolutionDirectoryToAddinSearch();
            AddNuGetPackageRootToAddinSearch();
        }
        else
        {
            var separator = $"{Environment.NewLine}    - ";
            var packageDefinitionsLogMessage = separator + string.Join(separator, PackageDefinitions);
            Logger.LogDebug($"  PackageDefinitions: {packageDefinitionsLogMessage}");

            // each PackageDefinition will be of the format C:\...\packages\propertychanging.fody\1.28.0
            // so must be a Contains(.fody)
            foreach (var versionDirectory in PackageDefinitions.Where(x => x.ToLowerInvariant().Contains(".fody")))
            {
                Logger.LogDebug($"  Scannin package directory: '{versionDirectory}'");

                var netClassic = Path.Combine(versionDirectory, "netclassicweaver");
                if (Directory.Exists(netClassic))
                {
                    AddFiles(Directory.EnumerateFiles(netClassic, "*.Fody.dll"));
                    continue;
                }

                AddFiles(Directory.EnumerateFiles(versionDirectory, "*.Fody.dll"));
            }
            AddToolsSolutionDirectoryToAddinSearch();
        }
    }