Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { LoginURL string InfoURL string SaveURL string Retry int UserName string Password string // Whether to stay at school, "1" means yes, "0" means no Boarder string // If you are not staying at school, the reasons you need // to choose from "1" to "6" are "Temporary absence from school", // "Returning home during summer and winter vacations", // "Overseas research and study", // "Off-campus business trip or internship", // "Sick leave, leave of absence or leave of absence from school", // and "Other". NotBoarderReasen string // The reason for leaving school is other reasons that need to be filled in. NotBoarderNote string // Clocking BoarderAddress BoarderAddress string BoarderArea string BoarderCity string BoarderProvince string NotBoarderAddress string NotBoarderArea string NotBoarderCity string NotBoarderProvince string }
type ExponentialBackoff ¶
type ExponentialBackoff struct { // InitialInterval is the initial time interval for backoff algorithm. InitialInterval time.Duration // MaxBackoffTime is the maximum time duration for backoff algorithm. It limits // the maximum sleep time. MaxBackoffTime time.Duration // Multiplier is a multiplier number of the backoff algorithm. Multiplier float64 // MaxRetryCount is the maximum number of retry count. MaxRetryCount int // contains filtered or unexported fields }
ExponentialBackoff is a retry mechanism for retrying some calls.
func NewExponentialBackoff ¶
func NewExponentialBackoff(config ...RetryConfig) *ExponentialBackoff
NewExponentialBackoff creates a ExponentialBackoff with default values.
func (*ExponentialBackoff) Retry ¶
func (e *ExponentialBackoff) Retry(f func() error) error
Retry is the core logic of the retry mechanism. If the calling function returns nil as an error, then the Retry method is terminated with returning nil. Otherwise, if all function calls are returned error, then the method returns this error.
type RetryConfig ¶
type RetryConfig struct { // InitialInterval defines the initial time interval for backoff algorithm. // // Optional. Default: 1 * time.Second InitialInterval time.Duration // MaxBackoffTime defines maximum time duration for backoff algorithm. When // the algorithm is reached this time, rest of the retries will be maximum // 32 seconds. // // Optional. Default: 32 * time.Second MaxBackoffTime time.Duration // Multiplier defines multiplier number of the backoff algorithm. // // Optional. Default: 2.0 Multiplier float64 // MaxRetryCount defines maximum retry count for the backoff algorithm. // // Optional. Default: 10 MaxRetryCount int // contains filtered or unexported fields }
Config defines the config for addon.
Click to show internal directories.
Click to hide internal directories.