/**
  * @param ServiceLocatorInterface $serviceLocator
  *
  * @return CalendarService
  */
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     $calendarService = new CalendarService();
     $calendarService->setServiceLocator($serviceLocator);
     /** @var EntityManager $entityManager */
     $entityManager = $serviceLocator->get(EntityManager::class);
     $calendarService->setEntityManager($entityManager);
     /** @var Authorize $authorizeService */
     $authorizeService = $serviceLocator->get(Authorize::class);
     $calendarService->setAuthorizeService($authorizeService);
     /** @var ContactService $contactService */
     $contactService = $serviceLocator->get(ContactService::class);
     $calendarService->setContactService($contactService);
     /** @var AdminService $adminService */
     $adminService = $serviceLocator->get(AdminService::class);
     $calendarService->setAdminService($adminService);
     /** @var ModuleOptions $moduleOptions */
     $moduleOptions = $serviceLocator->get(ModuleOptions::class);
     $calendarService->setModuleOptions($moduleOptions);
     return $calendarService;
 }