Seditio Source
Root |
./othercms/xenForo 2.2.8/src/XF/SubContainer/Bounce.php
<?php

namespace XF\SubContainer;

use
XF\Container;

class
Bounce extends AbstractSubContainer
{
    public function
initialize()
    {
       
$container = $this->container;

       
$container->set('storage', function(Container $c)
        {
            return \
XF\EmailBounce\Processor::getDefaultBounceHandlerStorage($this->app);
        },
false);

       
$container['parser'] = function(Container $c)
        {
           
$options = $this->app->options();

           
$class = $this->app->extendClass('XF\EmailBounce\Parser');

            return new
$class(
               
$options->enableVerp ? $options->bounceEmailAddress : null,
               
$this->app->config('globalSalt')
            );
        };

       
$container['processor'] = function(Container $c)
        {
           
$class = $this->app->extendClass('XF\EmailBounce\Processor');

            return new
$class($this->app, $c['parser']);
        };
    }

   
/**
     * @return \Laminas\Mail\Storage\AbstractStorage
     */
   
public function storage()
    {
        return
$this->container['storage'];
    }

   
/**
     * @return \XF\EmailBounce\Parser
     */
   
public function parser()
    {
        return
$this->container['parser'];
    }

   
/**
     * @return \XF\EmailBounce\Processor
     */
   
public function processor()
    {
        return
$this->container['processor'];
    }
}