Class CascadingFilterBase<TContent>
Abstract base class for a filter that can cascade filters from any referenced content items that are necessary to migrate a given content item.
Inheritance
Inherited Members
Namespace: Tableau.Migration.Engine.Hooks.Filters.Default.Cascade
Assembly: Tableau.Migration.dll
Syntax
public abstract class CascadingFilterBase<TContent> : ContentFilterBase<TContent>, IContentFilter<TContent>, IMigrationHook<ContentFilterContext<TContent>> where TContent : IContentReference
Type Parameters
| Name | Description |
|---|---|
| TContent |
Constructors
CascadingFilterBase(IMigrationManifestEditor, ISharedResourcesLocalizer?, ILogger<CascadingFilterBase<TContent>>?)
Creates a new CascadingFilterBase<TContent> object.
Declaration
protected CascadingFilterBase(IMigrationManifestEditor manifest, ISharedResourcesLocalizer? localizer, ILogger<CascadingFilterBase<TContent>>? logger)
Parameters
| Type | Name | Description |
|---|---|---|
| IMigrationManifestEditor | manifest | The manifest to find cascade filter status from. |
| ISharedResourcesLocalizer | localizer | |
| ILogger<CascadingFilterBase<TContent>> | logger |
Methods
Filter(ContentFilterContextItem<TContent>)
Considers the content item for filtering.
Declaration
public override void Filter(ContentFilterContextItem<TContent> item)
Parameters
| Type | Name | Description |
|---|---|---|
| ContentFilterContextItem<TContent> | item | The item to potentially filter. |
Overrides
HasCascadingFilterReference(Type, ContentLocation?)
Finds if a required content reference has been excluded by a cascading filter.
Declaration
protected bool HasCascadingFilterReference(Type referenceType, ContentLocation? location)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | referenceType | The reference's content type. |
| ContentLocation? | location | The reference's location. |
Returns
| Type | Description |
|---|---|
| bool | True if the reference has a cascading filter, otherwise false. |
HasCascadingFilterReference(Type, IContentReference?)
Finds if a required content reference has been excluded by a cascading filter.
Declaration
protected bool HasCascadingFilterReference(Type referenceType, IContentReference? reference)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | referenceType | The reference's content type. |
| IContentReference | reference | The reference's value. |
Returns
| Type | Description |
|---|---|
| bool | True if the reference has a cascading filter, otherwise false. |
HasCascadingFilterReference<TReference>(ContentLocation?)
Finds if a required content reference has been excluded by a cascading filter.
Declaration
protected bool HasCascadingFilterReference<TReference>(ContentLocation? location)
Parameters
| Type | Name | Description |
|---|---|---|
| ContentLocation? | location | The reference's location. |
Returns
| Type | Description |
|---|---|
| bool | True if the reference has a cascading filter, otherwise false. |
Type Parameters
| Name | Description |
|---|---|
| TReference | The reference's content type. |
HasCascadingFilterReference<TReference>(IContentReference?)
Finds if a required content reference has been excluded by a cascading filter.
Declaration
protected bool HasCascadingFilterReference<TReference>(IContentReference? reference)
Parameters
| Type | Name | Description |
|---|---|---|
| IContentReference | reference | The reference's value. |
Returns
| Type | Description |
|---|---|
| bool | True if the reference has a cascading filter, otherwise false. |
Type Parameters
| Name | Description |
|---|---|
| TReference | The reference's content type. |
HasCascadingFilterReferences(ContentFilterContextItem<TContent>)
Finds if any of the required content references on the current item have been excluded with a cascading filter.
Optional references like many-to-many references are not considered.
Declaration
protected virtual bool HasCascadingFilterReferences(ContentFilterContextItem<TContent> item)
Parameters
| Type | Name | Description |
|---|---|---|
| ContentFilterContextItem<TContent> | item | The current item to find content references for. |
Returns
| Type | Description |
|---|---|
| bool | True if any content reference has a cascading filter, otherwise false. |
HasExtraCascadingFilterReferences(ContentFilterContextItem<TContent>)
Finds if any non-interface driven references have been excluded with a cascading filter.
Declaration
protected abstract bool HasExtraCascadingFilterReferences(ContentFilterContextItem<TContent> item)
Parameters
| Type | Name | Description |
|---|---|---|
| ContentFilterContextItem<TContent> | item | The current item to find content references for. |
Returns
| Type | Description |
|---|---|
| bool | True if any content reference has a cascading filter, otherwise false. |