update.go 860 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package config
  2. import "time"
  3. //AutoUpdate is exported function
  4. func (mch *Handler) AutoUpdate() {
  5. go func() {
  6. for {
  7. <-time.After(1 * 60 * time.Second) //no rush, update every minute
  8. mch.reloadEULA()
  9. mch.reloadProperties()
  10. mch.reloadBanPlayer()
  11. mch.reloadBanIP()
  12. mch.reloadOp()
  13. mch.reloadWhitelist()
  14. }
  15. }()
  16. }
  17. func (mch *Handler) reloadEULA() {
  18. mch.eula = initEULA(mch.serverFolder)
  19. }
  20. func (mch *Handler) reloadProperties() {
  21. mch.properties = initProperties(mch.serverFolder)
  22. }
  23. func (mch *Handler) reloadBanPlayer() {
  24. mch.bannedPlayers = initBannedPlayer(mch.serverFolder)
  25. }
  26. func (mch *Handler) reloadBanIP() {
  27. mch.bannedIPs = initBannedIP(mch.serverFolder)
  28. }
  29. func (mch *Handler) reloadOp() {
  30. mch.ops = initOps(mch.serverFolder)
  31. }
  32. func (mch *Handler) reloadWhitelist() {
  33. mch.whitelists = initWhitelist(mch.serverFolder)
  34. }