/// <summary>
        ///     Returns a list of departments managed by the logged in user.
        /// </summary>
        /// <param name="context">The context.</param>
        /// <returns></returns>
        public Task Consume(ConsumeContext <IListDepartments> context)
        {
            var fetcher     = RoleBasedDataFetcher.Create(_ldapService.ListDepartments, _ldapService.FindDepartmentsByManager);
            var departments = fetcher.Execute();

            return(context.RespondAsync(ListCommand.DepartmentsResult(departments.ToArray())));
        }