Class BaseDataConsumer<T>
Base class for data consumers to inherit from.
Inheritance
BaseDataConsumer<T>
Syntax
public abstract class BaseDataConsumer<T>
Type Parameters
Constructors
BaseDataConsumer()
Declaration
protected BaseDataConsumer()
Fields
_keysToRemove
Declaration
protected List<string> _keysToRemove
Field Value
_uploadIsArtifact
Declaration
protected Dictionary<string, bool> _uploadIsArtifact
Field Value
_uploadQueue
Declaration
protected Queue<string> _uploadQueue
Field Value
Type |
Description |
Queue<String> |
|
_uploadsInFlight
Declaration
protected Dictionary<string, BaseDataConsumer<T>.Uploadable> _uploadsInFlight
Field Value
kMaxSimultaneousUploads
Declaration
protected const int kMaxSimultaneousUploads = 50
Field Value
kMaxUploadRetryAttempts
Declaration
protected const int kMaxUploadRetryAttempts = 5
Field Value
kUseConsoleLog
Declaration
protected const bool kUseConsoleLog = true
Field Value
Methods
_ServiceName()
Declaration
protected string _ServiceName()
Returns
Consume(Object, Boolean, Boolean)
Consumes the object data.
Declaration
public void Consume(object data, bool synchronous = false, bool isArtifact = true)
Parameters
Type |
Name |
Description |
Object |
data |
data to be consumed. Generally a string representing a path.
|
Boolean |
synchronous |
If true, consumption will complete before returning.
|
Boolean |
isArtifact |
A flag indicating if object being consumed is artifact or not.
|
ConsumptionStillInProgress()
Returns true if there is any consumption in progress.
Declaration
public bool ConsumptionStillInProgress()
Returns
LocalPathToObjectPath(String)
Implementation for LocalPathToObjectPath must be implemented in derived class.
Declaration
public virtual string LocalPathToObjectPath(string localPath)
Parameters
Type |
Name |
Description |
String |
localPath |
|
Returns
Upload(String, String, Boolean)
Implementation for Upload must be implemented in derived class.
Declaration
public virtual bool Upload(string localPath, string objectPath, bool isArtifact)
Parameters
Returns
UploadAsync(Stream, String, Boolean)
Implementation for UploadAsync must be implemented in derived class.
Declaration
public virtual Task<T> UploadAsync(Stream source, string objectPath, bool isArtifact)
Parameters
Returns