Skip to content

Instantly share code, notes, and snippets.

@mczachurski
Created March 1, 2018 21:12
Show Gist options
  • Save mczachurski/66179045b87e8589d9b8cd1875d17995 to your computer and use it in GitHub Desktop.
Save mczachurski/66179045b87e8589d9b8cd1875d17995 to your computer and use it in GitHub Desktop.
public func register(request: HTTPRequest, response: HTTPResponse) {
do {
let registerUserDto = try request.getObjectFromRequest(RegisterUserDto.self)
let user = registerUserDto.toUser()
try self.usersService.add(entity: user)
guard let registeredUser = try self.usersService.get(byId: user.id) else {
return response.sendNotFoundError()
}
let registeredUserDto = UserDto(user: registeredUser)
return response.sendJson(registeredUserDto)
}
catch let error where error is DecodingError || error is RequestError {
response.sendBadRequestError()
}
catch let error as ValidationsError {
response.sendValidationsError(error: error)
}
catch {
response.sendInternalServerError(error: error)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment