Restructure solution layout by module

This commit is contained in:
master
2025-10-28 15:10:40 +02:00
parent 95daa159c4
commit d870da18ce
4103 changed files with 192899 additions and 187024 deletions

View File

@@ -0,0 +1,39 @@
using System.Collections.Immutable;
using System.Text.Json;
namespace StellaOps.Concelier.RawModels;
public static class RawDocumentFactory
{
public static AdvisoryRawDocument CreateAdvisory(
string tenant,
RawSourceMetadata source,
RawUpstreamMetadata upstream,
RawContent content,
RawIdentifiers identifiers,
RawLinkset linkset,
string? supersedes = null)
{
var clonedContent = content with { Raw = Clone(content.Raw) };
return new AdvisoryRawDocument(tenant, source, upstream, clonedContent, identifiers, linkset, supersedes);
}
public static VexRawDocument CreateVex(
string tenant,
RawSourceMetadata source,
RawUpstreamMetadata upstream,
RawContent content,
RawLinkset linkset,
ImmutableArray<VexStatementSummary> statements,
string? supersedes = null)
{
var clonedContent = content with { Raw = Clone(content.Raw) };
return new VexRawDocument(tenant, source, upstream, clonedContent, linkset, statements, supersedes);
}
private static JsonElement Clone(JsonElement element)
{
using var document = JsonDocument.Parse(element.GetRawText());
return document.RootElement.Clone();
}
}