Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions | Protected Member Functions | Protected Attributes
AbstractSave Class Reference
Inheritance diagram for AbstractSave:
ObserverInterface SaveGoogleExperimentScriptObserver SaveGoogleExperimentScriptObserver SaveGoogleExperimentScriptObserver

Public Member Functions

 __construct (\Magento\GoogleOptimizer\Helper\Data $helper, \Magento\GoogleOptimizer\Model\Code $modelCode, \Magento\Framework\App\RequestInterface $request)
 
 execute (Observer $observer)
 

Protected Member Functions

 _initEntity ($observer)
 
 _isGoogleExperimentActive ()
 
 _processCode ()
 
 _initRequestParams ()
 
 _isNewCode ()
 
 _saveCode ()
 
 _getCodeData ()
 
 _loadCode ()
 
 _isEmptyCode ()
 
 _deleteCode ()
 

Protected Attributes

 $_helper
 
 $_modelCode
 
 $_request
 
 $_params
 

Detailed Description

@api

Since
100.0.2

Definition at line 17 of file AbstractSave.php.

Constructor & Destructor Documentation

◆ __construct()

Parameters
\Magento\GoogleOptimizer\Helper\Data$helper
\Magento\GoogleOptimizer\Model\Code$modelCode
\Magento\Framework\App\RequestInterface$request

Definition at line 44 of file AbstractSave.php.

48  {
49  $this->_helper = $helper;
50  $this->_modelCode = $modelCode;
51  $this->_request = $request;
52  }
$helper
Definition: iframe.phtml:13

Member Function Documentation

◆ _deleteCode()

_deleteCode ( )
protected

Delete model code

Returns
void
Exceptions

Definition at line 182 of file AbstractSave.php.

183  {
184  $this->_modelCode->delete();
185  }

◆ _getCodeData()

_getCodeData ( )
abstractprotected

Get data for saving code model

Returns
array

◆ _initEntity()

_initEntity (   $observer)
abstractprotected

Init entity

Parameters
Observer$observer
Returns
void

◆ _initRequestParams()

_initRequestParams ( )
protected

Init request params

Returns
void
Exceptions

Definition at line 116 of file AbstractSave.php.

117  {
118  if (!$this->isDataAvailable()) {
119  throw new \InvalidArgumentException('Wrong request parameters');
120  }
121  $this->_params = $this->getRequestData();
122  }

◆ _isEmptyCode()

_isEmptyCode ( )
protected

Is empty code

Returns
bool

Definition at line 171 of file AbstractSave.php.

172  {
173  return empty($this->_params['experiment_script']);
174  }

◆ _isGoogleExperimentActive()

_isGoogleExperimentActive ( )
protected

Check is Google Experiment enabled

Returns
bool

Definition at line 84 of file AbstractSave.php.

85  {
86  return $this->_helper->isGoogleExperimentActive();
87  }

◆ _isNewCode()

_isNewCode ( )
protected

Check is new model

Returns
bool

Definition at line 129 of file AbstractSave.php.

130  {
131  return empty($this->_params['code_id']);
132  }

◆ _loadCode()

_loadCode ( )
protected

Load model code

Returns
void
Exceptions

Definition at line 158 of file AbstractSave.php.

159  {
160  $this->_modelCode->load($this->_params['code_id']);
161  if (!$this->_modelCode->getId()) {
162  throw new \InvalidArgumentException('Code does not exist');
163  }
164  }

◆ _processCode()

_processCode ( )
protected

Processes Save event of the entity

Returns
void

Definition at line 94 of file AbstractSave.php.

◆ _saveCode()

_saveCode ( )
protected

Save code model

Returns
void

Definition at line 139 of file AbstractSave.php.

140  {
141  $this->_modelCode->addData($this->_getCodeData());
142  $this->_modelCode->save();
143  }

◆ execute()

execute ( Observer  $observer)

Save script after saving entity

Parameters
Observer$observer
Returns
$this

Implements ObserverInterface.

Definition at line 60 of file AbstractSave.php.

61  {
62  $this->_initEntity($observer);
63 
64  if ($this->_isGoogleExperimentActive() && $this->isDataAvailable()) {
65  $this->_processCode();
66  }
67 
68  return $this;
69  }

Field Documentation

◆ $_helper

$_helper
protected

Definition at line 22 of file AbstractSave.php.

◆ $_modelCode

$_modelCode
protected

Definition at line 27 of file AbstractSave.php.

◆ $_params

$_params
protected

Definition at line 37 of file AbstractSave.php.

◆ $_request

$_request
protected

Definition at line 32 of file AbstractSave.php.


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