Interface IMigrationManifestEntryBuilder
Interface for an object that can create new or link existing manifest entries to source content items.
Namespace: Tableau.Migration.Engine.Manifest
Assembly: Tableau.Migration.dll
Syntax
public interface IMigrationManifestEntryBuilder
Methods
CreateEntries<TItem, TResultItem>(IReadOnlyCollection<TItem>, Func<TItem, IMigrationManifestEntryEditor, TResultItem>, int)
Creates or links manifest entries to a set of content items.
Declaration
ImmutableArray<TResultItem> CreateEntries<TItem, TResultItem>(IReadOnlyCollection<TItem> sourceContentItems, Func<TItem, IMigrationManifestEntryEditor, TResultItem> resultFactory, int expectedTotalCount) where TItem : IContentReference
Parameters
Type | Name | Description |
---|---|---|
IReadOnlyCollection<TItem> | sourceContentItems | The source content items to create or link manifest entries for. |
Func<TItem, IMigrationManifestEntryEditor, TResultItem> | resultFactory | A factory function to produce result items for, useful for linking a created manifest entry with the source content item it is associated with. |
int | expectedTotalCount | The updated expected total entry count. This should reflect the total number of content items that will be processed, regardless of paging or filtering. |
Returns
Type | Description |
---|---|
ImmutableArray<TResultItem> | An immutable array of results returned by |
Type Parameters
Name | Description |
---|---|
TItem | The input content item type to use. |
TResultItem | The result item to return. |
DestinationInfoUpdated(IMigrationManifestEntryEditor, IContentReference?)
Registers a destination information update for an entry to update caches.
Declaration
void DestinationInfoUpdated(IMigrationManifestEntryEditor entry, IContentReference? oldDestinationInfo)
Parameters
Type | Name | Description |
---|---|---|
IMigrationManifestEntryEditor | entry | The manifest entry that was updated. |
IContentReference | oldDestinationInfo | The old destination information. |
MapEntriesAsync<TItem>(IEnumerable<TItem>, IContentMappingRunner, CancellationToken)
Maps all existing manifest entries to their intended destination locations.
Declaration
Task<IMigrationManifestEntryBuilder> MapEntriesAsync<TItem>(IEnumerable<TItem> sourceContentItems, IContentMappingRunner mapper, CancellationToken cancel) where TItem : IContentReference
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<TItem> | sourceContentItems | The content items to map. |
IContentMappingRunner | mapper | An object to use to map entries. Supplied as a parameter to avoid DI circular references at plan initialization time. |
CancellationToken | cancel | The cancellation token to obey. |
Returns
Type | Description |
---|---|
Task<IMigrationManifestEntryBuilder> | The current entry builder, for fluent API usage. |
Type Parameters
Name | Description |
---|---|
TItem | The input content item type. |
MigrationFailed(IMigrationManifestEntryEditor)
Registers that migration failed for a content item for logging.
Declaration
void MigrationFailed(IMigrationManifestEntryEditor entry)
Parameters
Type | Name | Description |
---|---|---|
IMigrationManifestEntryEditor | entry | The manifest entry that was updated. |
StatusUpdated(IMigrationManifestEntryEditor, MigrationManifestEntryStatus)
Registers a status change update for an entry to update totals.
Declaration
void StatusUpdated(IMigrationManifestEntryEditor entry, MigrationManifestEntryStatus oldStatus)
Parameters
Type | Name | Description |
---|---|---|
IMigrationManifestEntryEditor | entry | The manifest entry that was updated. |
MigrationManifestEntryStatus | oldStatus | The old status. |