You are here

public static function Update360::create in Lightning Media 8.3

Same name and namespace in other branches
  1. 8.4 src/Update/Update360.php \Drupal\lightning_media\Update\Update360::create()

Instantiates a new instance of this class.

This is a factory method that returns a new instance of this class. The factory should pass any needed dependencies into the constructor of this class, but not the container itself. Every call to this method must return a new instance of this class; that is, it may not implement a singleton.

Parameters

\Symfony\Component\DependencyInjection\ContainerInterface $container: The service container this instance should use.

Overrides ContainerInjectionInterface::create

File

src/Update/Update360.php, line 68

Class

Update360
Contains optional updates targeting Lightning Media 3.6.0.

Namespace

Drupal\lightning_media\Update

Code

public static function create(ContainerInterface $container) {

  /** @var \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager */
  $entity_type_manager = $container
    ->get('entity_type.manager');
  $arguments = [
    $entity_type_manager
      ->getStorage('entity_browser'),
    $entity_type_manager
      ->getStorage('embed_button'),
    $container
      ->get('string_translation'),
  ];
  if ($container
    ->has('lightning.content_roles')) {
    $arguments[] = $container
      ->get('lightning.content_roles');
  }
  return (new \ReflectionClass(static::class))
    ->newInstanceArgs($arguments);
}