Beamable SDK
|
Persistent Batch Manager. Subclass of BatchManager that adds the ability to persist batches to disk and restore from disk This BatchManager enforces that type T is a JsonSerializable.ISerializable More...
Public Member Functions | |
PersistentBatchManager (CoroutineService coroutineService, string storageKey, int batchCapacity, double batchTimeoutSeconds, float heartbeatInterval=1f) | |
Initializes a new instance of the PersistentBatchManager<T> class. More... | |
override void | Add (T item) |
Add an item to the Batch More... | |
Public Member Functions inherited from Beamable.Api.Analytics.Batch.BatchManager< T > | |
BatchManager (CoroutineService coroutineService, int batchCapacity, double batchTimeoutSeconds, float heartbeatInterval=1f) | |
Initializes a new instance of the BatchManager<T> class. More... | |
void | Start () |
Start this batch's lifecycle processing This starts a coroutine which executs a Heartbeat at a regular interval More... | |
void | Stop () |
Stop this batch's lifecycle processing This means the Heartbeat will cease to execute More... | |
void | RestartHeartbeat (bool onlyIfStarted=true) |
virtual void | Flush () |
Flush this Batch This causes it to expire, trigger the relevant callbacks, and rotate More... | |
void | SetCapacity (int batchCapacity) |
Sets the batch's capacity threshold before expiration. More... | |
void | SetTimeoutSeconds (double batchTimeoutSeconds) |
Sets the timeout seconds before expiration. More... | |
void | SetHeartbeat (float heatbeatInterval) |
Protected Member Functions | |
override void | OnStart () |
override void | RotateBatch () |
Rotates the batch. This creates a new batch, hooks OnExpired event, and declares the batch ready for backup More... | |
override void | OnHeartbeat () |
Raises the heartbeat event. This runs the base class OnHeartbeat and also checks whether we should backup the batch. More... | |
void | BackupEventBatch () |
Backups the event batch to disk. More... | |
void | RestoreEventBatch () |
Restores the event batch from disk and adds any elements to the current batch. More... | |
Protected Member Functions inherited from Beamable.Api.Analytics.Batch.BatchManager< T > | |
void | OnExpired (List< T > batchItems) |
Raises the expired event. More... | |
virtual void | CheckBatchExpired () |
Checks whether the batch should be expired. More... | |
Protected Attributes | |
string | _storageKey |
The storage key used for persisting to disk. More... | |
bool | _backupBatchNow |
A flag which determines whether to backup the current batch on the next Heartbeat. More... | |
Protected Attributes inherited from Beamable.Api.Analytics.Batch.BatchManager< T > | |
bool | _isActive |
Flag for whether the BatchManager is actively evaluating the batch's lifecycle More... | |
int | _batchCapacity |
double | _batchTimeoutSeconds |
double | _heartbeatSeconds |
WaitForSeconds | _heartbeatInterval |
IEnumerator | _heatbeatCoroutine |
IBatchContainer< T > | _currentBatch |
Additional Inherited Members | |
Events inherited from Beamable.Api.Analytics.Batch.BatchManager< T > | |
Action< List< T > > | OnBatchExpired |
Occurs when on batch expired. More... | |
Persistent Batch Manager. Subclass of BatchManager that adds the ability to persist batches to disk and restore from disk This BatchManager enforces that type T is a JsonSerializable.ISerializable
T | : | class | |
T | : | JsonSerializable.ISerializable |
|
inline |
Initializes a new instance of the PersistentBatchManager<T> class.
storageKey | Storage key used for persistent storage. |
batchCapacity | Batch capacity threshold for batch expiration. |
batchTimeoutSeconds | Maximum seconds before a batch is expired. |
heartbeatInterval | Heartbeat interval. |
|
inlinevirtual |
Add an item to the Batch
item | Item. |
Reimplemented from Beamable.Api.Analytics.Batch.BatchManager< T >.
|
inlineprotected |
Backups the event batch to disk.
|
inlineprotectedvirtual |
Raises the heartbeat event. This runs the base class OnHeartbeat and also checks whether we should backup the batch.
Reimplemented from Beamable.Api.Analytics.Batch.BatchManager< T >.
|
inlineprotected |
Restores the event batch from disk and adds any elements to the current batch.
|
inlineprotectedvirtual |
Rotates the batch. This creates a new batch, hooks OnExpired event, and declares the batch ready for backup
Reimplemented from Beamable.Api.Analytics.Batch.BatchManager< T >.
|
protected |
A flag which determines whether to backup the current batch on the next Heartbeat.
|
protected |
The storage key used for persisting to disk.