@param string|array|\ManaPHP\Logger\AppenderInterface $appender
@param string                                         $name

@return static
972275
public function addAppender($appender, $name = null)
    {
        $level = null;
        if (is_string($appender)) {
            $definition = $appender;
        } elseif (isset($appender['level'])) {
            $level = is_numeric($appender['level']) ? (int)$appender['level'] : array_search(strtolower($appender['level']), self::$_levels, true);
            unset($appender['level']);
            $definition = $appender;
        } else {
            $definition = $appender;
        }

        if (is_string($definition)) {
            if (strpos($definition, '\\') === false) {
                $definition = 'ManaPHP\Logger\Appender\\' . ucfirst($definition);
            }
        } elseif (is_array($definition) && !isset($definition[0]) && !isset($definition['class'])) {
            throw new InvalidArgumentException($appender);
        } elseif (isset($definition['class']) && strpos($definition['class'], '\\') === false) {
            $definition['class'] = 'ManaPHP\Logger\Appender\\' . ucfirst($definition['class']);
        }

        if ($name === null) {
            $this->_appenders[] = $level !== null ? ['level' => $level, 'appender' => $definition] : ['appender' => $definition];
        } else {
            $this->_appenders[$name] = $level !== null ? ['level' => $level, 'appender' => $definition] : ['appender' => $definition];
        }

        return $this;
    }
16231
public function addDispatcher($name, DispatcherInterface $dispatcher)
    {
        $name = strtolower($name);

        $dispatcher->name = $name;

        $this->dispatchers[$name] = $dispatcher;

        return $this;
    }
1029864
@Override
    public void addAppender(Appender newAppender) {
        // Null values for newAppender parameter are strictly forbidden.
        if (newAppender == null) {
            return;
        }
        // If the appender is already there, add this one to the end before
        // removing the
        // previous one
        boolean isAppenderPresent = appenderList.contains(newAppender);
        String appenderName = newAppender.getName() != null ? newAppender.getName(): "default";
        if (isAppenderPresent) {
            appenderList.add(newAppender);
            for (Iterator<Appender> it = appenderList.iterator(); it.hasNext();) {
                Appender appender = it.next();
                if (newAppender.equals(appender)) {
                    configuredAppenderList.add(appenderName);
                    it.remove();
                    appender.close();
                    return;
                }
            }
        } else {
            appenderList.add(newAppender);
        }
        configuredAppenderList.add(appenderName);
    }
137
protected function createComponent($name): ?IComponent
    {
        $method = 'createComponent'.ucfirst($name);
        if (method_exists($this, $method)) {
            $this->checkRequirements(self::getReflection()->getMethod($method));
        }

        return parent::createComponent($name);
    }
1234888
protected static function _buildEngine($name)
    {
        $registry = static::registry();

        if (empty(static::$_config[$name]['className'])) {
            throw new InvalidArgumentException(
                sprintf('The "%s" queue configuration does not exist.', $name)
            );
        }

        $config = static::$_config[$name];
        $registry->load($name, $config);
    }
346331
public function end($name, $append = true)
    {
        $content = trim(ob_get_contents());
        ob_end_clean();

        $hash = md5($content);

        if (isset($this->hashCache[$hash])) {
            return;
        }

        $this->hashCache[$hash] = true;

        if (isset($this->blocks[$name]) && $append) {
            $this->blocks[$name] .= $content;
        } else {
            $this->blocks[$name] = $content;
        }
    }
52295
public function getLogger($name)
    {
        $logger = new Logger($name);
        if ($this->handlers !== null) {
            foreach ($this->handlers as $handler) {
                $logger->pushHandler($handler);
            }
        }
        return $logger;
    }
623428
public function setSender(string $address, ?string $name = null): Message
    {
        $this->sender = [
            'address' => $address,
            'name'    => $name
        ];

        return $this;
    }
647142
public function getLogger($name = null)
    {
        if (null === $name && !isset($this->loggers['nullLogger'])) {
            $this->createNullLogger();
            $name = 'nullLogger';
        }

        return $this->loggers[$name];
    }
36606
public
    Appender getAppender(String name) {
        if(name == null)
            return null;

        for (Appender appender : appenderList) {
            if(name.equals(appender.getName()))
                return appender;
        }
        return null;
    }
95191
public function appendExtension($name, array $config = [])
    {
        $merged = array_merge_recursive(
            $this->getExtension($name),
            $config
        );

        $this->addExtension($name, $merged);
    }
1222607
public function getConfigurator(string $name): FieldSetConfigurator
    {
        if (!isset($this->configurators[$name])) {
            if (isset($this->serviceIds[$name])) {
                $configurator = $this->container->get($this->serviceIds[$name]);
            } elseif (class_exists($name)) {
                // Support fully-qualified class names.
                $configurator = new $name();
            } else {
                throw new InvalidArgumentException(sprintf('Could not load FieldSet configurator "%s".', $name));
            }

            if (!$configurator instanceof FieldSetConfigurator) {
                throw new InvalidArgumentException(sprintf('Configurator class "%s" is expected to be an instance of '.FieldSetConfigurator::class, $name));
            }

            $this->configurators[$name] = $configurator;
        }

        return $this->configurators[$name];
    }
81676
public static function GetLog ($name = null) {
		$name = (is_null($name)) ? \ickx\fw2\core\log\Caller::GetClassMethod() : $name;
		return static::_ParseTime($name);
	}
34544
public synchronized static Logging getLogger(final String name) {
    Logging logger = loggers.get(name);
    if(logger == null) {
      logger = new Logging(Logger.getLogger(name));
      loggers.put(name, logger);
    }
    return logger;
  }
663580
@Override
  public Logger getLogger(String name) {
    String tag = createTag(name);
    Logger logger = loggerMap.get(tag);
    if (logger == null) {
      Logger newInstance = new TimberLoggerAdapter(tag);
      Logger oldInstance = loggerMap.putIfAbsent(tag, newInstance);
      logger = oldInstance == null ? newInstance : oldInstance;
    }
    return logger;
  }
536556
public function register ($name, LoggerInterface $logger) {
    $name = Util::normalizeName($name);
    $this->logs[$name] = $logger;
  }
1203022
public Logger getLogger (String name)
    {
        return new Impl(org.apache.log4j.Logger.getLogger(name));
    }