|
@@ -3,7 +3,6 @@ package infrastructure
|
|
import (
|
|
import (
|
|
"code.osinet.fr/fgm/kurz/domain"
|
|
"code.osinet.fr/fgm/kurz/domain"
|
|
"database/sql"
|
|
"database/sql"
|
|
- "errors"
|
|
|
|
)
|
|
)
|
|
|
|
|
|
type MySQLShortURLRepository struct {
|
|
type MySQLShortURLRepository struct {
|
|
@@ -24,11 +23,11 @@ WHERE map.hash = ?
|
|
err := row.Scan(&tu.URL)
|
|
err := row.Scan(&tu.URL)
|
|
switch err {
|
|
switch err {
|
|
case sql.ErrNoRows:
|
|
case sql.ErrNoRows:
|
|
- err = errors.New("target not found")
|
|
|
|
|
|
+ err = domain.MakeError(domain.ShortNotFound, string(su.URL))
|
|
case nil:
|
|
case nil:
|
|
break
|
|
break
|
|
default:
|
|
default:
|
|
- err = errors.New("storage read error")
|
|
|
|
|
|
+ err = domain.MakeError(domain.StorageReadError, "")
|
|
}
|
|
}
|
|
return tu, err
|
|
return tu, err
|
|
}
|
|
}
|
|
@@ -56,7 +55,7 @@ INSERT INTO map(hash, url, date1, date2, date3, refcount)
|
|
VALUES (?, ?, CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP(), 0)
|
|
VALUES (?, ?, CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP(), 0)
|
|
`, su.URL, tu.URL)
|
|
`, su.URL, tu.URL)
|
|
if err != nil {
|
|
if err != nil {
|
|
- err = errors.New("storage write error")
|
|
|
|
|
|
+ err = domain.MakeError(domain.StorageWriteError, "storing new mapping")
|
|
}
|
|
}
|
|
isNew = true
|
|
isNew = true
|
|
|
|
|
|
@@ -64,7 +63,7 @@ VALUES (?, ?, CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP(), 0)
|
|
break
|
|
break
|
|
|
|
|
|
default:
|
|
default:
|
|
- err = errors.New("storage read error")
|
|
|
|
|
|
+ err = domain.MakeError(domain.StorageReadError, "looking for mapping")
|
|
}
|
|
}
|
|
|
|
|
|
return
|
|
return
|