cloud-8.x-2.0-beta1/modules/cloud_service_providers/aws_cloud/src/Form/Ec2/KeyPairDeleteForm.php
modules/cloud_service_providers/aws_cloud/src/Form/Ec2/KeyPairDeleteForm.php
<?php
namespace Drupal\aws_cloud\Form\Ec2;
use Drupal\Core\Form\FormStateInterface;
/**
* Provides a form for deleting a KeyPair entity.
*
* @ingroup aws_cloud
*/
class KeyPairDeleteForm extends AwsDeleteForm {
/**
* {@inheritdoc}
*/
public function submitForm(array &$form, FormStateInterface $form_state) {
$entity = $this->entity;
$this->ec2Service->setCloudContext($entity->getCloudContext());
if ($this->ec2Service->deleteKeyPair(
[
'KeyName' => $entity->getKeyPairName(),
]) != NULL
) {
$message = $this->t('The @type "@label" has been deleted.', [
'@type' => $entity->getEntityType()->getLabel(),
'@label' => $entity->label(),
]);
$entity->delete();
$this->messenger->addMessage($message);
}
else {
$message = $this->t('The @type "@label" couldn\'t delete.', [
'@type' => $entity->getEntityType()->getLabel(),
'@label' => $entity->label(),
]);
$this->messenger->addError($message);
}
$form_state->setRedirect('view.aws_cloud_key_pair.list', ['cloud_context' => $entity->getCloudContext()]);
}
}
