DVPrivacyRuntime class abstract final

Erasure, export and retention for this process, as DV.Privacy.

Configured where there is a database and a signing key -- the generated server, from DARTVEL_PRIVACY_KEY -- and given every adapter the framework's own stores provide without the application listing them. An erasure missing the analytics adapters reports success while the subject's events and consent records are still where they were.

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Properties

current → DVPrivacy
The configured DVPrivacy, with every installed adapter.
no setter
isConfigured → bool
Whether DV.Privacy is configured in this process.
no setter

Static Methods

configure({required List<DVPrivacyModel> models, required DVDatabaseAdapter database, required List<int> signingKey, List<DVPrivacyAdapter> adapters = const <DVPrivacyAdapter>[], Duration deadline = const Duration(days: 30)}) → void
Configures DV.Privacy. Declarations that cannot be honoured throw here (DVPrivacyDeclarationError) rather than at the first erasure.
configureFromEnvironment({required Map<String, String> environment, required DVDatabaseAdapter? database, required List<DVPrivacyModel> models, Duration deadline = const Duration(days: 30)}) → bool
Configures DV.Privacy from keyVariable in environment.
installAdapters(Iterable<DVPrivacyAdapter> adapters) → void
Adds adapters to every DV.Privacy from now on, replacing any of the same name. Called by the framework's own stores as they start, so an adapter is installed whichever of the two is configured first.
resetForTest() → void
Forgets the configuration and installed adapters, for tests.
schedules({DateTime clock()?, DVScheduleLease? lease, void onFailure(DVScheduledFailure failure)?}) → DVScheduler?
A scheduler holding retentionTask and deadlineTask, or null where DV.Privacy is not configured.
start({DVQueues queues = const DVQueues()}) → Future<bool>
What the generated server runs at start, in every process: creates the walk's own tables and registers its erasure and retention jobs, with their codecs, on queues. The jobs run on the DV.Privacy current when each one runs.
startSchedules({Duration every = const Duration(seconds: 20), DateTime clock()?, DVScheduleLease? lease, void onFailure(DVScheduledFailure failure)?}) → Timer?
schedules, ticked every every. Null where DV.Privacy is not configured. The generated server starts it in the process that ticks the application's schedules.

Constants

deadlineSchedule → const String
When deadlineTask runs: hourly. A request whose job was lost is run a day after it was made, well inside a thirty-day deadline.
deadlineTask → const String
The scheduled task that runs open erasures before their deadline.
keyVariable → const String
The environment variable holding the signing key.
retentionSchedule → const String
When retentionTask runs: daily, at 03:00.
retentionTask → const String
The scheduled task that sweeps retention.