1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /**
  2. * Copyright (c) 2022 Yansen Zhang
  3. * wxcomponent is licensed under Mulan PSL v2.
  4. * You can use this software according to the terms and conditions of the Mulan PSL v2.
  5. * You may obtain a copy of Mulan PSL v2 at:
  6. * http://license.coscl.org.cn/MulanPSL2
  7. * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
  8. * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
  9. * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
  10. * See the Mulan PSL v2 for more details.
  11. **/
  12. package config
  13. import (
  14. "errors"
  15. "time"
  16. )
  17. // Init 初始化平台实例
  18. func Init(config Config, authorizerConfig AuthorizerConfig) error {
  19. if config == nil || authorizerConfig == nil {
  20. return errors.New("平台初始化参数不能为空")
  21. }
  22. appID := config.GetAppID()
  23. secret := config.GetAppSecret()
  24. token := config.GetMsgToken()
  25. if appID == "" || secret == "" || token == "" {
  26. return errors.New("平台组件初始化内容不能为空")
  27. }
  28. conf = config
  29. authorizer = authorizerConfig
  30. return nil
  31. }
  32. // GetConfiger 获取配置实例
  33. func GetConfiger() Config {
  34. return conf
  35. }
  36. // GetAuthorizer 获取授权对象配置
  37. func GetAuthorizer() AuthorizerConfig {
  38. return authorizer
  39. }
  40. // GetAppID 获取平台 APPID
  41. func GetAppID() string {
  42. return conf.GetAppID()
  43. }
  44. // GetAppSecret 获取平台 APPSECRET
  45. func GetAppSecret() string {
  46. return conf.GetAppSecret()
  47. }
  48. // GetAppSecret 获取平台消息校验Token
  49. func GetMsgToken() string {
  50. return conf.GetMsgToken()
  51. }
  52. // GetToken 获取 Token
  53. func GetAccessToken() string {
  54. return conf.GetAccessToken()
  55. }
  56. // RefreshToken 刷新 Token
  57. func RefreshToken(token string, expire time.Time) error {
  58. return conf.RefreshToken(token, expire)
  59. }
  60. // GetTicket 获取票据
  61. func GetVerifyTicket() string {
  62. return conf.GetVerifyTicket()
  63. }
  64. // RefreshTicket 刷新票据
  65. func RefreshVerifyTicket(ticket string, expire time.Time) error {
  66. return conf.RefreshVerifyTicket(ticket, expire)
  67. }
  68. // GetPushTicketState 是否开启票据推送服务
  69. func GetPushTicketState() bool {
  70. return conf.GetPushTicketState()
  71. }
  72. // RefreshPushTicketState 刷新票据推送服务状态
  73. func RefreshPushTicketState(state bool) {
  74. conf.RefreshPushTicketState(state)
  75. }