| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- package managesdk
- import (
- "errors"
- "git.sxidc.com/go-tools/api_binding/http_binding/response"
- "git.sxidc.com/go-tools/utils/http_client"
- "time"
- )
- var timeoutDuration = TimeoutSec * time.Second
- var baseUrl string
- var httpClient *http_client.Client
- const (
- TimeoutSec = 30
- servicePrefix = "/api/v1"
- )
- func Destroy() {
- if httpClient == nil {
- return
- }
- http_client.Destroy(httpClient)
- httpClient = nil
- }
- func Init(configBaseUrl string, serviceType ServiceType) error {
- var defaultBaseURL string
- switch serviceType {
- case ServiceTypePerson:
- defaultBaseURL = DefaultPersonBaseURL
- case ServiceTypeResource:
- defaultBaseURL = DefaultResourceBaseURL
- case ServiceTypeActivity:
- defaultBaseURL = DefaultActivityBaseURL
- case ServiceTypePlan:
- defaultBaseURL = DefaultPlanBaseURL
- default:
- defaultBaseURL = DefaultPersonBaseURL
- }
- if configBaseUrl != "" {
- baseUrl = configBaseUrl + servicePrefix
- } else {
- baseUrl = defaultBaseURL + servicePrefix
- }
- if httpClient == nil {
- httpClient = http_client.New()
- }
- return nil
- }
- func getVersion() (map[string]any, error) {
- getResponse, err := httpClient.NewRequest(http_client.WithNewRequestTimeout(timeoutDuration)).
- Get(baseUrl + "/version")
- if err != nil {
- return nil, err
- }
- resp := new(response.InfoResponse[map[string]any])
- err = getResponse.Json(resp)
- if err != nil {
- return nil, err
- }
- if !resp.Success {
- return nil, errors.New(resp.Msg)
- }
- return resp.Info, nil
- }
|