Skip to content

Instantly share code, notes, and snippets.

@cn007b
Last active January 30, 2019 23:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cn007b/ff10a781a30f6952be1406abdb67645d to your computer and use it in GitHub Desktop.
Save cn007b/ff10a781a30f6952be1406abdb67645d to your computer and use it in GitHub Desktop.
DRY in GO #1
func GetEmployeeName(id string) (string, int) {
e, err := db.GetEmployeeByID(id)
if err != nil {
httpErrorCode := 500
switch err {
case ErrorInvalidID:
httpErrorCode = 400
case ErrorUnauthorized:
httpErrorCode = 401
case ErrorEmployeeNotFound:
httpErrorCode = 404
// other errors
// ...
}
return "", httpErrorCode
}
return e.Name, 200
}
func GetEmployeeEmail(id string) (string, int) {
e, err := db.GetEmployeeByID(id)
if err != nil {
httpErrorCode := 500
switch err {
case ErrorInvalidID:
httpErrorCode = 400
case ErrorUnauthorized:
httpErrorCode = 401
case ErrorEmployeeNotFound:
httpErrorCode = 404
// other errors
// ...
}
return "", httpErrorCode
}
return e.Email, 200
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment