Show / Hide Table of Contents

Class SelectionProviderBaseV2

Implements the base common functionality for the different selection providers. This base class implements support for static, dynamic and combined selections.

Inheritance
object
MultiQueryProviderBase
SelectionProviderBaseV2
AppointmentSelectionProviderBaseV2
ChatConversationSelectionProviderBaseV2
ContactPersonSelectionProviderBaseV2
CustomObjectSelectionProviderBaseV2
DocumentSelectionProviderBaseV2
FormSubmissionSelectionProviderBaseV2
MailingsSelectionProviderBaseV2
ProjectSelectionProviderBaseV2
QuoteLineSelectionProviderBaseV2
SaleSelectionProviderBaseV2
SelectionSelectionProviderBaseV2
TicketSelectionProviderBaseV2
Implements
IArchiveMultiQueryProvider
IArchiveProvider
IArchiveProviderHasRows
IArchiveProviderHasColumns
IArchiveProviderHasEntities
Inherited Members
MultiQueryProviderBase.InnerPopulateRow(ArchiveRow)
MultiQueryProviderBase.AcceptRow(ArchiveRow)
MultiQueryProviderBase.PreGetRows()
MultiQueryProviderBase.GetFinalRowCount()
MultiQueryProviderBase.AddSubProvider<ProviderType>(ProviderType)
MultiQueryProviderBase.RemoveSubProvider<ProviderType>(ProviderType)
MultiQueryProviderBase.SetRestrictionAndDropUnrestrictedProviders(ArchiveRestrictionInfo[])
MultiQueryProviderBase.CreateAndAddProvidersAsync(MultiQueryProviderBase.AddProviderInfo[])
MultiQueryProviderBase.Close()
MultiQueryProviderBase.GetReaderAsync(string, CancellationToken)
MultiQueryProviderBase.GetResultInformationAsync()
MultiQueryProviderBase.SetPagingInfo(int, int)
MultiQueryProviderBase.GetAvailableColumns()
MultiQueryProviderBase.SetDesiredColumns(params string[])
MultiQueryProviderBase.SetOrderBy(ArchiveOrderByInfo[])
MultiQueryProviderBase.GetAvailableEntities()
MultiQueryProviderBase.SetDesiredEntities(params string[])
MultiQueryProviderBase.InhibitParallelStart
MultiQueryProviderBase.Options
MultiQueryProviderBase.OrderBy
MultiQueryProviderBase.InhibitDistinctPrimaryKeys
MultiQueryProviderBase.OrderByRequiresAll
MultiQueryProviderBase.RestrictionRequiresAll
MultiQueryProviderBase.OrderByRequired
MultiQueryProviderBase.RestrictionHelper
MultiQueryProviderBase.ColumnHelper
MultiQueryProviderBase.PageSize
MultiQueryProviderBase.PageNumber
MultiQueryProviderBase.HaveReadToEnd
MultiQueryProviderBase.Providers
MultiQueryProviderBase.DebugXML
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: SuperOffice.CRM.ArchiveLists.Archive
Assembly: SoDataBase.BusinessLogic.dll
Syntax
public abstract class SelectionProviderBaseV2 : MultiQueryProviderBase, IArchiveMultiQueryProvider, IArchiveProvider, IArchiveProviderHasRows, IArchiveProviderHasColumns, IArchiveProviderHasEntities

Constructors

SelectionProviderBaseV2(string, string, string, bool)

Implements the base common functionality for the different selection providers. This base class implements support for static, dynamic and combined selections.

Declaration
public SelectionProviderBaseV2(string staticProvidername, string dynamicProviderName, string combinedProviderName, bool isShadow)
Parameters
Type Name Description
string staticProvidername
string dynamicProviderName
string combinedProviderName
bool isShadow

Fields

ColumnSelectionId

Implements the base common functionality for the different selection providers. This base class implements support for static, dynamic and combined selections.

Declaration
public const string ColumnSelectionId = "selectionId"
Field Value
Type Description
string

_combinedProvider

Implements the base common functionality for the different selection providers. This base class implements support for static, dynamic and combined selections.

Declaration
protected IArchiveProvider _combinedProvider
Field Value
Type Description
IArchiveProvider

_dynamicProvider

Implements the base common functionality for the different selection providers. This base class implements support for static, dynamic and combined selections.

Declaration
protected IArchiveProvider _dynamicProvider
Field Value
Type Description
IArchiveProvider

_staticProvider

Implements the base common functionality for the different selection providers. This base class implements support for static, dynamic and combined selections.

Declaration
protected IArchiveProvider _staticProvider
Field Value
Type Description
IArchiveProvider

Methods

GetRowsAsync(string, CancellationToken)

Return rows as fetched by the base class, but count them. Update the selection member count if the selection id is known and we have read the last row of the selection

Declaration
public override IAsyncEnumerable<ArchiveRow> GetRowsAsync(string options, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string options
CancellationToken cancellationToken
Returns
Type Description
IAsyncEnumerable<ArchiveRow>
Overrides
MultiQueryProviderBase.GetRowsAsync(string, CancellationToken)

SetRestriction(ArchiveRestrictionInfo[])

Override: Handle aspects of restrictions that are common to static and dynamic selections, and prepare the restriction set slightly. More special handling occurs in SelectionContactPersonExtender and SelectionDynamicContactExtender, where the default + special handling of stop, retired and noDM is done.

Declaration
public override bool SetRestriction(ArchiveRestrictionInfo[] restrictions)
Parameters
Type Name Description
ArchiveRestrictionInfo[] restrictions
Returns
Type Description
bool
Overrides
MultiQueryProviderBase.SetRestriction(ArchiveRestrictionInfo[])

SetSelectionRestricion(ArchiveRestrictionInfo[], SelectionRow)

Method that sets the specific selection restrictions. This method exists so that subclasses can override it and use the selection row without having to retrieve it again.

Declaration
protected virtual ArchiveRestrictionInfo[] SetSelectionRestricion(ArchiveRestrictionInfo[] restrictions, SelectionRow selection)
Parameters
Type Name Description
ArchiveRestrictionInfo[] restrictions
SelectionRow selection
Returns
Type Description
ArchiveRestrictionInfo[]

TransformCombinedSelectionRestrictions(ArchiveRestrictionInfo[], SelectionRow, bool)

Combined selections are interested in the left/right/combination specification. This method creates those restrictions, based on a SelectionRow

Declaration
public static ArchiveRestrictionInfo[] TransformCombinedSelectionRestrictions(ArchiveRestrictionInfo[] restrictions, SelectionRow selection, bool isShadowSelection)
Parameters
Type Name Description
ArchiveRestrictionInfo[] restrictions
SelectionRow selection
bool isShadowSelection
Returns
Type Description
ArchiveRestrictionInfo[]

New array of restrictions

Implements

IArchiveMultiQueryProvider
IArchiveProvider
IArchiveProviderHasRows
IArchiveProviderHasColumns
IArchiveProviderHasEntities

Extension Methods

EnumUtil.MapEnums<From, To>(From)
Converters.MapEnums<From, To>(From)
IArchiverProviderHasRowsExtensions.GetRowsAsync(IArchiveProviderHasRows, CancellationToken)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top