Skip to content
Snippets Groups Projects
Select Git revision
  • 609fe044506d756a394594e8d6079c2be62a7192
  • master default protected
  • bugfix/wordpress-review
  • initialize-tracker
  • 1.3.0
  • 1.2.3
  • 1.2.2
  • 1.2.1
  • 1.2.0
  • 1.2.0-beta.1
  • 1.1.0
  • 1.0.4
  • 1.0.3
  • 1.0.2
  • 1.0.1
  • 1.0.0
16 results

PluginBootstrap.php

Blame
  • PluginBootstrap.php 5.56 KiB
    <?php
    
    namespace WPDesk\Plugin\Flow;
    
    use WPDesk\Plugin\Flow\Initialization\InitializationFactory;
    
    /**
     * Bootstrap plugin loading
     * - check requirements
     * - prepare plugin info
     * - delegate plugin building to the initializator
     */
    final class PluginBootstrap {
    
    	const LIBRARY_TEXT_DOMAIN = 'wp-plugin-flow-common';
    	const PRIORITY_BEFORE_FLOW_2_5 = - 50;
    
    	/** @var string */
    	private $plugin_version;
    
    	/** @var string */
    	private $plugin_name;
    
    	/** @var string */
    	private $plugin_class_name;
    
    	/** @var string */
    	private $plugin_text_domain;
    
    	/** @var string */
    	private $plugin_dir;
    
    	/** @var string */
    	private $plugin_file;
    
    	/** @var array */
    	private $requirements;
    
    	/** @var string */
    	private $product_id;
    
    	/** @var array */
    	private $plugin_shops;
    
    	/**
    	 * Factory to build strategy how initialize that plugin
    	 *
    	 * @var InitializationFactory
    	 */
    	private $initialization_factory;
    
    	/**
    	 * WPDesk_Plugin_Bootstrap constructor.
    	 *
    	 * @param string $plugin_version
    	 * @param string $plugin_release_timestamp
    	 * @param string $plugin_name
    	 * @param string $plugin_class_name
    	 * @param string $plugin_text_domain
    	 * @param string $plugin_dir
    	 * @param string $plugin_file
    	 * @param array $requirements
    	 * @param string $product_id
    	 * @param InitializationFactory $build_factory
    	 * @param array $plugin_shops
    	 */
    	public function __construct(
    		$plugin_version,
    		$plugin_release_timestamp,
    		$plugin_name,