registerJobsFor static method
As registerJobs, running each job on the DVPrivacy privacy returns
when it runs -- so a process whose configuration changes after start,
an adapter installed late, runs its jobs on the current one.
Implementation
static void registerJobsFor(DVQueues queues, DVPrivacy Function() privacy) {
const DVJobPayloadCodecs()
..register<DVPrivacyErasureRequest>(
const DVJobPayloadCodec<DVPrivacyErasureRequest>(
name: DVPrivacyErasureRequest.codecName,
encode: DVPrivacyErasureRequest.encode,
decode: DVPrivacyErasureRequest.decode,
),
)
..register<DVPrivacyRetentionRequest>(
const DVJobPayloadCodec<DVPrivacyRetentionRequest>(
name: DVPrivacyRetentionRequest.codecName,
encode: DVPrivacyRetentionRequest.encode,
decode: DVPrivacyRetentionRequest.decode,
),
);
queues
..register<DVPrivacyErasureRequest>((
DVPrivacyErasureRequest request,
) async {
final DVPrivacy current = privacy();
current.jobResults.add(
await current.erase(
subject: request.subject,
reason: request.reason,
requestedAt: request.requestedAt,
requestedBy: request.requestedBy,
runBy: request.runBy,
),
);
})
..register<DVPrivacyRetentionRequest>((
DVPrivacyRetentionRequest request,
) async {
await privacy().sweepRetention(
batchSize: request.batchSize,
maxBatches: request.maxBatches,
);
});
}