Initial cloud-services repo - gateway service + pkg modules
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
package manifestfingerprintparams
|
||||
|
||||
import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"fiskerinc.com/modules/utils/envtool"
|
||||
)
|
||||
|
||||
var fpParams FingerprintParamer
|
||||
var fpParamsOnce sync.Once
|
||||
|
||||
func SetFPParams(fpp FingerprintParamer) {
|
||||
fpParams = fpp
|
||||
}
|
||||
|
||||
func GetFPParams() FingerprintParamer {
|
||||
fpParamsOnce.Do(func() {
|
||||
if fpParams == nil {
|
||||
fpParams = &FingerprintParams{
|
||||
serialNum: envtool.GetEnv("OTA_MANIFEST_SERIAL", "00000000000000000"),
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
return fpParams
|
||||
}
|
||||
|
||||
type FingerprintParams struct {
|
||||
serialNum string
|
||||
}
|
||||
|
||||
func (p *FingerprintParams) ManifestSerial() string {
|
||||
return p.serialNum
|
||||
}
|
||||
|
||||
func (p *FingerprintParams) CurTime() time.Time {
|
||||
return time.Now().UTC()
|
||||
}
|
||||
|
||||
var _ FingerprintParamer = &FingerprintParams{}
|
||||
|
||||
type FingerprintParamer interface {
|
||||
ManifestSerial() string
|
||||
CurTime() time.Time
|
||||
}
|
||||
18
pkg/common/manifestfingerprintparams/mock.go
Normal file
18
pkg/common/manifestfingerprintparams/mock.go
Normal file
@@ -0,0 +1,18 @@
|
||||
package manifestfingerprintparams
|
||||
|
||||
import "time"
|
||||
|
||||
type MockFingerprintParamer struct{
|
||||
Time time.Time
|
||||
ManifestSerialValue string
|
||||
}
|
||||
|
||||
func (m *MockFingerprintParamer) CurTime()(time.Time){
|
||||
return m.Time
|
||||
}
|
||||
|
||||
func (m *MockFingerprintParamer) ManifestSerial()(string){
|
||||
return m.ManifestSerialValue
|
||||
}
|
||||
|
||||
var _ FingerprintParamer = &MockFingerprintParamer{}
|
||||
Reference in New Issue
Block a user