Documentation
¶
Index ¶
Constants ¶
const (
CHANNEL_NOTIFY = "resilience/notify"
)
Variables ¶
This section is empty.
Functions ¶
func HttpGetResilience ¶
func HttpGetResilience(w http.ResponseWriter, r *http.Request)
* * HttpGetResilience * @param w http.ResponseWriter, r *http.Request *
func HttpGetResilienceById ¶
func HttpGetResilienceById(w http.ResponseWriter, r *http.Request)
* * HttpGetResilienceById * @param w http.ResponseWriter, r *http.Request *
func HttpGetResilienceByTag ¶
func HttpGetResilienceByTag(w http.ResponseWriter, r *http.Request)
* * HttpGetResilienceByTag * @param w http.ResponseWriter, r *http.Request *
Types ¶
type Resilence ¶
type Resilence struct {
CreatedAt time.Time
Id string
Transactions []*Transaction
Attempts int
TimeAttempts time.Duration
}
func (*Resilence) Done ¶
func (s *Resilence) Done(transaction *Transaction)
* * Done * @param transaction *Transaction
func (*Resilence) GetById ¶
func (s *Resilence) GetById(id string) *Transaction
* * GetById * @param id string * @return *Transaction
func (*Resilence) GetByTag ¶
func (s *Resilence) GetByTag(tag string) *Transaction
* * GetByTag * @param tag string * @return *Transaction
func (*Resilence) Notify ¶
func (s *Resilence) Notify(transaction *Transaction)
* * Notify * @param transaction *Transaction
func (*Resilence) Run ¶
func (s *Resilence) Run(transaction *Transaction)
* * Run * @param transaction *Transaction
type Transaction ¶
type Transaction struct {
CreatedAt time.Time `json:"created_at"`
LastAttemptAt time.Time `json:"last_attempt_at"`
Id string `json:"id"`
Tag string `json:"tag"`
Description string `json:"description"`
Status TransactionStatus `json:"status"`
Store Store `json:"store"`
Attempts int `json:"attempts"`
// contains filtered or unexported fields
}
func Add ¶
func Add(tag, description string, fn interface{}, fnArgs ...interface{}) *Transaction
* * Add * @param tag, description string, fn interface{}, fnArgs ...interface{} * @return *Transaction
func NewTransaction ¶
func NewTransaction(tag, description string, fn interface{}, fnArgs ...interface{}) *Transaction
* * Transaction * @param id, description string, fn interface{}, fnArgs ...interface{} * @return Transaction
type TransactionStatus ¶
type TransactionStatus string
const ( StatusPending TransactionStatus = "pending" StatusSuccess TransactionStatus = "success" StatusRunning TransactionStatus = "running" StatusFailed TransactionStatus = "failed" )