Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ConvertSerializedData.php
Go to the documentation of this file.
1 <?php
8 
15 
21 {
25  private $moduleDataSetup;
26 
30  private $fieldDataConverterFactory;
31 
35  private $queryModifierFactory;
36 
43  public function __construct(
44  \Magento\Framework\Setup\ModuleDataSetupInterface $moduleDataSetup,
45  FieldDataConverterFactory $fieldDataConverterFactory,
46  QueryModifierFactory $queryModifierFactory
47  ) {
48  $this->moduleDataSetup = $moduleDataSetup;
49  $this->fieldDataConverterFactory = $fieldDataConverterFactory;
50  $this->queryModifierFactory = $queryModifierFactory;
51  }
52 
56  public function apply()
57  {
58  $this->moduleDataSetup->getConnection()->startSetup();
59  $this->convertSerializedData();
60  $this->moduleDataSetup->getConnection()->endSetup();
61  }
62 
66  public static function getDependencies()
67  {
68  return [
69  RegisterThemes::class
70  ];
71  }
72 
76  public static function getVersion()
77  {
78  return '2.0.2';
79  }
80 
84  public function getAliases()
85  {
86  return [];
87  }
88 
92  private function convertSerializedData()
93  {
94  $fieldDataConverter = $this->fieldDataConverterFactory->create(SerializedToJson::class);
95  $queryModifier = $this->queryModifierFactory->create(
96  'in',
97  [
98  'values' => [
99  'path' => [
100  'design/theme/ua_regexp',
101  ]
102  ]
103  ]
104  );
105  $fieldDataConverter->convert(
106  $this->moduleDataSetup->getConnection(),
107  $this->moduleDataSetup->getTable('core_config_data'),
108  'config_id',
109  'value',
110  $queryModifier
111  );
112  }
113 }
__construct(\Magento\Framework\Setup\ModuleDataSetupInterface $moduleDataSetup, FieldDataConverterFactory $fieldDataConverterFactory, QueryModifierFactory $queryModifierFactory)