DomFactory.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. /**
  3. * Config reader factory
  4. *
  5. * Copyright © Magento, Inc. All rights reserved.
  6. * See COPYING.txt for license details.
  7. */
  8. namespace Magento\Framework\ObjectManager\Config\Reader;
  9. /**
  10. * Factory class for \Magento\Framework\ObjectManager\Config\Reader\Dom
  11. */
  12. class DomFactory
  13. {
  14. /**
  15. * Object Manager instance
  16. *
  17. * @var \Magento\Framework\ObjectManagerInterface
  18. */
  19. protected $_objectManager = null;
  20. /**
  21. * Instance name to create
  22. *
  23. * @var string
  24. */
  25. protected $_instanceName = null;
  26. /**
  27. * Factory constructor
  28. *
  29. * @param \Magento\Framework\ObjectManagerInterface $objectManager
  30. * @param string $instanceName
  31. */
  32. public function __construct(
  33. \Magento\Framework\ObjectManagerInterface $objectManager,
  34. $instanceName = \Magento\Framework\ObjectManager\Config\Reader\Dom::class
  35. ) {
  36. $this->_objectManager = $objectManager;
  37. $this->_instanceName = $instanceName;
  38. }
  39. /**
  40. * Create class instance with specified parameters
  41. *
  42. * @param array $data
  43. * @return \Magento\Framework\ObjectManager\Config\Reader\Dom
  44. */
  45. public function create(array $data = [])
  46. {
  47. return $this->_objectManager->create($this->_instanceName, $data);
  48. }
  49. }