-
Notifications
You must be signed in to change notification settings - Fork 9.3k
/
StoreManagerInterface.php
124 lines (108 loc) · 2.88 KB
/
StoreManagerInterface.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Store\Model;
use Magento\Framework\Exception\NoSuchEntityException;
/**
* Store manager interface
*
* @api
* @since 100.0.2
*/
interface StoreManagerInterface
{
/**
* Store cache context
*/
const CONTEXT_STORE = 'store';
/**
* The store GET Param name
*/
const PARAM_NAME = '___store';
/**
* Allow or disallow single store mode
*
* @param bool $value
* @return void
*/
public function setIsSingleStoreModeAllowed($value);
/**
* Check if store has only one store view
*
* @return bool
*/
public function hasSingleStore();
/**
* Check if system is run in the single store mode
*
* @return bool
*/
public function isSingleStoreMode();
/**
* Retrieve application store object
*
* @param null|string|bool|int|\Magento\Store\Api\Data\StoreInterface $storeId
* @return \Magento\Store\Api\Data\StoreInterface
* @throws NoSuchEntityException If given store doesn't exist.
*/
public function getStore($storeId = null);
/**
* Retrieve stores array
*
* @param bool $withDefault
* @param bool $codeKey
* @return \Magento\Store\Api\Data\StoreInterface[]
*/
public function getStores($withDefault = false, $codeKey = false);
/**
* Retrieve application website object
*
* @param null|bool|int|string|\Magento\Store\Api\Data\WebsiteInterface $websiteId
* @return \Magento\Store\Api\Data\WebsiteInterface
* @throws \Magento\Framework\Exception\LocalizedException
*/
public function getWebsite($websiteId = null);
/**
* Get loaded websites
*
* @param bool $withDefault
* @param bool $codeKey
* @return \Magento\Store\Api\Data\WebsiteInterface[]
*/
public function getWebsites($withDefault = false, $codeKey = false);
/**
* Reinitialize store list
*
* @return void
*/
public function reinitStores();
/**
* Retrieve default store for default group and website
*
* @return \Magento\Store\Api\Data\StoreInterface|null
*/
public function getDefaultStoreView();
/**
* Retrieve application store group object
*
* @param null|\Magento\Store\Api\Data\GroupInterface|string $groupId
* @return \Magento\Store\Api\Data\GroupInterface
*/
public function getGroup($groupId = null);
/**
* Prepare array of store groups
*
* @param bool $withDefault
* @return \Magento\Store\Api\Data\GroupInterface[]
*/
public function getGroups($withDefault = false);
/**
* Set current default store
*
* @param string|int|\Magento\Store\Api\Data\StoreInterface $store
* @return void
*/
public function setCurrentStore($store);
}