You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
761 B
39 lines
761 B
//
|
|
// URLManager.swift
|
|
// LeStorage
|
|
//
|
|
// Created by Laurent Morvillier on 18/11/2024.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
struct URLManager {
|
|
|
|
var secureScheme: Bool
|
|
var domain: String
|
|
private let apiPath: String = "roads"
|
|
|
|
var api: String {
|
|
return "\(self.httpScheme)\(self.domain)/\(self.apiPath)/"
|
|
}
|
|
|
|
func websocket(userId: String) -> String {
|
|
return "\(self.wsScheme)\(self.domain)/ws/user/\(userId)/"
|
|
}
|
|
|
|
var httpScheme: String {
|
|
if self.secureScheme {
|
|
return "https://"
|
|
} else {
|
|
return "http://"
|
|
}
|
|
}
|
|
|
|
var wsScheme: String {
|
|
if self.secureScheme {
|
|
return "wss://"
|
|
} else {
|
|
return "ws://"
|
|
}
|
|
}
|
|
}
|
|
|