private static function createWithArgs($engine, $args)
    {
        $engineName = ucfirst($engine);
        $className = self::FETCHER_CLASS_PREFIX . $engineName . self::FETCHER_CLASS_SUFFIX;
        return call_user_func_array(array(new \ReflectionClass($className), 'newInstance'),
                                    $args);
    }