class WSConnectorSimpleHTTPWithLangReplacement in Web Service Data 8
Same name and namespace in other branches
- 2.0.x src/Plugin/WSConnector/WSConnectorSimpleHTTPWithLangReplacement.php \Drupal\wsdata\Plugin\WSConnector\WSConnectorSimpleHTTPWithLangReplacement
HTTP Connector.
Plugin annotation
@WSConnector(
id = "WSConnectorSimpleHTTPWithLangReplacement",
label = @Translation("Simple HTTP connector with Language Replacement", context = "WSConnector"),
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\wsdata\Plugin\WSConnectorBase implements WSConnectorInterface uses StringTranslationTrait
- class \Drupal\wsdata\Plugin\WSConnector\WSConnectorSimpleHTTP
- class \Drupal\wsdata\Plugin\WSConnector\WSConnectorSimpleHTTPWithLangReplacement
- class \Drupal\wsdata\Plugin\WSConnector\WSConnectorSimpleHTTP
- class \Drupal\wsdata\Plugin\WSConnectorBase implements WSConnectorInterface uses StringTranslationTrait
Expanded class hierarchy of WSConnectorSimpleHTTPWithLangReplacement
File
- src/
Plugin/ WSConnector/ WSConnectorSimpleHTTPWithLangReplacement.php, line 20
Namespace
Drupal\wsdata\Plugin\WSConnectorView source
class WSConnectorSimpleHTTPWithLangReplacement extends WSConnectorSimpleHTTP {
/**
* {@inheritdoc}
*/
public function __construct(array $configuration, $plugin_id, $plugin_definition, Client $http_client, Token $token, LanguageManagerInterface $language_manager) {
parent::__construct($configuration, $plugin_id, $plugin_definition, $http_client, $token, $language_manager);
$this->http_client = $http_client;
$this->token = $token;
$this->language_manager = $language_manager;
}
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
return new static($configuration, $plugin_id, $plugin_definition, $container
->get('http_client'), $container
->get('token'), $container
->get('language_manager'));
}
/**
* {@inheritdoc}
*/
public function getReplacements(array $options) {
$replacements = parent::getReplacements($options);
unset($replacements[array_search('LANGUAGE', $replacements)]);
return $replacements;
}
/**
* {@inheritdoc}
*/
public function getOptionsForm($options = []) {
$form = parent::getOptionsForm($options);
$form['intructions'] = [
'#markup' => $this
->t("This connector will replace the string [LANGUAGE] in the path or the WSServer URL with the strings defined below, depending on the site's current content language"),
'#weight' => -50,
];
$form['urllang'] = [
'#title' => $this
->t('URL Language Replacement'),
'#type' => 'fieldset',
];
foreach ($this->language_manager
->getLanguages() as $langcode => $language) {
$form['lang-' . $langcode] = [
'#type' => 'textfield',
'#title' => $this
->t('Replacement value for %lang', [
'%lang' => $language
->getName(),
]),
'#default_value' => $langcode,
];
}
return $form;
}
/**
* Ajax callback function.
*/
public static function wsconnectorHttpHeaderAjaxCallback(array &$form, FormStateInterface $form_state) {
return $form['options']['wsserveroptions']['headers'];
}
/**
* {@inheritdoc}
*/
public function call($options, $method, $replacements = [], $data = NULL, array $tokens = []) {
$langcode = $options['langcode'] ?? $this->language_manager
->getCurrentLanguage(LanguageInterface::TYPE_CONTENT)
->getId();
$replacements['LANGUAGE'] = $options['lang-' . $langcode] ?? $langcode;
return parent::call($options, $method, $replacements, $data, $tokens);
}
/**
* {@inheritdoc}
*/
public function getCache() {
return $this->language_manager
->getCurrentLanguage(LanguageInterface::TYPE_CONTENT)
->getId();
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
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. | |
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. | |
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | property | ||
WSConnectorBase:: |
protected | function | Internal function for applying replacements. | |
WSConnectorBase:: |
protected | function | Clear current error. | |
WSConnectorBase:: |
public | function | Figure out the overrides for cache times. | |
WSConnectorBase:: |
public | function | Get the expired time for caching. | |
WSConnectorBase:: |
protected | function | Internal function for finding tokens. | |
WSConnectorBase:: |
public | function | Getter for the endpoint. | |
WSConnectorBase:: |
public | function | Return the last error the connector received. | |
WSConnectorBase:: |
public | function | Return the status of the last call. | |
WSConnectorBase:: |
public | function | Return the list of supported language handling plugins. | |
WSConnectorBase:: |
public | function | Whether the connector is in a dead state and shouldn't be called. | |
WSConnectorBase:: |
public | function | Setter for the endpoint. | |
WSConnectorBase:: |
protected | function | Setter for the connector errors. | |
WSConnectorSimpleHTTP:: |
public | function |
Return available methods supported by the connector. Overrides WSConnectorBase:: |
2 |
WSConnectorSimpleHTTP:: |
public | function |
Return available options supported by the connector. Overrides WSConnectorBase:: |
2 |
WSConnectorSimpleHTTP:: |
public | function |
Saves the options form. Overrides WSConnectorBase:: |
|
WSConnectorSimpleHTTP:: |
public | function | Sets the expires times based on the response. | |
WSConnectorSimpleHTTP:: |
public | function |
Whether returned data can be cached. Overrides WSConnectorBase:: |
|
WSConnectorSimpleHTTPWithLangReplacement:: |
public | function |
Make the connector call. Overrides WSConnectorSimpleHTTP:: |
|
WSConnectorSimpleHTTPWithLangReplacement:: |
public static | function |
Creates an instance of the plugin. Overrides WSConnectorSimpleHTTP:: |
|
WSConnectorSimpleHTTPWithLangReplacement:: |
public | function |
Return cache cid for cases cache rules change. Overrides WSConnectorBase:: |
|
WSConnectorSimpleHTTPWithLangReplacement:: |
public | function |
Return the settings form provided by the connector. Overrides WSConnectorSimpleHTTP:: |
|
WSConnectorSimpleHTTPWithLangReplacement:: |
public | function |
Return an array of replacements. Overrides WSConnectorSimpleHTTP:: |
|
WSConnectorSimpleHTTPWithLangReplacement:: |
public static | function |
Ajax callback function. Overrides WSConnectorSimpleHTTP:: |
|
WSConnectorSimpleHTTPWithLangReplacement:: |
public | function |
Constructs a \Drupal\Component\Plugin\PluginBase object. Overrides WSConnectorSimpleHTTP:: |