mirror of https://github.com/docker/cli.git
27 lines
738 B
Go
27 lines
738 B
Go
package api
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
// State represents the state of exchange after submitting.
|
|
type State struct {
|
|
DeviceCode string `json:"device_code"`
|
|
UserCode string `json:"user_code"`
|
|
VerificationURI string `json:"verification_uri_complete"`
|
|
ExpiresIn int `json:"expires_in"`
|
|
Interval int `json:"interval"`
|
|
}
|
|
|
|
// IntervalDuration returns the duration that should be waited between each auth
|
|
// polling event.
|
|
func (s State) IntervalDuration() time.Duration {
|
|
return time.Second * time.Duration(s.Interval)
|
|
}
|
|
|
|
// ExpiryDuration returns the total duration for which the client should keep
|
|
// polling.
|
|
func (s State) ExpiryDuration() time.Duration {
|
|
return time.Second * time.Duration(s.ExpiresIn)
|
|
}
|