@@ -32,8 +32,6 @@ struct ParsedConnectionURL {
3232 let filterValue : String ?
3333 let filterCondition : String ?
3434 let oracleServiceName : String ?
35- let useSrv : Bool
36- let mongoQueryParams : [ String : String ]
3735
3836 var suggestedName : String {
3937 if let connectionName, !connectionName. isEmpty {
@@ -124,8 +122,6 @@ struct ConnectionURLParser {
124122 }
125123 }
126124
127- let isSrv = scheme == " mongodb+srv "
128-
129125 if dbType == . sqlite {
130126 let path = String ( trimmed [ schemeEnd. upperBound... ] )
131127 return . success( ParsedConnectionURL (
@@ -154,9 +150,7 @@ struct ConnectionURLParser {
154150 filterOperation: nil ,
155151 filterValue: nil ,
156152 filterCondition: nil ,
157- oracleServiceName: nil ,
158- useSrv: false ,
159- mongoQueryParams: [ : ]
153+ oracleServiceName: nil
160154 ) )
161155 }
162156
@@ -187,7 +181,7 @@ struct ConnectionURLParser {
187181 database = String ( database. dropFirst ( ) )
188182 }
189183
190- var ext = parseQueryItems ( components. queryItems, dbType : dbType )
184+ let ext = parseQueryItems ( components. queryItems)
191185
192186 var sslMode = ext. sslMode
193187 // Redis-specific: parse database index from path and handle TLS scheme
@@ -209,19 +203,10 @@ struct ConnectionURLParser {
209203 database = " "
210204 }
211205
212- // SRV implies TLS and no explicit port
213- if isSrv {
214- ext. useSrv = true
215- if sslMode == nil {
216- sslMode = . required
217- }
218- }
219- let effectivePort = isSrv ? nil : port
220-
221206 return . success( ParsedConnectionURL (
222207 type: dbType,
223208 host: host,
224- port: effectivePort ,
209+ port: port ,
225210 database: database,
226211 username: username,
227212 password: password,
@@ -244,9 +229,7 @@ struct ConnectionURLParser {
244229 filterOperation: ext. filterOperation,
245230 filterValue: ext. filterValue,
246231 filterCondition: ext. filterCondition,
247- oracleServiceName: oracleServiceName,
248- useSrv: ext. useSrv,
249- mongoQueryParams: ext. mongoQueryParams
232+ oracleServiceName: oracleServiceName
250233 ) )
251234 }
252235
@@ -377,9 +360,7 @@ struct ConnectionURLParser {
377360 filterOperation: ext. filterOperation,
378361 filterValue: ext. filterValue,
379362 filterCondition: ext. filterCondition,
380- oracleServiceName: oracleServiceName,
381- useSrv: ext. useSrv,
382- mongoQueryParams: ext. mongoQueryParams
363+ oracleServiceName: oracleServiceName
383364 ) )
384365 }
385366
@@ -401,16 +382,14 @@ struct ConnectionURLParser {
401382 var filterOperation : String ?
402383 var filterValue : String ?
403384 var filterCondition : String ?
404- var useSrv : Bool = false
405- var mongoQueryParams : [ String : String ] = [ : ]
406385 }
407386
408- private static func parseQueryItems( _ queryItems: [ URLQueryItem ] ? , dbType : DatabaseType ? = nil ) -> ExtendedParams {
387+ private static func parseQueryItems( _ queryItems: [ URLQueryItem ] ? ) -> ExtendedParams {
409388 var ext = ExtendedParams ( )
410389 guard let queryItems else { return ext }
411390 for item in queryItems {
412391 guard let value = item. value, !value. isEmpty else { continue }
413- applyQueryParam ( key: item. name, value: value, to: & ext, dbType : dbType )
392+ applyQueryParam ( key: item. name, value: value, to: & ext)
414393 }
415394 return ext
416395 }
@@ -441,7 +420,7 @@ struct ConnectionURLParser {
441420 return ext
442421 }
443422
444- private static func applyQueryParam( key: String , value: String , to ext: inout ExtendedParams , dbType : DatabaseType ? = nil ) {
423+ private static func applyQueryParam( key: String , value: String , to ext: inout ExtendedParams ) {
445424 switch key {
446425 case " sslmode " :
447426 ext. sslMode = parseSSLMode ( value)
@@ -477,18 +456,8 @@ struct ConnectionURLParser {
477456 if ext. sslMode == nil , let intValue = Int ( value) {
478457 ext. sslMode = parseTlsModeInteger ( intValue)
479458 }
480- case " tls " , " ssl " :
481- if value. lowercased ( ) == " true " && ext. sslMode == nil {
482- ext. sslMode = . required
483- }
484- case " authMechanism " , " authmechanism " :
485- ext. mongoQueryParams [ " authMechanism " ] = value
486- case " replicaSet " , " replicaset " :
487- ext. mongoQueryParams [ " replicaSet " ] = value
488459 default :
489- if dbType == . mongodb {
490- ext. mongoQueryParams [ key] = value
491- }
460+ break
492461 }
493462 }
494463
0 commit comments