FederatedComputeScheduler


public class FederatedComputeScheduler
extends Object

java.lang.Object
   ↳ android.adservices.ondevicepersonalization.FederatedComputeScheduler


Handles scheduling federated compute jobs. See IsolatedService.getFederatedComputeScheduler(RequestToken).

Summary

Nested classes

class FederatedComputeScheduler.Params

The parameters related to job scheduling. 

Public methods

void cancel(FederatedComputeInput input)

Cancels a federated compute job with input training params.

void schedule(FederatedComputeScheduler.Params params, FederatedComputeInput input)

Schedules a federated compute job.

void schedule(FederatedComputeScheduleRequest federatedComputeScheduleRequest, OutcomeReceiver<FederatedComputeScheduleResponseException> outcomeReceiver)

Schedules a federated compute job.

Inherited methods

Public methods

cancel

Added in API level 35
public void cancel (FederatedComputeInput input)

Cancels a federated compute job with input training params. In IsolatedService.onRequest(RequestToken), the app can call IsolatedService.getFederatedComputeScheduler(RequestToken) to pass scheduler when constructing the IsolatedWorker.
This method may take several seconds to complete, so it should only be called from a worker thread.

Parameters
input FederatedComputeInput: the configuration of the federated compute. It should be consistent with the federated compute server setup. This value cannot be null.

schedule

Added in API level 35
public void schedule (FederatedComputeScheduler.Params params, 
                FederatedComputeInput input)

Schedules a federated compute job. In IsolatedService.onRequest, the app can call IsolatedService.getFederatedComputeScheduler to pass the scheduler when constructing the IsolatedWorker.
This method may take several seconds to complete, so it should only be called from a worker thread.

Parameters
params FederatedComputeScheduler.Params: parameters related to job scheduling. This value cannot be null.

input FederatedComputeInput: the configuration of the federated computation. It should be consistent with the federated compute server setup. This value cannot be null.

schedule

public void schedule (FederatedComputeScheduleRequest federatedComputeScheduleRequest, 
                OutcomeReceiver<FederatedComputeScheduleResponseException> outcomeReceiver)

Schedules a federated compute job. In IsolatedService.onRequest, the app can call IsolatedService.getFederatedComputeScheduler to pass the scheduler when constructing the IsolatedWorker.
This method may take several seconds to complete, so it should only be called from a worker thread.

Parameters
federatedComputeScheduleRequest FederatedComputeScheduleRequest: input parameters related to job scheduling. This value cannot be null.

outcomeReceiver OutcomeReceiver: This either returns a FederatedComputeScheduleResponse on success, or Exception on failure. The exception type is OnDevicePersonalizationException with error code OnDevicePersonalizationException.ERROR_INVALID_TRAINING_MANIFEST if the manifest is missing the federated compute server URL or OnDevicePersonalizationException.ERROR_SCHEDULE_TRAINING_FAILED when scheduling fails for other reasons. This value cannot be null.