def _assertPermission(permission, interfaces, component): if permission is not None: if permission == PublicPermission: permission = CheckerPublic checker = InterfaceChecker(interfaces, permission) return proxify(component, checker)
def __call__(self, context, request): item = self.factory(context, request) for key, value in self.kwargs.items(): setattr(item, key, value) if item.permission is not None: checker = InterfaceChecker(IBrowserMenuItem, item.permission) item = proxify(item, checker) return item