private IEnumerable <ITaskItem> TryGetTaskItemsFromLibrary(Library library, ContentPatternDefinition definition) { var taskItems = new List <ITaskItem>(); var contents = library.GetItem <ContentItemCollection>("contents"); if (contents == null) { return(taskItems); } var group = contents.FindBestItemGroup(GetSelectionCriteria(), definition); if (group == null) { return(null); } foreach (var item in group.Items.Where(i => Path.GetFileName(i.Path) != "_._")) { var taskItem = new TaskItem(Path.Combine(Path.GetDirectoryName(library.Path), item.Path.Replace('/', '\\'))); taskItem.SetMetadata("NuGetPackageName", library.Identity.Name); taskItem.SetMetadata("NuGetPackageVersion", library.Identity.Version.ToString()); taskItems.Add(taskItem); } return(taskItems); }
public PatternDefinitions() { Properties = new PropertyDefinitions(); ManagedAssemblies = new ContentPatternDefinition { GroupPatterns = { "lib/{tfm}.{tpm}/{any?}", "lib/{tfm}/{any?}", }, PathPatterns = { "lib/{tfm}.{tpm}/{assembly}", "lib/{tfm}/{assembly}", }, PropertyDefinitions = Properties.Definitions, }; CompileTimeAssemblies = new ContentPatternDefinition { GroupPatterns = { "ref/{tfm}.{tpm}/{any?}", "ref/{tfm}/{any?}", }, PathPatterns = { "ref/{tfm}.{tpm}/{assembly}", "ref/{tfm}/{assembly}", }, PropertyDefinitions = Properties.Definitions, }; AheadOfTimeAssemblies = new ContentPatternDefinition { GroupPatterns = { "aot/{tfm}.{tpm}/{any?}", "aot/{tfm}/{any?}", }, PathPatterns = { "aot/{tfm}.{tpm}/{assembly}", "aot/{tfm}/{assembly}", }, PropertyDefinitions = Properties.Definitions, }; ResourceAssemblies = new ContentPatternDefinition { GroupPatterns = { "lib/{tfm}.{tpm}/{locale?}/{resources?}", "lib/{tfm}/{locale?}/{resources?}", }, PathPatterns = { "lib/{tfm}.{tpm}/{locale}/{resources}", "lib/{tfm}/{locale}/{resources}", }, PropertyDefinitions = Properties.Definitions, }; NativeLibraries = new ContentPatternDefinition { GroupPatterns = { "native/{tfm}.{tpm}/{arch?}/{any?}", "native/{tpm}/{arch?}/{any?}", }, PathPatterns = { "native/{tfm}.{tpm}/{arch}/{dynamicLibrary}", "native/{tpm}/{arch}/{dynamicLibrary}", }, PropertyDefinitions = Properties.Definitions, }; }
public PatternDefinitions() { Properties = new PropertyDefinitions(); ManagedAssemblies = new ContentPatternDefinition { GroupPatterns = { "runtimes/{rid}/lib/{tfm}/{any?}", "lib/{tfm}/{any?}" }, PathPatterns = { "runtimes/{rid}/lib/{tfm}/{assembly}", "lib/{tfm}/{assembly}" }, PropertyDefinitions = Properties.Definitions }; ManagedAssemblies.GroupPatterns.Add(new PatternDefinition { Pattern = "lib/{assembly?}", Defaults = new Dictionary <string, object> { { "tfm", VersionUtility.ParseFrameworkName("net") } } }); ManagedAssemblies.PathPatterns.Add(new PatternDefinition { Pattern = "lib/{assembly}", Defaults = new Dictionary <string, object> { { "tfm", VersionUtility.ParseFrameworkName("net") } } }); CompileTimeAssemblies = new ContentPatternDefinition { GroupPatterns = { "ref/{tfm}/{any?}", }, PathPatterns = { "ref/{tfm}/{assembly}", }, PropertyDefinitions = Properties.Definitions, }; ResourceAssemblies = new ContentPatternDefinition { GroupPatterns = { "runtimes/{rid}/lib/{tfm}/{locale?}/{any?}", "lib/{tfm}/{locale?}/{any?}" }, PathPatterns = { "runtimes/{rid}/lib/{tfm}/{locale}/{resources}", "lib/{tfm}/{locale}/{resources}" }, PropertyDefinitions = Properties.Definitions }; ResourceAssemblies.GroupPatterns.Add(new PatternDefinition { Pattern = "lib/{locale}/{resources?}", Defaults = new Dictionary <string, object> { { "tfm", VersionUtility.ParseFrameworkName("net") } } }); ResourceAssemblies.PathPatterns.Add(new PatternDefinition { Pattern = "lib/{locale}/{resources}", Defaults = new Dictionary <string, object> { { "tfm", VersionUtility.ParseFrameworkName("net") } } }); NativeLibraries = new ContentPatternDefinition { GroupPatterns = { "runtimes/{rid}/native/{any?}", "native/{any?}", }, PathPatterns = { "runtimes/{rid}/native/{any}", "native/{any}", }, PropertyDefinitions = Properties.Definitions, }; }