*/ protected function input_properties(): array { return array( 'job_id' => array( 'type' => 'string', 'description' => __( 'Job identifier returned by all-in-one/start-export.', 'acrossai-abilities-manager' ), ), ); } /** * @since 0.0.35 * @return array */ protected function required_input(): array { return array('job_id'); } /** * @since 0.0.35 * @return array */ protected function output_properties(): array { return array( 'job_id' => array( 'type' => 'string' ), 'running' => array( 'type' => 'boolean' ), 'finished' => array( 'type' => 'boolean' ), 'backup_id' => array( 'type' => array( 'string', 'null' ) ), 'last_message' => array( 'type' => 'string' ), 'note' => array( 'type' => 'string' ), ); } /** * @since 0.0.35 * @return array */ protected function annotations(): array { return array( 'readonly' => true, 'destructive' => false, 'idempotent' => true, ); } /** * @since 0.0.35 * @param array $input Input. * @return array|WP_Error */ protected function run( array $input ) { return Archive_Repository::job_progress( (string) $input['job_id'] ); } }