Start cleaning up linter errors. (#358)

* Start cleaning up linter errors. For #357

* Fix unmarshalling NullTime values

* More linter fixes

* Remove commented code

* Move defer up

* Consolidate error check lines

* Move error check to make sure row iteration was successful

* Cleaner error check + do not recreate pipe if it exists

* Consolidate hashing to generate client id
This commit is contained in:
Gabe Kangas
2020-11-14 18:39:53 -08:00
committed by GitHub
parent c76b7229a5
commit 4d2066a76d
34 changed files with 248 additions and 143 deletions

View File

@@ -17,7 +17,7 @@ func (nt *NullTime) Scan(value interface{}) error {
return nil
}
// Value implements the driver Valuer interface.
// Value implements the driver Value interface.
func (nt NullTime) Value() (driver.Value, error) {
if !nt.Valid {
return nil, nil
@@ -32,3 +32,19 @@ func (nt NullTime) MarshalJSON() ([]byte, error) {
val := fmt.Sprintf("\"%s\"", nt.Time.Format(time.RFC3339))
return []byte(val), nil
}
func (nt NullTime) UnmarshalJSON(data []byte) error {
dateString := string(data)
if dateString == "null" {
return nil
}
dateStringWithoutQuotes := dateString[1 : len(dateString)-1]
parsedDateTime, err := time.Parse(time.RFC3339, dateStringWithoutQuotes)
if err != nil {
return err
}
nt.Time = parsedDateTime
return nil
}