51Degrees Pipeline .NET  4.1

51Degrees Pipeline for .NET

FiftyOne.Pipeline.Engines.FiftyOne.FlowElements.FiftyOneOnPremiseAspectEngineBuilderBase< TBuilder, TEngine > Class Template Reference

Detailed Description

A base class for engine builders for on-premise engines that use a single data file and use the 51Degrees Distributor web service to check for and download data updates.

Template Parameters
TBuilder - The specific type of the builder.
TEngine - The type of the engine that this builder builds.
Type Constraints
TBuilder :FiftyOneOnPremiseAspectEngineBuilderBase 
TBuilder :TBuilder 
TBuilder :TEngine 
TEngine :IFiftyOneAspectEngine 

Inheritance diagram for FiftyOne.Pipeline.Engines.FiftyOne.FlowElements.FiftyOneOnPremiseAspectEngineBuilderBase< TBuilder, TEngine >:

[legend]

Collaboration diagram for FiftyOne.Pipeline.Engines.FiftyOne.FlowElements.FiftyOneOnPremiseAspectEngineBuilderBase< TBuilder, TEngine >:

[legend]

Public Member Functions

 FiftyOneOnPremiseAspectEngineBuilderBase (IDataUpdateService dataUpdateService)
Constructor More...
TBuilder  SetDataDownloadType (string typeName)
Set the 'type' string that will be sent to the 'distributor' service when downloading a new data file. More...

Public Member Functions inherited from FiftyOne.Pipeline.Engines.FlowElements.SingleFileAspectEngineBuilderBase< TBuilder, TEngine >

 SingleFileAspectEngineBuilderBase (IDataUpdateService dataUpdateService)
Constructor More...
virtual TEngine  Build (string datafile, bool createTempDataCopy)
Build an engine using the current options and the specified data file. More...
virtual TEngine  Build (Stream data)
Build an engine using the current options and the specified byte array. More...
TBuilder  SetDataUpdateUrl (string url)
Configure the engine to use the specified URL when looking for an updated data file. More...
TBuilder  SetDataUpdateUrl (Uri url)
Configure the engine to use the specified URL when looking for an updated data file. More...
TBuilder  SetDataUpdateUrlFormatter (IDataUpdateUrlFormatter formatter)
Specify a IDataUpdateUrlFormatter to be used by the DataUpdateService when building the complete URL to query for updated data. More...
TBuilder  SetDataUpdateVerifyMd5 (bool verify)
Set a value indicating if the DataUpdateService should expect the response from the data update URL to contain a 'content-md5' HTTP header that can be used to verify the integrity of the content. More...
TBuilder  SetDataUpdateDecompress (bool decompress)
Set a value indicating if the DataUpdateService should expect content from the configured data update URL to be compressed or not. More...
TBuilder  SetAutoUpdate (bool enabled)
Enable or disable automatic updates for this engine. More...
TBuilder  SetDataFileSystemWatcher (bool enabled)
The DataUpdateService has the ability to watch a data file on disk and automatically refresh the engine as soon as the file is updated. More...
TBuilder  SetUpdatePollingInterval (int pollingIntervalSeconds)
Set the time between checks for a new data file made by the DataUpdateService. More...
TBuilder  SetUpdatePollingInterval (TimeSpan pollingInterval)
Set the time between checks for a new data file made by the DataUpdateService. More...
TBuilder  SetUpdateRandomisationMax (int maximumDeviationSeconds)
A random element can be added to the DataUpdateService polling interval. More...
TBuilder  SetUpdateRandomisationMax (TimeSpan maximumDeviation)
A random element can be added to the DataUpdateService polling interval. More...
TBuilder  SetVerifyIfModifiedSince (bool enabled)
Set if DataUpdateService sends the If-Modified-Since header in the request for a new data file. More...
TBuilder  SetDataUpdateLicenseKey (string key)
Set the license key to use when updating the Engine's data file. More...
TBuilder  SetDataUpdateLicenseKeys (string[] keys)
Set the license keys to use when updating the Engine's data file. More...
TBuilder  SetDataUpdateOnStartup (bool enabled)
Configure the data file to update on startup or not. More...

Public Member Functions inherited from FiftyOne.Pipeline.Engines.FlowElements.OnPremiseAspectEngineBuilderBase< TBuilder, TEngine >

 OnPremiseAspectEngineBuilderBase (IDataUpdateService dataUpdateService)
Constructor More...
TBuilder  AddDataFile (IDataFileConfiguration configuration)
Add a data file for this engine to use. More...
TBuilder  SetTempDirPath (string dirPath)
Set the temporary path to use when the engine needs to create temporary files. More...
abstract TBuilder  SetPerformanceProfile (PerformanceProfiles profile)
Set the performance profile that the engine should use. More...

Public Member Functions inherited from FiftyOne.Pipeline.Engines.FlowElements.AspectEngineBuilderBase< TBuilder, TEngine >

TBuilder  SetLazyLoading (LazyLoadingConfiguration lazyLoadingConfig)
Configure lazy loading of results. More...
TBuilder  SetLazyLoadingTimeout (int timeoutMs)
Configure lazy loading of results. More...
TBuilder  SetCache (CacheConfiguration cacheConfig)
Configure the results cache that will be used by the Pipeline to cache results from this engine. More...
TBuilder  SetCacheSize (int cacheSize)
Configure the results cache that will be used by the Pipeline to cache results from this engine. More...
TBuilder  SetProperties (List< string > properties)
Configure the properties that the engine will populate in the response. More...
TBuilder  SetProperty (string property)
Add a property to the list of properties that the engine will populate in the response. More...

Protected Member Functions

override AspectEngineDataFile  NewAspectEngineDataFile ()
This method is called when the builder needs to create a new AspectEngineDataFile instance. More...

Protected Member Functions inherited from FiftyOne.Pipeline.Engines.FlowElements.SingleFileAspectEngineBuilderBase< TBuilder, TEngine >

virtual TEngine  Build ()
Build an engine using the configured options. More...

Protected Member Functions inherited from FiftyOne.Pipeline.Engines.FlowElements.OnPremiseAspectEngineBuilderBase< TBuilder, TEngine >

override void  PreCreateEngine ()
Called by the 'BuildEngine' method to handle anything that needs doing before the engine is built. More...
override void  ConfigureEngine (TEngine engine)
Called by the 'BuildEngine' method to handle configuration of the engine after it is built. More...

Protected Member Functions inherited from FiftyOne.Pipeline.Engines.FlowElements.AspectEngineBuilderBase< TBuilder, TEngine >

abstract TEngine  NewEngine (List< string > properties)
Called by the BuildEngine() method to handle creation of the engine instance. More...
TEngine  BuildEngine ()
Build an engine using the configured options. More...

Properties

abstract string  DefaultDataDownloadType [get]
The default value to use for the 'Type' parameter when sending a request to the Distributor More...

Properties inherited from FiftyOne.Pipeline.Engines.FlowElements.OnPremiseAspectEngineBuilderBase< TBuilder, TEngine >

List< IDataFileConfiguration >  DataFileConfigs = new List<IDataFileConfiguration>() [get, set]
A list of the IDataFileConfiguration instances for all data files being supplied to the engine. More...
List< AspectEngineDataFile >  DataFiles = new List<AspectEngineDataFile>() [get, set]
Used to store a temporary list of the data file meta data between their creation and the creation of the engine. More...
string  TempDir = Path.GetTempPath() [get, set]
The directory to use for temporary files when needed More...

Properties inherited from FiftyOne.Pipeline.Engines.FlowElements.AspectEngineBuilderBase< TBuilder, TEngine >

List< string >  Properties = new List<string>() [get]
A list of the string keys of properties that the user wants the engine to determine values for. More...

Constructor & Destructor Documentation

Member Function Documentation

◆ NewAspectEngineDataFile()

protected virtual

This method is called when the builder needs to create a new AspectEngineDataFile instance.

Returns
A new FiftyOneDataFile instance with the DataDownloadType property set based on the configuration of this builder.

Reimplemented from FiftyOne.Pipeline.Engines.FlowElements.OnPremiseAspectEngineBuilderBase< TBuilder, TEngine >.

Constructor

Parameters
dataUpdateService -

Member Function Documentation

◆ NewAspectEngineDataFile()

protected virtual

This method is called when the builder needs to create a new AspectEngineDataFile instance.

Returns
A new FiftyOneDataFile instance with the DataDownloadType property set based on the configuration of this builder.

Reimplemented from FiftyOne.Pipeline.Engines.FlowElements.OnPremiseAspectEngineBuilderBase< TBuilder, TEngine >.

◆ SetDataDownloadType()

TBuilder FiftyOne.Pipeline.Engines.FiftyOne.FlowElements.FiftyOneOnPremiseAspectEngineBuilderBase< TBuilder, TEngine >.SetDataDownloadType ( string   typeName )

Set the 'type' string that will be sent to the 'distributor' service when downloading a new data file.

Note that this is only needed if using UpdateOnStartup. Otherwise, the update service will use the type name from the existing data file. The default value is provided by the specific engine builder implementation.

Parameters
typeName - The download type to use. For example 'HashV4'.
Returns
This builder.

Property Documentation

◆ DefaultDataDownloadType

abstract string FiftyOne.Pipeline.Engines.FiftyOne.FlowElements.FiftyOneOnPremiseAspectEngineBuilderBase< TBuilder, TEngine >.DefaultDataDownloadType
get protected

The default value to use for the 'Type' parameter when sending a request to the Distributor

On This Page