dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts@v1.0.2/clients/http/general.go (about)

     1  //
     2  // Copyright (C) 2021 IOTech Ltd
     3  // Copyright (C) 2023 Intel Corporation
     4  //
     5  // SPDX-License-Identifier: Apache-2.0
     6  
     7  package http
     8  
     9  import (
    10  	"context"
    11  
    12  	"dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts/clients/http/utils"
    13  	"dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts/clients/interfaces"
    14  	"dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts/common"
    15  	dtoCommon "dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts/dtos/common"
    16  	"dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts/errors"
    17  )
    18  
    19  type generalClient struct {
    20  	baseUrl      string
    21  	authInjector interfaces.AuthenticationInjector
    22  }
    23  
    24  func NewGeneralClient(baseUrl string, authInjector interfaces.AuthenticationInjector) interfaces.GeneralClient {
    25  	return &generalClient{
    26  		baseUrl:      baseUrl,
    27  		authInjector: authInjector,
    28  	}
    29  }
    30  
    31  func (g *generalClient) FetchConfiguration(ctx context.Context) (res dtoCommon.ConfigResponse, err errors.EdgeX) {
    32  	err = utils.GetRequest(ctx, &res, g.baseUrl, common.ApiConfigRoute, nil, g.authInjector)
    33  	if err != nil {
    34  		return res, errors.NewCommonEdgeXWrapper(err)
    35  	}
    36  
    37  	return res, nil
    38  }