public function getFactory($iface)
    {
        $ifaceName = self::normalizeInterface($iface);
        if (!isset($this->factories[$ifaceName])) {
            throw new \Erebot\InvalidValueException('No such interface ('.$iface.')');
        }
        return $this->factories[$ifaceName];
    }