You are here

public static function RocketChatChannelBlock::create in Rocket.Chat 8.2

Creates an instance of the plugin.

Parameters

\Symfony\Component\DependencyInjection\ContainerInterface $container: The container to pull out services used in the plugin.

array $configuration: A configuration array containing information about the plugin instance.

string $plugin_id: The plugin ID for the plugin instance.

mixed $plugin_definition: The plugin implementation definition.

Return value

static Returns an instance of this plugin.

Overrides ContainerFactoryPluginInterface::create

File

modules/rocket_chat_group/src/Plugin/Block/RocketChatChannelBlock.php, line 296

Class

RocketChatChannelBlock
Provides an example block.

Namespace

Drupal\rocket_chat_group\Plugin\Block

Code

public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {

  /** @var ConfigFactoryInterface $configFactory */
  $configFactory = $container
    ->get('config.factory');

  /** @var ModuleHandlerInterface $modulehandler */
  $modulehandler = $container
    ->get('module_handler');

  /** @var StateInterface $stateInterface */
  $stateInterface = $container
    ->get('state');

  /** @var MessengerInterface $messenger */
  $messenger = $container
    ->get('messenger');

  /** @var EntityTypeManagerInterface $entityTypeManager */
  $entityTypeManager = $container
    ->get("entity_type.manager");

  /** @var \Drupal\Core\Path\CurrentPathStack $pathCurrent */
  $pathCurrent = $container
    ->get('path.current');

  /** @var AccountInterface $currentUser */
  $currentUser = $container
    ->get('current_user');

  /** @var LoggerChannelFactory $loggerFactory */
  $loggerFactory = $container
    ->get('logger.factory');
  return new static($configuration, $plugin_id, $plugin_definition, $messenger, $configFactory, $modulehandler, $stateInterface, $entityTypeManager, $pathCurrent, $currentUser, $loggerFactory);
}