feat(transport): add bundle manifest DTOs in Commons
This commit is contained in:
13
src/ScadaLink.Commons/Types/Transport/BundleManifest.cs
Normal file
13
src/ScadaLink.Commons/Types/Transport/BundleManifest.cs
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
namespace ScadaLink.Commons.Types.Transport;
|
||||||
|
|
||||||
|
public sealed record BundleManifest(
|
||||||
|
int BundleFormatVersion,
|
||||||
|
string SchemaVersion,
|
||||||
|
DateTimeOffset CreatedAtUtc,
|
||||||
|
string SourceEnvironment,
|
||||||
|
string ExportedBy,
|
||||||
|
string ScadaLinkVersion,
|
||||||
|
string ContentHash,
|
||||||
|
EncryptionMetadata? Encryption,
|
||||||
|
BundleSummary Summary,
|
||||||
|
IReadOnlyList<ManifestContentEntry> Contents);
|
||||||
12
src/ScadaLink.Commons/Types/Transport/BundleSummary.cs
Normal file
12
src/ScadaLink.Commons/Types/Transport/BundleSummary.cs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
namespace ScadaLink.Commons.Types.Transport;
|
||||||
|
|
||||||
|
public sealed record BundleSummary(
|
||||||
|
int Templates,
|
||||||
|
int TemplateFolders,
|
||||||
|
int SharedScripts,
|
||||||
|
int ExternalSystems,
|
||||||
|
int DbConnections,
|
||||||
|
int NotificationLists,
|
||||||
|
int SmtpConfigs,
|
||||||
|
int ApiKeys,
|
||||||
|
int ApiMethods);
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
namespace ScadaLink.Commons.Types.Transport;
|
||||||
|
|
||||||
|
public sealed record EncryptionMetadata(
|
||||||
|
string Algorithm, // "AES-256-GCM"
|
||||||
|
string Kdf, // "PBKDF2-SHA256"
|
||||||
|
int Iterations,
|
||||||
|
string SaltB64,
|
||||||
|
string IvB64);
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
namespace ScadaLink.Commons.Types.Transport;
|
||||||
|
|
||||||
|
public sealed record ManifestContentEntry(
|
||||||
|
string Type,
|
||||||
|
string Name,
|
||||||
|
int Version,
|
||||||
|
IReadOnlyList<string> DependsOn);
|
||||||
Reference in New Issue
Block a user