/**
  * @param  ContainerInterface $container
  * @return AcceptFilterListener
  */
 public function __invoke(ContainerInterface $container)
 {
     $listener = new AcceptFilterListener();
     $options = $container->get(ContentNegotiationOptions::class);
     $listener->setConfig($options->getAcceptWhitelist());
     return $listener;
 }
    /**
     * {@inheritDoc}
     */
    public function createService(ServiceLocatorInterface $serviceLocator)
    {
        $listener = new AcceptFilterListener();
        $config   = array();

        if ($serviceLocator->has('Config')) {
            $moduleConfig = false;
            $appConfig    = $serviceLocator->get('Config');
            if (isset($appConfig['zf-content-negotiation'])
                && is_array($appConfig['zf-content-negotiation'])
            ) {
                $moduleConfig = $appConfig['zf-content-negotiation'];
            }

            if ($moduleConfig
                && isset($moduleConfig['accept_whitelist'])
                && is_array($moduleConfig['accept_whitelist'])
            ) {
                $config = $moduleConfig['accept_whitelist'];
            }
        }

        if (!empty($config)) {
            $listener->setConfig($config);
        }

        return $listener;
    }
 /**
  * {@inheritDoc}
  */
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     $listener = new AcceptFilterListener();
     /* @var $options \ZF\ContentNegotiation\ContentNegotiationOptions */
     $options = $serviceLocator->get('ZF\\ContentNegotiation\\ContentNegotiationOptions');
     $listener->setConfig($options->getAcceptWhitelist());
     return $listener;
 }