__CLASS__ ); * * @access private * @var array * @static */ private $services = array(); /** * The current schedule object * * @access private * @var object HMBKP_Scheduled_Backup */ private $schedule; /** * Get the current instance * * @access public * @static */ public static function instance() { if ( ! isset( self::$instance ) ) self::$instance = new HMBKP_Services; return self::$instance; } /** * Register a new service * * @param $filepath * @param $classname * @return bool|WP_Error */ public static function register( $filepath, $classname ) { _deprecated_function( __METHOD__, '3.1.2' ); } /** * Instantiate the individual service classes * * @param string $classname * * @return array An array of instantiated classes */ private static function instantiate( $classname ) { if ( ! class_exists( $classname ) ) return new \WP_Error( 'hmbkp_invalid_type_error', sprintf( __( 'Argument 1 for %s must be a valid class', 'backupwordpress' ) ), __METHOD__ ); /** * @var HMBKP_Service */ $class = new $classname( self::instance()->schedule ); return $class; } }