| 3280 | |
| 3281 | |
| 3282 | def get_schema_parser(connection, server_version, dse_version, timeout): |
| 3283 | version = Version(server_version) |
| 3284 | if dse_version: |
| 3285 | v = Version(dse_version) |
| 3286 | if v >= Version('6.8.0'): |
| 3287 | return SchemaParserDSE68(connection, timeout) |
| 3288 | elif v >= Version('6.7.0'): |
| 3289 | return SchemaParserDSE67(connection, timeout) |
| 3290 | elif v >= Version('6.0.0'): |
| 3291 | return SchemaParserDSE60(connection, timeout) |
| 3292 | |
| 3293 | if version >= Version('4.0-alpha'): |
| 3294 | return SchemaParserV4(connection, timeout) |
| 3295 | elif version >= Version('3.0.0'): |
| 3296 | return SchemaParserV3(connection, timeout) |
| 3297 | else: |
| 3298 | # we could further specialize by version. Right now just refactoring the |
| 3299 | # multi-version parser we have as of C* 2.2.0rc1. |
| 3300 | return SchemaParserV22(connection, timeout) |
| 3301 | |
| 3302 | |
| 3303 | def _cql_from_cass_type(cass_type): |