SearchBlock.php in Google Search Appliance 8
Namespace
Drupal\google_appliance\Plugin\BlockFile
src/Plugin/Block/SearchBlock.phpView source
<?php
namespace Drupal\google_appliance\Plugin\Block;
use Drupal\Core\Block\BlockBase;
use Drupal\Core\Form\FormBuilderInterface;
use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
use Drupal\google_appliance\Form\SearchForm;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Provides a 'Google Appliance Search' block.
*
* @Block(
* id = "google_appliance_search",
* admin_label = @Translation("Google Appliance Search"),
* category = @Translation("Forms")
* )
*/
class SearchBlock extends BlockBase implements ContainerFactoryPluginInterface {
/**
* Form builder.
*
* @var \Drupal\Core\Form\FormBuilderInterface
*/
protected $formBuilder;
/**
* Constructs a new SearchBlock object.
*
* @param array $configuration
* @param string $plugin_id
* @param mixed $plugin_definition
* @param \Drupal\Core\Form\FormBuilderInterface $formBuilder
*/
public function __construct(array $configuration, $plugin_id, $plugin_definition, FormBuilderInterface $formBuilder) {
parent::__construct($configuration, $plugin_id, $plugin_definition);
$this->formBuilder = $formBuilder;
}
/**
* Creates an instance of the plugin.
*
* @param \Symfony\Component\DependencyInjection\ContainerInterface $container
* The container to pull out services used in the plugin.
* @param array $configuration
* A configuration array containing information about the plugin instance.
* @param string $plugin_id
* The plugin ID for the plugin instance.
* @param mixed $plugin_definition
* The plugin implementation definition.
*
* @return static
* Returns an instance of this plugin.
*/
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
return new static($configuration, $plugin_id, $plugin_definition, $container
->get('form_builder'));
}
/**
* {@inheritdoc}
*/
public function build() {
return $this->formBuilder
->getForm(SearchForm::class);
}
}
Classes
Name | Description |
---|---|
SearchBlock | Provides a 'Google Appliance Search' block. |