Table of Contents

Class CollectionSource

Namespace
EncDotNet.S100.Collections
Assembly
EncDotNet.S100.Collections.dll

Where a collection's items come from. Each concrete kind has an ICollectionSourceIndexer that turns it into CollectionItems.

[JsonPolymorphic(TypeDiscriminatorPropertyName = "kind")]
[JsonDerivedType(typeof(LocalFolderSource), "localFolder")]
[JsonDerivedType(typeof(ExchangeSetSource), "exchangeSet")]
[JsonDerivedType(typeof(S128CatalogueSource), "s128Catalogue")]
[JsonDerivedType(typeof(NoaaEncFeedSource), "noaaEncFeed")]
[JsonDerivedType(typeof(UsaceIencFeedSource), "usaceIencFeed")]
[JsonDerivedType(typeof(ChartCatalogsFeedSource), "chartCatalogsFeed")]
[JsonDerivedType(typeof(S100FeedSource), "s100Feed")]
[JsonDerivedType(typeof(LocalManifestSource), "localManifest")]
[JsonDerivedType(typeof(S100CatalogueFeedSource), "s100CatalogueFeed")]
[JsonDerivedType(typeof(S100ForecastFeedSource), "s100ForecastFeed")]
[JsonDerivedType(typeof(SecomSource), "secom")]
[JsonDerivedType(typeof(WeatherFeedSource), "weatherFeed")]
public abstract record CollectionSource : IEquatable<CollectionSource>
Inheritance
CollectionSource
Implements
Derived
Inherited Members

Constructors

CollectionSource(Guid, string?)

Where a collection's items come from. Each concrete kind has an ICollectionSourceIndexer that turns it into CollectionItems.

protected CollectionSource(Guid Id, string? DisplayName)

Parameters

Id Guid

The source's stable identifier (keys its cached index).

DisplayName string

An optional user-facing label.

Properties

DisplayName

An optional user-facing label.

public string? DisplayName { get; init; }

Property Value

string

Id

The source's stable identifier (keys its cached index).

public Guid Id { get; init; }

Property Value

Guid

ShowOnMap

True to keep the source's local datasets on the map (issue #809): a host opens them to load as the map pans to them, after every index, and closes those the source no longer has. Remembered with the source.

[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public bool ShowOnMap { get; init; }

Property Value

bool

Sync

True to keep the source's items downloaded and current (issues #807, #809): after every index, missing and outdated items are downloaded — and, for kinds that prune (SECOM), copies the source no longer lists are deleted. Online sources only; see LibrarySync. Remembered with the source.

[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public bool Sync { get; init; }

Property Value

bool