sapawarga/userpost-service

View on GitHub
lib/convert/convert.go

Summary

Maintainability
A
0 mins
Test Coverage
package convert

import (
    "strconv"
    "time"
)

// SetPointerString ...
func SetPointerString(val string) *string {
    if val == "" {
        return nil
    }
    return &val
}

// SetPointerInt64 ...
func SetPointerInt64(val int64) *int64 {
    if val == 0 {
        return nil
    }
    return &val
}

// SetPointerTime ...
func SetPointerTime(val time.Time) *time.Time {
    return &val
}

// GetStringFromPointer ...
func GetStringFromPointer(val *string) string {
    if val == nil {
        return ""
    }
    return *val
}

// GetInt64FromPointer ...
func GetInt64FromPointer(val *int64) int64 {
    if val == nil {
        return 0
    }
    return *val
}

// GetTimeFromPointer ...
func GetTimeFromPointer(val *time.Time) time.Time {
    return *val
}

// GetCurrentTimeUTC ...
func GetCurrentTimeUTC() (standartTime time.Time, unixTime int64) {
    current := time.Now().UTC()
    return current, current.Unix()
}

// FromStringToInt64 ...
func FromStringToInt64(val string) (pointerInt64 *int64, plainInt64 int64) {
    if val == "" {
        return nil, 0
    }
    valInt, _ := strconv.ParseInt(val, 10, 64)
    return &valInt, valInt
}