abstract class ProviderUsingHandlerBase in Geocoder 8.2
Same name and namespace in other branches
- 8.3 src/ProviderUsingHandlerBase.php \Drupal\geocoder\ProviderUsingHandlerBase
Provides a base class for providers using handlers.
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\geocoder\ProviderBase implements ContainerFactoryPluginInterface, ProviderInterface
- class \Drupal\geocoder\ProviderUsingHandlerBase
- class \Drupal\geocoder\ProviderBase implements ContainerFactoryPluginInterface, ProviderInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of ProviderUsingHandlerBase
5 files declare their use of ProviderUsingHandlerBase
- File.php in src/
Plugin/ Geocoder/ Provider/ File.php - Geoip.php in src/
Plugin/ Geocoder/ Provider/ Geoip.php - GeoJsonFile.php in modules/
geocoder_geofield/ src/ Plugin/ Geocoder/ Provider/ GeoJsonFile.php - GPXFile.php in modules/
geocoder_geofield/ src/ Plugin/ Geocoder/ Provider/ GPXFile.php - KMLFile.php in modules/
geocoder_geofield/ src/ Plugin/ Geocoder/ Provider/ KMLFile.php
File
- src/
ProviderUsingHandlerBase.php, line 12
Namespace
Drupal\geocoderView source
abstract class ProviderUsingHandlerBase extends ProviderBase {
/**
* The provider handler.
*
* @var \Geocoder\Provider\Provider
*/
protected $handler;
/**
* {@inheritdoc}
*
* @throws \Drupal\Component\Plugin\Exception\InvalidPluginDefinitionException
*/
public function __construct(array $configuration, $plugin_id, $plugin_definition, ConfigFactoryInterface $config_factory, CacheBackendInterface $cache_backend) {
// The ProviderBase constructor needs to be run anyway (before possible
// exception @throw), to allow the ProviderBase process method.
parent::__construct($configuration, $plugin_id, $plugin_definition, $config_factory, $cache_backend);
if (empty($plugin_definition['handler'])) {
throw new InvalidPluginDefinitionException($plugin_id, "Plugin '{$plugin_id}' should define an handler.");
}
}
/**
* {@inheritdoc}
*
* @throws \ReflectionException
*/
protected function doGeocode($source) {
return $this
->getHandler()
->geocode($source);
}
/**
* {@inheritdoc}
*
* @throws \ReflectionException
*/
protected function doReverse($latitude, $longitude) {
return $this
->getHandler()
->reverse($latitude, $longitude);
}
/**
* Returns the provider handler.
*
* @return \Geocoder\Provider\Provider
* The provider plugin.
*
* @throws \ReflectionException
*/
protected function getHandler() {
if (!isset($this->handler)) {
$definition = $this
->getPluginDefinition();
$reflection_class = new \ReflectionClass($definition['handler']);
$this->handler = $reflection_class
->newInstanceArgs($this
->getArguments());
}
return $this->handler;
}
/**
* Builds a list of arguments to be used by the handler.
*
* @return array
* The list of arguments for handler instantiation.
*/
protected function getArguments() {
$arguments = [];
foreach ($this
->getPluginDefinition()['arguments'] as $key => $argument) {
// No default value has been passed.
if (is_string($key)) {
$config_name = $key;
$default_value = $argument;
}
else {
$config_name = $argument;
$default_value = NULL;
}
$arguments[] = isset($this->configuration[$config_name]) ? $this->configuration[$config_name] : $default_value;
}
return $arguments;
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
ProviderBase:: |
protected | property | The cache backend used to cache geocoding data. | |
ProviderBase:: |
protected | property | The config factory service. | |
ProviderBase:: |
public static | function |
Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface:: |
1 |
ProviderBase:: |
public | function |
Geocode a source string. Overrides ProviderInterface:: |
|
ProviderBase:: |
protected | function | Builds a cached id. | |
ProviderBase:: |
protected | function | Provides a helper callback for geocode() and reverse(). | |
ProviderBase:: |
public | function |
Reverse geocode latitude and longitude. Overrides ProviderInterface:: |
|
ProviderUsingHandlerBase:: |
protected | property | The provider handler. | |
ProviderUsingHandlerBase:: |
protected | function |
Overrides ProviderBase:: |
|
ProviderUsingHandlerBase:: |
protected | function |
Overrides ProviderBase:: |
|
ProviderUsingHandlerBase:: |
protected | function | Builds a list of arguments to be used by the handler. | 1 |
ProviderUsingHandlerBase:: |
protected | function | Returns the provider handler. | |
ProviderUsingHandlerBase:: |
public | function |
Overrides ProviderBase:: |
1 |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. |