Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- enum API: String {
- case baseUrl = "http://api..../api/v1/"
- case authServiceUrl = "auth/"
- case userServiceUrl = "users/"
- /// Auth endpath
- case login = "login"
- case register = "register"
- case resetPassword = "reset-password" // + \(token)
- case forgotPassword = "forgot-password/"
- case authenticate = "authenticate"
- case deviceTypeiOS = "device-type-ios"
- case deviceTypeAndroid = "device-type-android"
- /// Users endpath
- case storeUser
- case listUser
- case showUser // "" + id in path
- case deleteUser // "" + id in path
- case unblockUser = "unblock-user"
- case blockUser = "block-user"
- case unblockAccount = "unblock-account"
- case blockAccount = "block-account"
- case sendNotification = "send-notification"
- private func serviceBaseUrl() -> String {
- switch self {
- case .login, .register, .resetPassword, .forgotPassword, .authenticate, .deviceTypeiOS, .deviceTypeAndroid:
- return API.authServiceUrl.rawValue
- case .unblockUser, .blockUser, .unblockAccount, .blockAccount, .sendNotification, .storeUser, .listUser, .showUser, .deleteUser:
- return API.userServiceUrl.rawValue
- default: return API.baseUrl.rawValue
- }
- }
- private func apiEnding() -> String {
- switch self {
- case .storeUser, .listUser, .showUser:
- return ""
- default:
- return self.rawValue
- }
- }
- func url() -> String {
- return "\(API.baseUrl.rawValue)\(serviceBaseUrl())\(apiEnding())"
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement