Refactor fluent download pipelines
This commit is contained in:
@@ -6,16 +6,9 @@ namespace Beam.Models;
|
||||
|
||||
public class ResourceDefinition {
|
||||
public required DataKey<ResourceDefinition> Key { get; init; }
|
||||
|
||||
public required MetaData Meta { get; init; }
|
||||
|
||||
/// <summary>Map of element name to extraction config. Keys must match ^[A-Za-z0-9_-]+$</summary>
|
||||
public required Table<IDataProvider> Elements { get; init; }
|
||||
|
||||
/// <summary>Minimum 1 item; polymorphic segments discriminated by "type".</summary>
|
||||
public required ILinkBuilder Url { get; init; }
|
||||
|
||||
/// <summary>Keys must match ^[A-Za-z0-9_-]+$</summary>
|
||||
public required UrlLocation Location { get; init; }
|
||||
public required Table<ResourceRelation> Relations { get; init; }
|
||||
|
||||
public class MetaData {
|
||||
@@ -24,4 +17,10 @@ public class ResourceDefinition {
|
||||
public string? Description { get; init; }
|
||||
public string? ProjectUrl { get; init; }
|
||||
}
|
||||
|
||||
public class UrlLocation {
|
||||
public ILinkBuilder Segments { get; init; }
|
||||
public List<ImmutableState> States { get; init; }
|
||||
public IStateChangerFactory StateChanger { get; init; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user