Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions
BackupActionItems Class Reference
Inheritance diagram for BackupActionItems:

Public Member Functions

 __construct (\Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider, \Magento\Setup\Model\WebLogger $logger, \Magento\Framework\App\Filesystem\DirectoryList $directoryList, \Magento\Framework\Backup\Filesystem $fileSystem)
 
 indexAction ()
 
 checkAction ()
 
 createAction ()
 

Detailed Description

Definition at line 16 of file BackupActionItems.php.

Constructor & Destructor Documentation

◆ __construct()

Constructor

Parameters
\Magento\Setup\Model\ObjectManagerProvider$objectManagerProvider
\Magento\Setup\Model\WebLogger$logger
\Magento\Framework\App\Filesystem\DirectoryList$directoryList
\Magento\Framework\Backup\Filesystem$fileSystem

Definition at line 48 of file BackupActionItems.php.

53  {
54  $objectManager = $objectManagerProvider->get();
55  $this->backupHandler = $objectManager->create(
56  \Magento\Framework\Setup\BackupRollback::class,
57  ['log' => $logger]
58  );
59  $this->directoryList = $directoryList;
60  $this->fileSystem = $fileSystem;
61  }
$objectManager
Definition: bootstrap.php:17
$logger

Member Function Documentation

◆ checkAction()

checkAction ( )

Checks disk space availability

Returns
\Zend\View\Model\JsonModel

Definition at line 81 of file BackupActionItems.php.

82  {
83  $params = Json::decode($this->getRequest()->getContent(), Json::TYPE_ARRAY);
84  $backupDir = $this->directoryList->getPath(DirectoryList::VAR_DIR)
86  try {
87  $totalSize = 0;
88  if (isset($params['options']['code']) && $params['options']['code']) {
89  $totalSize += $this->backupHandler->getFSDiskSpace();
90  }
91  if (isset($params['options']['media']) && $params['options']['media']) {
92  $totalSize += $this->backupHandler->getFSDiskSpace(Factory::TYPE_MEDIA);
93  }
94  if (isset($params['options']['db']) && $params['options']['db']) {
95  $totalSize += $this->backupHandler->getDBDiskSpace();
96  }
97  $this->fileSystem->validateAvailableDiscSpace($backupDir, $totalSize);
98  return new JsonModel(
99  [
101  'size' => true
102  ]
103  );
104  } catch (\Exception $e) {
105  return new JsonModel(
106  [
108  'error' => $e->getMessage()
109  ]
110  );
111  }
112  }
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
Definition: website.php:18

◆ createAction()

createAction ( )

Takes backup for code, media or DB

Returns
\Zend\View\Model\JsonModel

Definition at line 119 of file BackupActionItems.php.

120  {
121  $params = Json::decode($this->getRequest()->getContent(), Json::TYPE_ARRAY);
122  try {
123  $time = time();
124  $backupFiles = [];
125  if (isset($params['options']['code']) && $params['options']['code']) {
126  $backupFiles[] = $this->backupHandler->codeBackup($time);
127  }
128  if (isset($params['options']['media']) && $params['options']['media']) {
129  $backupFiles[] = $this->backupHandler->codeBackup($time, Factory::TYPE_MEDIA);
130  }
131  if (isset($params['options']['db']) && $params['options']['db']) {
132  $backupFiles[] = $this->backupHandler->dbBackup($time);
133  }
134  return new JsonModel(
135  [
137  'files' => $backupFiles
138  ]
139  );
140  } catch (\Exception $e) {
141  return new JsonModel(
142  [
144  'error' => $e->getMessage()
145  ]
146  );
147  }
148  }
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
Definition: website.php:18

◆ indexAction()

indexAction ( )

No index action, return 404 error page

Returns
\Zend\View\Model\ViewModel

Definition at line 68 of file BackupActionItems.php.

69  {
70  $view = new \Zend\View\Model\ViewModel;
71  $view->setTemplate('/error/404.phtml');
72  $this->getResponse()->setStatusCode(\Zend\Http\Response::STATUS_CODE_404);
73  return $view;
74  }

The documentation for this class was generated from the following file: