ShareUsageDataPluginBase.php in Open Social 8.6
Same filename and directory in other branches
- 8.9 modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
- 8.5 modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
- 8.7 modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
- 8.8 modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
- 10.3.x modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
- 10.0.x modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
- 10.1.x modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
- 10.2.x modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.php
Namespace
Drupal\social_lets_connect_usage\PluginFile
modules/custom/social_lets_connect/modules/social_lets_connect_usage/src/Plugin/ShareUsageDataPluginBase.phpView source
<?php
namespace Drupal\social_lets_connect_usage\Plugin;
use Drupal\Component\Plugin\PluginBase;
use Drupal\Core\Config\ConfigFactory;
use Drupal\Core\Entity\EntityTypeManagerInterface;
use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
use Drupal\Core\StringTranslation\StringTranslationTrait;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Base class for Share usage data plugin plugins.
*/
abstract class ShareUsageDataPluginBase extends PluginBase implements ShareUsageDataPluginInterface, ContainerFactoryPluginInterface {
use StringTranslationTrait;
/**
* The entity type manager.
*
* @var \Drupal\Core\Entity\EntityTypeManagerInterface
*/
public $entityTypeManager;
/**
* The config.
*
* @var \Drupal\Core\Config\ConfigFactory
*/
public $config;
/**
* UserExportPluginBase constructor.
*
* @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.
* @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager
* The entity type manager.
* @param \Drupal\Core\Config\ConfigFactory $config
* The configuration.
*/
public function __construct(array $configuration, $plugin_id, $plugin_definition, EntityTypeManagerInterface $entity_type_manager, ConfigFactory $config) {
parent::__construct($configuration, $plugin_id, $plugin_definition);
$this->entityTypeManager = $entity_type_manager;
$this->config = $config;
}
/**
* The create method.
*
* @param \Symfony\Component\DependencyInjection\ContainerInterface $container
* Container interface.
* @param array $configuration
* An array of configuration.
* @param string $plugin_id
* The plugin id.
* @param mixed $plugin_definition
* The plugin definition.
*
* @return \Drupal\Core\Plugin\ContainerFactoryPluginInterface|\Drupal\social_user_export\Plugin\UserExportPluginBase
* Returns the UserExportPluginBase.
*/
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
return new static($configuration, $plugin_id, $plugin_definition, $container
->get('entity_type.manager'), $container
->get('config.factory'));
}
/**
* Get the value.
*
* @return array
* $json array.
*/
public function getValue() {
return [];
}
/**
* Check if this plugin should be enabled.
*/
public function enabled() {
$config = $this->config
->get('social_lets_connect_usage.settings');
$usage_data_settings = $config
->get('usage_data');
$plugin_definition = $this
->getPluginDefinition();
if (in_array($plugin_definition['setting'], $usage_data_settings)) {
return TRUE;
}
return FALSE;
}
}
Classes
Name | Description |
---|---|
ShareUsageDataPluginBase | Base class for Share usage data plugin plugins. |