9 instantiations of WorkloadPackId
dotnet (5)
Commands\Workload\Install\FileBasedInstaller.cs (3)
851
var packId = new
WorkloadPackId
(Path.GetFileName(packIdDir));
875
var path = GetPackInstallRecordPath(new
WorkloadPackId
(packInfo.ResolvedPackageId), packInfo.Version, featureBand);
885
var packInstallRecord = GetPackInstallRecordPath(new
WorkloadPackId
(packInfo.ResolvedPackageId), packInfo.Version, featureBand);
Commands\Workload\Install\WorkloadGarbageCollector.cs (1)
175
PacksToKeep.Add((new
WorkloadPackId
(pack.ResolvedPackageId), pack.Version));
Commands\Workload\WorkloadJsonSerializerContext.cs (1)
22
new
(reader.GetString() ?? string.Empty);
Microsoft.DotNet.TemplateLocator (4)
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadManifestReader.cs (3)
285
var packId = new
WorkloadPackId
(reader.GetString() ?? string.Empty);
450
packs = ReadStringArray<WorkloadPackId>(ref reader, s => new
WorkloadPackId
(s));
541
aliasTo = ReadStringDictionary(ref reader, s => new
WorkloadPackId
(s));
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadPackId.cs (1)
52
new
(reader.GetString() ?? string.Empty);
98 references to WorkloadPackId
dotnet (26)
_generated\119\PackInfoJsonSerializerContext.WorkloadPackId.g.cs (9)
13
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
>? _WorkloadPackId;
19
public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
> WorkloadPackId
22
get => _WorkloadPackId ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
>)Options.GetTypeInfo(typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
));
25
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
> Create_WorkloadPackId(global::System.Text.Json.JsonSerializerOptions options)
27
if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
> jsonTypeInfo))
29
global::System.Text.Json.Serialization.JsonConverter converter = ExpandConverter(typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
), new global::Microsoft.NET.Sdk.WorkloadManifestReader.PackIdJsonConverter(), options);
30
jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateValueInfo<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
> (options, converter);
_generated\121\PackInfoJsonSerializerContext.PackInfo.g.cs (6)
32
ObjectWithParameterizedConstructorCreator = static args => new global::Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadResolver.PackInfo((global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
)args[0], (string)args[1], (global::Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadPackKind)args[2], (string)args[3], (string)args[4]),
35
ConstructorAttributeProviderFactory = static () => typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadResolver.PackInfo).GetConstructor(InstanceMemberBindingFlags, binder: null, new[] {typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
), typeof(string), typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadPackKind), typeof(string), typeof(string)}, modifiers: null),
53
var info0 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
>
68
AttributeProviderFactory = static () => typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadResolver.PackInfo).GetProperty("Id", InstanceMemberBindingFlags, null, typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
), global::System.Array.Empty<global::System.Type>(), null),
71
properties[0] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
>(options, info0);
208
ParameterType = typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
),
_generated\124\PackInfoJsonSerializerContext.GetJsonTypeInfo.g.cs (1)
26
if (type == typeof(global::Microsoft.NET.Sdk.WorkloadManifestReader.
WorkloadPackId
))
Commands\Workload\Install\FileBasedInstaller.cs (5)
503
Dictionary<(
WorkloadPackId
packId, string packVersion), List<SdkFeatureBand>> packInstallRecords = GetAllPackInstallRecords();
835
private string GetPackInstallRecordPath(
WorkloadPackId
packId, string packVersion, SdkFeatureBand featureBand) =>
838
private Dictionary<(
WorkloadPackId
packId, string packVersion), List<SdkFeatureBand>> GetAllPackInstallRecords()
840
Dictionary<(
WorkloadPackId
packId, string packVersion), List<SdkFeatureBand>> records = [];
851
var
packId = new WorkloadPackId(Path.GetFileName(packIdDir));
Commands\Workload\Install\WorkloadGarbageCollector.cs (1)
39
public HashSet<(
WorkloadPackId
id, string version)> PacksToKeep = [];
Commands\Workload\WorkloadJsonSerializerContext.cs (4)
16
/// Local converter for <see cref="
WorkloadPackId
"/> so the source generator can access it
19
internal sealed class WorkloadPackIdJsonConverter : JsonConverter<
WorkloadPackId
>
21
public override
WorkloadPackId
Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) =>
24
public override void Write(Utf8JsonWriter writer,
WorkloadPackId
value, JsonSerializerOptions options) =>
Microsoft.DotNet.TemplateLocator (72)
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\IWorkloadResolver.cs (4)
9
IEnumerable<
WorkloadPackId
> GetPacksInWorkload(WorkloadId workloadId);
16
ISet<WorkloadResolver.WorkloadInfo>? GetWorkloadSuggestionForMissingPacks(IList<
WorkloadPackId
> packId, out ISet<
WorkloadPackId
> unsatisfiablePacks);
36
WorkloadResolver.PackInfo? TryGetPackInfo(
WorkloadPackId
packId);
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadDefinition.cs (2)
20
List<
WorkloadPackId
>? packs, List<string>? platforms
35
public List<
WorkloadPackId
>? Packs { get; }
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadManifest.cs (2)
13
internal WorkloadManifest(string id, FXVersion version, string? description, string manifestPath, Dictionary<WorkloadId, BaseWorkloadDefinition> workloads, Dictionary<
WorkloadPackId
, WorkloadPack> packs, Dictionary<string, FXVersion>? dependsOnManifests)
49
public Dictionary<
WorkloadPackId
, WorkloadPack> Packs { get; }
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadManifestReader.cs (9)
89
Dictionary<
WorkloadPackId
, WorkloadPack>? packs = null;
177
packs ?? new Dictionary<
WorkloadPackId
, WorkloadPack>(),
274
private static Dictionary<
WorkloadPackId
, WorkloadPack> ReadWorkloadPacks(ref Utf8JsonStreamReader reader)
278
var packs = new Dictionary<
WorkloadPackId
, WorkloadPack>();
285
var
packId = new WorkloadPackId(reader.GetString() ?? string.Empty);
405
List<
WorkloadPackId
>? packs = null;
450
packs = ReadStringArray<
WorkloadPackId
>(ref reader, s => new WorkloadPackId(s));
500
private static WorkloadPack ReadWorkloadPack(
WorkloadPackId
id, ref Utf8JsonStreamReader reader)
506
Dictionary<string,
WorkloadPackId
>? aliasTo = null;
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadPack.cs (6)
8
public WorkloadPack(
WorkloadPackId
id, string version, WorkloadPackKind kind, Dictionary<string,
WorkloadPackId
>? aliasTo)
16
public
WorkloadPackId
Id { get; }
20
public Dictionary<string,
WorkloadPackId
>? AliasTo { get; }
22
public
WorkloadPackId
? TryGetAliasForRuntimeIdentifiers(IEnumerable<string> runtimeIdentifiers)
31
if (AliasTo.TryGetValue(runtimeIdentifier, out
WorkloadPackId
alias))
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadPackId.cs (13)
16
public struct WorkloadPackId : IComparable<
WorkloadPackId
>, IEquatable<
WorkloadPackId
>
30
public int CompareTo(
WorkloadPackId
other) => string.Compare(_id, other._id, StringComparison.OrdinalIgnoreCase);
32
public bool Equals(
WorkloadPackId
other) => string.Equals(_id, other._id, StringComparison.OrdinalIgnoreCase);
36
public override bool Equals(object? obj) => obj is
WorkloadPackId
id && Equals(id);
42
public static implicit operator string(
WorkloadPackId
id) => id._id;
44
public static bool operator ==(
WorkloadPackId
a,
WorkloadPackId
b) => a.Equals(b);
46
public static bool operator !=(
WorkloadPackId
a,
WorkloadPackId
b) => !a.Equals(b);
49
public class PackIdJsonConverter : JsonConverter<
WorkloadPackId
>
51
public override
WorkloadPackId
Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) =>
54
public override void Write(Utf8JsonWriter writer,
WorkloadPackId
value, JsonSerializerOptions options) => writer.WriteStringValue(value.ToString());
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadResolver.cs (24)
19
private readonly Dictionary<
WorkloadPackId
, (WorkloadPack pack, WorkloadManifest manifest)> _packs = new();
246
if (ResolvePackPath(pack, out
WorkloadPackId
resolvedPackageId, out bool isInstalled) is string aliasedPath && isInstalled)
259
private PackInfo CreatePackInfo(WorkloadPack pack, string aliasedPath,
WorkloadPackId
resolvedPackageId) => new(
272
private
WorkloadPackId
? ResolveId(WorkloadPack pack)
279
if (pack.TryGetAliasForRuntimeIdentifiers(_currentRuntimeIdentifiers) is
WorkloadPackId
aliasedId)
298
out
WorkloadPackId
resolvedId,
301
if (ResolveId(pack) is
WorkloadPackId
resolved)
311
string GetPackPath(
WorkloadPackId
resolvedPackageId, string packageVersion, WorkloadPackKind kind, out bool isInstalled)
371
private HashSet<
WorkloadPackId
> GetInstalledPacks()
374
var installedPacks = new HashSet<
WorkloadPackId
>();
375
foreach ((
WorkloadPackId
id, (WorkloadPack pack, WorkloadManifest _)) in _packs)
386
public IEnumerable<
WorkloadPackId
> GetPacksInWorkload(WorkloadId workloadId)
405
return workload.Packs ?? Enumerable.Empty<
WorkloadPackId
>();
468
internal IEnumerable<(
WorkloadPackId
packId, WorkloadDefinition referencingWorkload, WorkloadManifest workloadDefinedIn)> GetPacksInWorkload(WorkloadDefinition workload, WorkloadManifest manifest)
474
foreach (
var
p in w.Packs)
488
public PackInfo? TryGetPackInfo(
WorkloadPackId
packId)
498
if (ResolvePackPath(pack, out
WorkloadPackId
resolvedPackageId, out bool isInstalled) is string aliasedPath)
513
public ISet<WorkloadInfo>? GetWorkloadSuggestionForMissingPacks(IList<
WorkloadPackId
> packIds, out ISet<
WorkloadPackId
> unsatisfiablePacks)
516
var requestedPacks = new HashSet<
WorkloadPackId
>(packIds);
519
List<(WorkloadId Id, HashSet<
WorkloadPackId
> Packs)>? expandedWorkloads = availableWorkloads
520
.Select(w => (w.workload.Id, new HashSet<
WorkloadPackId
>(GetPacksInWorkload(w.workload, w.manifest).Select(p => p.packId))))
665
public PackInfo(
WorkloadPackId
id, string version, WorkloadPackKind kind, string path, string resolvedPackageId)
677
public
WorkloadPackId
Id { get; }
src\sdk\src\Resolvers\Microsoft.NET.Sdk.WorkloadManifestReader\WorkloadSuggestionFinder.cs (12)
8
public WorkloadSuggestionFinder(HashSet<
WorkloadPackId
> installedPacks, HashSet<
WorkloadPackId
> requestedPacks, IEnumerable<(WorkloadId id, HashSet<
WorkloadPackId
> expandedPacks)> expandedWorkloads)
43
HashSet<
WorkloadPackId
> requestedPacks,
44
IEnumerable<(WorkloadId id, HashSet<
WorkloadPackId
> expandedPacks)> expandedWorkloads,
54
var unsatisfied = new HashSet<
WorkloadPackId
>(requestedPacks.Where(p => !workload.expandedPacks.Contains(p)));
116
var combinedPacks = new HashSet<
WorkloadPackId
>(root.Packs);
118
var stillMissing = new HashSet<
WorkloadPackId
>(root.UnsatisfiedPacks);
206
public WorkloadSuggestionCandidate(HashSet<WorkloadId> id, HashSet<
WorkloadPackId
> packs, HashSet<
WorkloadPackId
> unsatisfiedPacks)
214
public HashSet<
WorkloadPackId
> Packs { get; }
215
public HashSet<
WorkloadPackId
> UnsatisfiedPacks { get; }