public function LauncherSettingsForm::buildForm in Ultimate Cron 8.2
Form constructor.
Parameters
array $form: An associative array containing the structure of the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
array The form structure.
Overrides ConfigFormBase::buildForm
File
- src/
Form/ LauncherSettingsForm.php, line 29
Class
- LauncherSettingsForm
- Form for launcher settings.
Namespace
Drupal\ultimate_cron\FormCode
public function buildForm(array $form, FormStateInterface $form_state) {
$values = $this
->config('ultimate_cron.settings');
$form['timeouts'] = [
'#type' => 'fieldset',
'#title' => t('Timeouts'),
];
$form['launcher'] = [
'#type' => 'fieldset',
'#title' => t('Launching options'),
];
$form['timeouts']['lock_timeout'] = [
'#title' => t('Job lock timeout'),
'#type' => 'textfield',
'#default_value' => $values
->get('launcher.lock_timeout'),
'#description' => t('Number of seconds to keep lock on job.'),
'#fallback' => TRUE,
'#required' => TRUE,
];
$form['timeouts']['max_execution_time'] = [
'#title' => t('Maximum execution time'),
'#type' => 'textfield',
'#default_value' => $values
->get('launcher.max_execution_time'),
'#description' => t('Maximum execution time for a cron run in seconds.'),
'#fallback' => TRUE,
'#required' => TRUE,
];
$form['launcher']['max_threads'] = [
'#title' => t('Maximum number of launcher threads'),
'#type' => 'textfield',
'#default_value' => $values
->get('launcher.max_threads'),
'#description' => t('The maximum number of launch threads that can be running at any given time.'),
'#fallback' => TRUE,
'#required' => TRUE,
'#weight' => 1,
];
$options = [
'any',
'-- fixed --',
'1',
];
$form['launcher']['thread'] = [
'#title' => t('Run in thread'),
'#type' => 'select',
'#default_value' => $values
->get('launcher.thread'),
'#options' => $options,
'#description' => t('Which thread to run jobs in.') . '<br/>' . t('<strong>Any</strong>: Just use any available thread') . '<br/>' . t('<strong>Fixed</strong>: Only run in one specific thread. The maximum number of threads is spread across the jobs.') . '<br/>' . t('<strong>1-?</strong>: Only run when a specific thread is invoked. This setting only has an effect when cron is run through cron.php with an argument ?thread=N or through Drush with --options=thread=N.'),
'#fallback' => TRUE,
'#required' => TRUE,
'#weight' => 2,
];
return parent::buildForm($form, $form_state);
}