diff --git a/application/Espo/Core/Acl/ScopeChecker.php b/application/Espo/Core/Acl/AccessChecker/ScopeChecker.php similarity index 96% rename from application/Espo/Core/Acl/ScopeChecker.php rename to application/Espo/Core/Acl/AccessChecker/ScopeChecker.php index 463a6e0edf..c8839423e7 100644 --- a/application/Espo/Core/Acl/ScopeChecker.php +++ b/application/Espo/Core/Acl/AccessChecker/ScopeChecker.php @@ -27,7 +27,12 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Acl; +namespace Espo\Core\Acl\AccessChecker; + +use Espo\Core\{ + Acl\ScopeData, + Acl\Table, +}; /** * Checks scope access. diff --git a/application/Espo/Core/Acl/ScopeCheckerData.php b/application/Espo/Core/Acl/AccessChecker/ScopeCheckerData.php similarity index 98% rename from application/Espo/Core/Acl/ScopeCheckerData.php rename to application/Espo/Core/Acl/AccessChecker/ScopeCheckerData.php index e2aac9d043..c28e6c3375 100644 --- a/application/Espo/Core/Acl/ScopeCheckerData.php +++ b/application/Espo/Core/Acl/AccessChecker/ScopeCheckerData.php @@ -27,7 +27,7 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Acl; +namespace Espo\Core\Acl\AccessChecker; /** * Scope checker data. diff --git a/application/Espo/Core/Acl/ScopeCheckerDataBuilder.php b/application/Espo/Core/Acl/AccessChecker/ScopeCheckerDataBuilder.php similarity index 98% rename from application/Espo/Core/Acl/ScopeCheckerDataBuilder.php rename to application/Espo/Core/Acl/AccessChecker/ScopeCheckerDataBuilder.php index 460ecd2dd9..00459e295a 100644 --- a/application/Espo/Core/Acl/ScopeCheckerDataBuilder.php +++ b/application/Espo/Core/Acl/AccessChecker/ScopeCheckerDataBuilder.php @@ -27,7 +27,7 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Acl; +namespace Espo\Core\Acl\AccessChecker; /** * Builds scope checker data. diff --git a/application/Espo/Core/Acl/Base.php b/application/Espo/Core/Acl/Base.php index e231e9a666..81bb3248ce 100644 --- a/application/Espo/Core/Acl/Base.php +++ b/application/Espo/Core/Acl/Base.php @@ -37,6 +37,8 @@ use Espo\Entities\User; use Espo\Core\{ ORM\EntityManager, + Acl\AccessChecker\ScopeCheckerData, + Acl\AccessChecker\ScopeChecker, AclManager, Utils\Config, }; diff --git a/application/Espo/Core/Acl/DefaultAccessChecker.php b/application/Espo/Core/Acl/DefaultAccessChecker.php index 1c6c79a90a..b2ee00dd46 100644 --- a/application/Espo/Core/Acl/DefaultAccessChecker.php +++ b/application/Espo/Core/Acl/DefaultAccessChecker.php @@ -35,6 +35,8 @@ use Espo\ORM\Entity; use Espo\Core\{ Acl\Table, + Acl\AccessChecker\ScopeCheckerData, + Acl\AccessChecker\ScopeChecker, AclManager, Utils\Config, Utils\DateTime as DateTimeUtil, diff --git a/application/Espo/Core/Acl/TableFactory.php b/application/Espo/Core/Acl/Table/DefaultTableFactory.php similarity index 95% rename from application/Espo/Core/Acl/TableFactory.php rename to application/Espo/Core/Acl/Table/DefaultTableFactory.php index d8e3ef48ed..62e470f85c 100644 --- a/application/Espo/Core/Acl/TableFactory.php +++ b/application/Espo/Core/Acl/Table/DefaultTableFactory.php @@ -27,12 +27,14 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Acl; +namespace Espo\Core\Acl\Table; use Espo\Entities\User; use Espo\Core\{ InjectableFactory, + Acl\Table, + Acl\DefaultTable, Acl\Table\CacheKeyProvider, Acl\Table\DefaultCacheKeyProvider, Acl\Table\RoleListProvider, @@ -42,7 +44,7 @@ use Espo\Core\{ Binding\BindingData, }; -class TableFactory +class DefaultTableFactory implements TableFactory { private $injectableFactory; @@ -53,8 +55,6 @@ class TableFactory /** * Create a table. - * - * @todo Use binding. */ public function create(User $user): Table { diff --git a/application/Espo/Core/Acl/Table/TableFactory.php b/application/Espo/Core/Acl/Table/TableFactory.php new file mode 100644 index 0000000000..be6944f189 --- /dev/null +++ b/application/Espo/Core/Acl/Table/TableFactory.php @@ -0,0 +1,42 @@ +bindImplementation( + 'Espo\\Core\\Acl\\Table\\TableFactory', + 'Espo\\Core\\Acl\\Table\\DefaultTableFactory' + ); } } diff --git a/application/Espo/Core/Portal/Acl/ScopeChecker.php b/application/Espo/Core/Portal/Acl/AccessChecker/ScopeChecker.php similarity index 98% rename from application/Espo/Core/Portal/Acl/ScopeChecker.php rename to application/Espo/Core/Portal/Acl/AccessChecker/ScopeChecker.php index 129d6bbdd5..6f137578d8 100644 --- a/application/Espo/Core/Portal/Acl/ScopeChecker.php +++ b/application/Espo/Core/Portal/Acl/AccessChecker/ScopeChecker.php @@ -27,7 +27,7 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Portal\Acl; +namespace Espo\Core\Portal\Acl\AccessChecker; use Espo\Core\{ Acl\ScopeData, diff --git a/application/Espo/Core/Portal/Acl/ScopeCheckerData.php b/application/Espo/Core/Portal/Acl/AccessChecker/ScopeCheckerData.php similarity index 97% rename from application/Espo/Core/Portal/Acl/ScopeCheckerData.php rename to application/Espo/Core/Portal/Acl/AccessChecker/ScopeCheckerData.php index 15401de074..d64398e750 100644 --- a/application/Espo/Core/Portal/Acl/ScopeCheckerData.php +++ b/application/Espo/Core/Portal/Acl/AccessChecker/ScopeCheckerData.php @@ -27,7 +27,7 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Portal\Acl; +namespace Espo\Core\Portal\Acl\AccessChecker; /** * Scope checker data. diff --git a/application/Espo/Core/Portal/Acl/ScopeCheckerDataBuilder.php b/application/Espo/Core/Portal/Acl/AccessChecker/ScopeCheckerDataBuilder.php similarity index 98% rename from application/Espo/Core/Portal/Acl/ScopeCheckerDataBuilder.php rename to application/Espo/Core/Portal/Acl/AccessChecker/ScopeCheckerDataBuilder.php index 48a6136f9a..c47aecc925 100644 --- a/application/Espo/Core/Portal/Acl/ScopeCheckerDataBuilder.php +++ b/application/Espo/Core/Portal/Acl/AccessChecker/ScopeCheckerDataBuilder.php @@ -27,7 +27,7 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Portal\Acl; +namespace Espo\Core\Portal\Acl\AccessChecker; /** * Builds scope checker data. diff --git a/application/Espo/Core/Portal/Acl/DefaultAccessChecker.php b/application/Espo/Core/Portal/Acl/DefaultAccessChecker.php index cff492ec4b..fe58a5ea4c 100644 --- a/application/Espo/Core/Portal/Acl/DefaultAccessChecker.php +++ b/application/Espo/Core/Portal/Acl/DefaultAccessChecker.php @@ -36,6 +36,8 @@ use Espo\ORM\Entity; use Espo\Core\{ Utils\Config, Portal\AclManager as PortalAclManager, + Portal\Acl\AccessChecker\ScopeChecker, + Portal\Acl\AccessChecker\ScopeCheckerData, Acl\ScopeData, Acl\AccessEntityCreateChecker, Acl\AccessEntityReadChecker, diff --git a/application/Espo/Core/Portal/Acl/TableFactory.php b/application/Espo/Core/Portal/Acl/Table/TableFactory.php similarity index 97% rename from application/Espo/Core/Portal/Acl/TableFactory.php rename to application/Espo/Core/Portal/Acl/Table/TableFactory.php index 36b45a5253..7dd341004a 100644 --- a/application/Espo/Core/Portal/Acl/TableFactory.php +++ b/application/Espo/Core/Portal/Acl/Table/TableFactory.php @@ -27,7 +27,7 @@ * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ -namespace Espo\Core\Portal\Acl; +namespace Espo\Core\Portal\Acl\Table; use Espo\Entities\{ User, @@ -37,6 +37,7 @@ use Espo\Entities\{ use Espo\Core\{ InjectableFactory, Acl\Table\CacheKeyProvider, + Portal\Acl\Table, Portal\Acl\Table\CacheKeyProvider as PortalCacheKeyProvider, Acl\Table\RoleListProvider, Portal\Acl\Table\RoleListProvider as PortalRoleListProvider, diff --git a/application/Espo/Core/Portal/AclManager.php b/application/Espo/Core/Portal/AclManager.php index 1488fcafb2..cde9511b8f 100644 --- a/application/Espo/Core/Portal/AclManager.php +++ b/application/Espo/Core/Portal/AclManager.php @@ -40,12 +40,12 @@ use Espo\Entities\{ }; use Espo\Core\{ - Portal\Acl\Table as Table, + Portal\Acl\Table, + Portal\Acl\Table\TableFactory, Portal\Acl\AccessCheckerFactory, Portal\Acl\OwnershipCheckerFactory, Portal\Acl\OwnershipAccountChecker, Portal\Acl\OwnershipContactChecker, - Portal\Acl\TableFactory, Portal\Acl, Portal\Acl\Map\MapFactory, Acl\GlobalRestricton, diff --git a/tests/unit/Espo/Core/Acl/ScopeCheckerDataTest.php b/tests/unit/Espo/Core/Acl/ScopeCheckerDataTest.php index 6f6b116522..a909925648 100644 --- a/tests/unit/Espo/Core/Acl/ScopeCheckerDataTest.php +++ b/tests/unit/Espo/Core/Acl/ScopeCheckerDataTest.php @@ -30,7 +30,7 @@ namespace tests\unit\Espo\Core\Acl; use Espo\Core\{ - Acl\ScopeCheckerData, + Acl\AccessChecker\ScopeCheckerData, }; class ScopeCheckerDataTest extends \PHPUnit\Framework\TestCase diff --git a/tests/unit/Espo/Core/Acl/ScopeCheckerTest.php b/tests/unit/Espo/Core/Acl/ScopeCheckerTest.php index 6a4924715c..79bf1068a8 100644 --- a/tests/unit/Espo/Core/Acl/ScopeCheckerTest.php +++ b/tests/unit/Espo/Core/Acl/ScopeCheckerTest.php @@ -30,8 +30,8 @@ namespace tests\unit\Espo\Core\Acl; use Espo\Core\{ - Acl\ScopeChecker, - Acl\ScopeCheckerData, + Acl\AccessChecker\ScopeChecker, + Acl\AccessChecker\ScopeCheckerData, Acl\ScopeData, Acl\Table, }; diff --git a/tests/unit/Espo/Core/AclManagerTest.php b/tests/unit/Espo/Core/AclManagerTest.php index 161ed13966..3d3ea59222 100644 --- a/tests/unit/Espo/Core/AclManagerTest.php +++ b/tests/unit/Espo/Core/AclManagerTest.php @@ -35,7 +35,7 @@ use Espo\Core\{ Acl\AccessCheckerFactory, Acl\OwnershipCheckerFactory, Acl\OwnerUserFieldProvider, - Acl\TableFactory, + Acl\Table\TableFactory, Acl\GlobalRestricton, Acl\Map\MapFactory, ORM\EntityManager, diff --git a/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerDataTest.php b/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerDataTest.php index 761f6df8c1..4389cfd9c4 100644 --- a/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerDataTest.php +++ b/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerDataTest.php @@ -30,12 +30,13 @@ namespace tests\unit\Espo\Core\Portal\Acl; use Espo\Core\{ - Portal\Acl\ScopeCheckerData, + Portal\Acl\AccessChecker\ScopeCheckerData, + }; class ScopeCheckerDataTest extends \PHPUnit\Framework\TestCase { - protected function setUp() : void + protected function setUp(): void { } diff --git a/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerTest.php b/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerTest.php index 0991849fac..e1d90ff922 100644 --- a/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerTest.php +++ b/tests/unit/Espo/Core/Portal/Acl/ScopeCheckerTest.php @@ -30,8 +30,8 @@ namespace tests\unit\Espo\Core\Portal\Acl; use Espo\Core\{ - Portal\Acl\ScopeChecker, - Portal\Acl\ScopeCheckerData, + Portal\Acl\AccessChecker\ScopeChecker, + Portal\Acl\AccessChecker\ScopeCheckerData, Portal\Acl\Table, Acl\ScopeData, };