gitee.com/openeuler/go-gitee@v0.0.0-20220530104019-3af895bc380c/gitee/api_git_data.go (about)

     1  /*
     2   * 码云 Open API
     3   *
     4   * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
     5   *
     6   * API version: 5.3.2
     7   * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
     8   */
     9  
    10  package gitee
    11  
    12  import (
    13  	"context"
    14  	"fmt"
    15  	"io/ioutil"
    16  	"net/http"
    17  	"net/url"
    18  	"strings"
    19  
    20  	"github.com/antihax/optional"
    21  )
    22  
    23  // Linger please
    24  var (
    25  	_ context.Context
    26  )
    27  
    28  type GitDataApiService service
    29  
    30  /*
    31  GitDataApiService 获取文件Blob
    32  获取文件Blob
    33   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    34   * @param owner 仓库所属空间地址(企业、组织或个人的地址path)
    35   * @param repo 仓库路径(path)
    36   * @param sha 文件的 Blob SHA,可通过 [获取仓库具体路径下的内容] API 获取
    37   * @param optional nil or *GetV5ReposOwnerRepoGitBlobsShaOpts - Optional Parameters:
    38       * @param "AccessToken" (optional.String) -  用户授权码
    39  
    40  @return Blob
    41  */
    42  
    43  type GetV5ReposOwnerRepoGitBlobsShaOpts struct {
    44  	AccessToken optional.String
    45  }
    46  
    47  func (a *GitDataApiService) GetV5ReposOwnerRepoGitBlobsSha(ctx context.Context, owner string, repo string, sha string, localVarOptionals *GetV5ReposOwnerRepoGitBlobsShaOpts) (Blob, *http.Response, error) {
    48  	var (
    49  		localVarHttpMethod  = strings.ToUpper("Get")
    50  		localVarPostBody    interface{}
    51  		localVarFileName    string
    52  		localVarFileBytes   []byte
    53  		localVarReturnValue Blob
    54  	)
    55  
    56  	// create path and map variables
    57  	localVarPath := a.client.cfg.BasePath + "/v5/repos/{owner}/{repo}/git/blobs/{sha}"
    58  	localVarPath = strings.Replace(localVarPath, "{"+"owner"+"}", fmt.Sprintf("%v", owner), -1)
    59  	localVarPath = strings.Replace(localVarPath, "{"+"repo"+"}", fmt.Sprintf("%v", repo), -1)
    60  	localVarPath = strings.Replace(localVarPath, "{"+"sha"+"}", fmt.Sprintf("%v", sha), -1)
    61  
    62  	localVarHeaderParams := make(map[string]string)
    63  	localVarQueryParams := url.Values{}
    64  	localVarFormParams := url.Values{}
    65  
    66  	if localVarOptionals != nil && localVarOptionals.AccessToken.IsSet() {
    67  		localVarQueryParams.Add("access_token", parameterToString(localVarOptionals.AccessToken.Value(), ""))
    68  	}
    69  	// to determine the Content-Type header
    70  	localVarHttpContentTypes := []string{"application/json", "multipart/form-data"}
    71  
    72  	// set Content-Type header
    73  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    74  	if localVarHttpContentType != "" {
    75  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    76  	}
    77  
    78  	// to determine the Accept header
    79  	localVarHttpHeaderAccepts := []string{"application/json"}
    80  
    81  	// set Accept header
    82  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    83  	if localVarHttpHeaderAccept != "" {
    84  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    85  	}
    86  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
    87  	if err != nil {
    88  		return localVarReturnValue, nil, err
    89  	}
    90  
    91  	localVarHttpResponse, err := a.client.callAPI(r)
    92  	if err != nil || localVarHttpResponse == nil {
    93  		return localVarReturnValue, localVarHttpResponse, err
    94  	}
    95  
    96  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
    97  	localVarHttpResponse.Body.Close()
    98  	if err != nil {
    99  		return localVarReturnValue, localVarHttpResponse, err
   100  	}
   101  
   102  	if localVarHttpResponse.StatusCode < 300 {
   103  		// If we succeed, return the data, otherwise pass on to decode error.
   104  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   105  		if err == nil {
   106  			return localVarReturnValue, localVarHttpResponse, err
   107  		}
   108  	}
   109  
   110  	if localVarHttpResponse.StatusCode >= 300 {
   111  		newErr := GenericSwaggerError{
   112  			body:  localVarBody,
   113  			error: localVarHttpResponse.Status,
   114  		}
   115  
   116  		if localVarHttpResponse.StatusCode == 200 {
   117  			var v Blob
   118  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   119  			if err != nil {
   120  				newErr.error = err.Error()
   121  				return localVarReturnValue, localVarHttpResponse, newErr
   122  			}
   123  			newErr.model = v
   124  			return localVarReturnValue, localVarHttpResponse, newErr
   125  		}
   126  
   127  		return localVarReturnValue, localVarHttpResponse, newErr
   128  	}
   129  
   130  	return localVarReturnValue, localVarHttpResponse, nil
   131  }
   132  
   133  /*
   134  GitDataApiService 获取目录Tree
   135  获取目录Tree
   136   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   137   * @param owner 仓库所属空间地址(企业、组织或个人的地址path)
   138   * @param repo 仓库路径(path)
   139   * @param sha 可以是分支名(如master)、Commit或者目录Tree的SHA值
   140   * @param optional nil or *GetV5ReposOwnerRepoGitTreesShaOpts - Optional Parameters:
   141       * @param "AccessToken" (optional.String) -  用户授权码
   142       * @param "Recursive" (optional.Int32) -  赋值为1递归获取目录
   143  
   144  @return Tree
   145  */
   146  
   147  type GetV5ReposOwnerRepoGitTreesShaOpts struct {
   148  	AccessToken optional.String
   149  	Recursive   optional.Int32
   150  }
   151  
   152  func (a *GitDataApiService) GetV5ReposOwnerRepoGitTreesSha(ctx context.Context, owner string, repo string, sha string, localVarOptionals *GetV5ReposOwnerRepoGitTreesShaOpts) (Tree, *http.Response, error) {
   153  	var (
   154  		localVarHttpMethod  = strings.ToUpper("Get")
   155  		localVarPostBody    interface{}
   156  		localVarFileName    string
   157  		localVarFileBytes   []byte
   158  		localVarReturnValue Tree
   159  	)
   160  
   161  	// create path and map variables
   162  	localVarPath := a.client.cfg.BasePath + "/v5/repos/{owner}/{repo}/git/trees/{sha}"
   163  	localVarPath = strings.Replace(localVarPath, "{"+"owner"+"}", fmt.Sprintf("%v", owner), -1)
   164  	localVarPath = strings.Replace(localVarPath, "{"+"repo"+"}", fmt.Sprintf("%v", repo), -1)
   165  	localVarPath = strings.Replace(localVarPath, "{"+"sha"+"}", fmt.Sprintf("%v", sha), -1)
   166  
   167  	localVarHeaderParams := make(map[string]string)
   168  	localVarQueryParams := url.Values{}
   169  	localVarFormParams := url.Values{}
   170  
   171  	if localVarOptionals != nil && localVarOptionals.AccessToken.IsSet() {
   172  		localVarQueryParams.Add("access_token", parameterToString(localVarOptionals.AccessToken.Value(), ""))
   173  	}
   174  	if localVarOptionals != nil && localVarOptionals.Recursive.IsSet() {
   175  		localVarQueryParams.Add("recursive", parameterToString(localVarOptionals.Recursive.Value(), ""))
   176  	}
   177  	// to determine the Content-Type header
   178  	localVarHttpContentTypes := []string{"application/json", "multipart/form-data"}
   179  
   180  	// set Content-Type header
   181  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   182  	if localVarHttpContentType != "" {
   183  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   184  	}
   185  
   186  	// to determine the Accept header
   187  	localVarHttpHeaderAccepts := []string{"application/json"}
   188  
   189  	// set Accept header
   190  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   191  	if localVarHttpHeaderAccept != "" {
   192  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   193  	}
   194  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
   195  	if err != nil {
   196  		return localVarReturnValue, nil, err
   197  	}
   198  
   199  	localVarHttpResponse, err := a.client.callAPI(r)
   200  	if err != nil || localVarHttpResponse == nil {
   201  		return localVarReturnValue, localVarHttpResponse, err
   202  	}
   203  
   204  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   205  	localVarHttpResponse.Body.Close()
   206  	if err != nil {
   207  		return localVarReturnValue, localVarHttpResponse, err
   208  	}
   209  
   210  	if localVarHttpResponse.StatusCode < 300 {
   211  		// If we succeed, return the data, otherwise pass on to decode error.
   212  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   213  		if err == nil {
   214  			return localVarReturnValue, localVarHttpResponse, err
   215  		}
   216  	}
   217  
   218  	if localVarHttpResponse.StatusCode >= 300 {
   219  		newErr := GenericSwaggerError{
   220  			body:  localVarBody,
   221  			error: localVarHttpResponse.Status,
   222  		}
   223  
   224  		if localVarHttpResponse.StatusCode == 200 {
   225  			var v Tree
   226  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   227  			if err != nil {
   228  				newErr.error = err.Error()
   229  				return localVarReturnValue, localVarHttpResponse, newErr
   230  			}
   231  			newErr.model = v
   232  			return localVarReturnValue, localVarHttpResponse, newErr
   233  		}
   234  
   235  		return localVarReturnValue, localVarHttpResponse, newErr
   236  	}
   237  
   238  	return localVarReturnValue, localVarHttpResponse, nil
   239  }