config.go 788 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package task
  2. import "github.com/gogf/gf/container/garray"
  3. type Entity struct {
  4. FuncName string
  5. Param []string
  6. Run func()
  7. }
  8. var taskList = garray.New()
  9. //增加Task方法
  10. func Add(task Entity) {
  11. if task.FuncName == "" {
  12. return
  13. }
  14. if task.Run == nil {
  15. return
  16. }
  17. taskList.Append(task)
  18. }
  19. //检查方法名是否存在
  20. func GetByName(funcName string) *Entity {
  21. var result *Entity
  22. for _, item := range taskList.Slice() {
  23. task := item.(Entity)
  24. if task.FuncName == funcName {
  25. result = &task
  26. break
  27. }
  28. }
  29. return result
  30. }
  31. //修改参数
  32. func EditParams(funcName string, params []string) {
  33. for index, item := range taskList.Slice() {
  34. task := item.(Entity)
  35. if task.FuncName == funcName {
  36. task.Param = params
  37. taskList.Set(index, task)
  38. break
  39. }
  40. }
  41. }