FederatedComputeScheduler
open class FederatedComputeScheduler
| kotlin.Any | |
| ↳ | android.adservices.ondevicepersonalization.FederatedComputeScheduler |
Handles scheduling federated compute jobs. See android.adservices.ondevicepersonalization.IsolatedService#getFederatedComputeScheduler.
Summary
| Nested classes | |
|---|---|
| open |
The parameters related to job scheduling. |
| Public methods | |
|---|---|
| open Unit |
cancel(input: FederatedComputeInput)Cancels a federated compute job with input training params. |
| open Unit |
schedule(params: FederatedComputeScheduler.Params, input: FederatedComputeInput)Schedules a federated compute job. |
| open Unit |
schedule(federatedComputeScheduleRequest: FederatedComputeScheduleRequest, executor: Executor, outcomeReceiver: OutcomeReceiver<FederatedComputeScheduleResponse!, Exception!>)Schedules a federated compute job. |
Public methods
cancel
open fun cancel(input: FederatedComputeInput): Unit
Cancels a federated compute job with input training params. In android.adservices.ondevicepersonalization.IsolatedService#onRequest, the app can call android.adservices.ondevicepersonalization.IsolatedService#getFederatedComputeScheduler 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
open fun schedule(
params: FederatedComputeScheduler.Params,
input: FederatedComputeInput
): Unit
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 as described in Federated Compute Server documentation. . This value cannot be null. |
schedule
open fun schedule(
federatedComputeScheduleRequest: FederatedComputeScheduleRequest,
executor: Executor,
outcomeReceiver: OutcomeReceiver<FederatedComputeScheduleResponse!, Exception!>
): Unit
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. |
executor |
Executor: the Executor on which to invoke the callback. This value cannot be null. Callback and listener events are dispatched through this Executor, providing an easy way to control which thread is used. To dispatch events through the main thread of your application, you can use Context.getMainExecutor(). Otherwise, provide an Executor that dispatches to an appropriate thread. |
outcomeReceiver |
OutcomeReceiver<FederatedComputeScheduleResponse!, Exception!>: This either returns a FederatedComputeScheduleResponse on success, or Exception on failure. The exception type is OnDevicePersonalizationException with error code android.adservices.ondevicepersonalization.OnDevicePersonalizationException#ERROR_INVALID_TRAINING_MANIFEST if the manifest is missing the federated compute server URL or android.adservices.ondevicepersonalization.OnDevicePersonalizationException#ERROR_SCHEDULE_TRAINING_FAILED when scheduling fails for other reasons. This value cannot be null. |