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. |