def get_dialect()

in aws_advanced_python_wrapper/driver_dialect_manager.py [0:0]


    def get_dialect(self, conn_func: Callable, props: Properties) -> DriverDialect:
        if self._custom_dialect is not None:
            if self._custom_dialect.is_dialect(conn_func):
                self._log_dialect("custom", self._custom_dialect)
                return self._custom_dialect
            else:
                logger.warning("DriverDialectManager.CustomDialectNotSupported")

        result: Optional[str]
        dialect_code: Optional[str] = WrapperProperties.DRIVER_DIALECT.get(props)
        if dialect_code:
            result = DriverDialectManager.known_dialects_by_code.get(dialect_code)
            if result is None:
                raise AwsWrapperError(Messages.get_formatted(
                    "DriverDialectManager.UnknownDialectCode",
                    dialect_code))
            self._log_dialect(dialect_code, result)
            dialect = Utils.initialize_class(result, props)
            if dialect is None:
                raise AwsWrapperError(Messages.get_formatted(
                    "DriverDialectManager.InitializationError",
                    dialect_code))
            return dialect

        for key, value in DriverDialectManager.known_dialects_by_code.items():
            dialect = Utils.initialize_class(value, props)
            if dialect is not None and dialect.is_dialect(conn_func):
                self._log_dialect(key, value)
                return dialect

        self._log_dialect(DriverDialectCodes.GENERIC, "generic")
        return DriverDialect(props)