Version

AsyncVirtualDataSourceProviderWorker Class Members

The following tables list the members exposed by AsyncVirtualDataSourceProviderWorker.

Public Constructors
 NameDescription
Public ConstructorAsyncVirtualDataSourceProviderWorker ConstructorConstructs an AsyncVirtualDataSourceProviderWorker  
Protected Fields
 NameDescription
Protected FieldInitialRetryDelayThe initial delay to retry a failing task.  
Protected FieldMaxRetryDelayThe maximum delay to retry a failing task.  
Protected FieldMaxSimultaneousExecutingTasksThe maximum number of simultaneously execution tasks that is permitted.  
Protected FieldSyncLockA synchronization lock to use serialize access to state.  
Public Properties
 NameDescription
Public PropertyIsRunningGets or sets whether the worker is currently running or not.  
Public PropertyIsShutdownGets or sets whether the worker has been shut down.  
Protected Properties
 NameDescription
Protected PropertyActualCountGets or sets the actual current full count of the records associated with the data provider.  
Protected PropertyActualPageSizeGets or sets the coerced page size that consumers of the data provider should respect.  
Protected PropertyActualSchemaGets or sets the current resolved IDataSourceSchema for the provider.  
Protected PropertyExecutionContextGets the execution context to synchronize with when reporting on loaded pages.  
Protected PropertyPageLoadedGets a callback to invoke when a page request has finished loading.  
Protected PropertyPopulatedActualPageSizeGets or sets whether ActualPageSize has been populated with a coerced value and should be retained, regardless as to whether non-full pages are seen.  
Protected PropertyTasksGets the currently active set of requests for the worker.  
Public Methods
 NameDescription
Public MethodAddPageRequestAdds a new page request to the worker.  
Public MethodAddPageRequestWithRetryAdds a page request with the specified retry delay.  
Public MethodRemoveAllPageRequestsRemoves all pending or active page requests from the worker.  
Public MethodRemovePageRequestRemoves a page request with the specifiec index from the worker.  
Public MethodShutdownCauses the worker to shut down its operation. Worker should not be reused once entered into this state.  
Protected Methods
 NameDescription
Protected MethodAwaitChangesCalled by the worker to perform a timed wait for changes to occur.  
Protected MethodCheckAndPotentiallyWaitOnTasksChecks the status of the current tasks, and if possible, yields until changes occur to the active tasks or the worker settings.  
Protected MethodDoWorkThe main loop for the worker.  
Protected MethodGetCompletedTaskDataPopulates the implementation specific data for the specified completed task.  
Protected MethodGetTaskDataHolderOverride to provide the implementation specific data holder for the tasks.  
Protected MethodGetTasksDataOverride to populate the implementation specific data for the tasks.  
Protected MethodInitializeCalled when the worker is initializing itself before starting the work loop. Override to add additional initialization before the work loop starts.  
Protected MethodIsLastPageReturns true if the provided index represents the last page of the data.  
Protected MethodMakeTaskForRequestOrverride to specify how a task gets constructed for a request.  
Protected MethodProcessCompletedTaskOverride to specify how a completed task is handled. This should call the PageLoaded callback, synchronizing with the ExecutionContext, if a page has been successfully loaded.  
Protected MethodRemoveCompletedTaskDataOverride to specify how implementation specific data gets removed for a completed task.  
Protected MethodRetryIndexRetries a request with the requested delay.  
Protected MethodSignalChangesOcurredCalled to indicate that something changed that should immediately wake the worker to further process the active requests.  
See Also