-
Notifications
You must be signed in to change notification settings - Fork 15
Open
Description
Here's a short list of interfaces and ideas I came up with (could be splitted into multiple issues later)
ZfcAcl\Service\AclServiceInterface
- new interface, let's place what the Acl service should actually do in hereZfcAcl\Service\Context
- do we need this? It looks more like a behavior to be set into a customRoleProvider
, and I would also move it out of theZfcAcl\Service
namespaceZfcAcl\Service\Acl\RoleProvider
- could this not just simply be replaced by aZend\Acl\Role\RoleInterface
? I think it adds an unnecessary layer of complexity... Eventual usage of associated entities/user objects could be hidden behind its implementation. I think it could be more a matter of educating users about it's usage.ZfcAcl\View\Helper\ZfcAcl
should be type hinted.- There is a LOT of confusion and abbreviations within
ZfcAcl\Model
in my opinion (still have to figure out how to solve that) ZfcAcl\Model
contains a lot of configuration classes and maps that consume them that aren't really easy nor intuitive, and require a lot of configuration that in most cases doesn't fit (see following point).ZfcAcl\Service\ResourceMapperInterface
- could add this interface as simple bi-directional mapping of$resourceName <-> $requestedItem
. That would probably simplify the clutter ofZfcAcl\Model
, whose aim was to map routes, events and controllers to resources. The entire configuration mapping thing could somehow be abstracted and made optional (or at least not necessary) by introducing sane defaults (see the mapper for theDispatch
guard)ZfcAcl\Guard\GuardInterface
(to rename) - Problematic to add a public method here, but I think it could be done assuming the mapper interface will be flexible enough.ZfcAcl\Exception\ExceptionInterface
- simply to comply with the new ZendFramework 2 exception concept :)ZfcAcl\Guard\ActionControllerGuard
- because we don't handle "actions" right now...ZfcAcl\ZfcAclAwareInterface
- for setter injection of the service itself
Metadata
Metadata
Assignees
Labels
No labels