bunnyshell.com/sdk@v0.16.0/api_component_git.go (about)

     1  /*
     2  API Bunnyshell Environments
     3  
     4  Interact with Bunnyshell Platform
     5  
     6  API version: 1.1.0
     7  Contact: osi+support@bunnyshell.com
     8  */
     9  
    10  // Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
    11  
    12  package sdk
    13  
    14  import (
    15  	"bytes"
    16  	"context"
    17  	"io"
    18  	"net/http"
    19  	"net/url"
    20  	"strings"
    21  )
    22  
    23  // ComponentGitAPIService ComponentGitAPI service
    24  type ComponentGitAPIService service
    25  
    26  type ApiComponentGitListRequest struct {
    27  	ctx          context.Context
    28  	ApiService   *ComponentGitAPIService
    29  	page         *int32
    30  	organization *string
    31  	project      *string
    32  	environment  *string
    33  	name         *string
    34  	repository   *string
    35  	branch       *string
    36  }
    37  
    38  // The collection page number
    39  func (r ApiComponentGitListRequest) Page(page int32) ApiComponentGitListRequest {
    40  	r.page = &page
    41  	return r
    42  }
    43  
    44  // Filter by organization
    45  func (r ApiComponentGitListRequest) Organization(organization string) ApiComponentGitListRequest {
    46  	r.organization = &organization
    47  	return r
    48  }
    49  
    50  // Filter by project
    51  func (r ApiComponentGitListRequest) Project(project string) ApiComponentGitListRequest {
    52  	r.project = &project
    53  	return r
    54  }
    55  
    56  // Filter by environment
    57  func (r ApiComponentGitListRequest) Environment(environment string) ApiComponentGitListRequest {
    58  	r.environment = &environment
    59  	return r
    60  }
    61  
    62  // Filter by name
    63  func (r ApiComponentGitListRequest) Name(name string) ApiComponentGitListRequest {
    64  	r.name = &name
    65  	return r
    66  }
    67  
    68  // Filter by repository
    69  func (r ApiComponentGitListRequest) Repository(repository string) ApiComponentGitListRequest {
    70  	r.repository = &repository
    71  	return r
    72  }
    73  
    74  // Filter by branch
    75  func (r ApiComponentGitListRequest) Branch(branch string) ApiComponentGitListRequest {
    76  	r.branch = &branch
    77  	return r
    78  }
    79  
    80  func (r ApiComponentGitListRequest) Execute() (*PaginatedComponentGitCollection, *http.Response, error) {
    81  	return r.ApiService.ComponentGitListExecute(r)
    82  }
    83  
    84  /*
    85  ComponentGitList List git info for service components matching any selected filters
    86  
    87  List git info for service components matching any selected filters
    88  
    89  	@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    90  	@return ApiComponentGitListRequest
    91  */
    92  func (a *ComponentGitAPIService) ComponentGitList(ctx context.Context) ApiComponentGitListRequest {
    93  	return ApiComponentGitListRequest{
    94  		ApiService: a,
    95  		ctx:        ctx,
    96  	}
    97  }
    98  
    99  // Execute executes the request
   100  //
   101  //	@return PaginatedComponentGitCollection
   102  func (a *ComponentGitAPIService) ComponentGitListExecute(r ApiComponentGitListRequest) (*PaginatedComponentGitCollection, *http.Response, error) {
   103  	var (
   104  		localVarHTTPMethod  = http.MethodGet
   105  		localVarPostBody    interface{}
   106  		formFiles           []formFile
   107  		localVarReturnValue *PaginatedComponentGitCollection
   108  	)
   109  
   110  	localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ComponentGitAPIService.ComponentGitList")
   111  	if err != nil {
   112  		return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
   113  	}
   114  
   115  	localVarPath := localBasePath + "/v1/components/gitinfo"
   116  
   117  	localVarHeaderParams := make(map[string]string)
   118  	localVarQueryParams := url.Values{}
   119  	localVarFormParams := url.Values{}
   120  
   121  	if r.page != nil {
   122  		parameterAddToHeaderOrQuery(localVarQueryParams, "page", r.page, "")
   123  	} else {
   124  		var defaultValue int32 = 1
   125  		r.page = &defaultValue
   126  	}
   127  	if r.organization != nil {
   128  		parameterAddToHeaderOrQuery(localVarQueryParams, "organization", r.organization, "")
   129  	}
   130  	if r.project != nil {
   131  		parameterAddToHeaderOrQuery(localVarQueryParams, "project", r.project, "")
   132  	}
   133  	if r.environment != nil {
   134  		parameterAddToHeaderOrQuery(localVarQueryParams, "environment", r.environment, "")
   135  	}
   136  	if r.name != nil {
   137  		parameterAddToHeaderOrQuery(localVarQueryParams, "name", r.name, "")
   138  	}
   139  	if r.repository != nil {
   140  		parameterAddToHeaderOrQuery(localVarQueryParams, "repository", r.repository, "")
   141  	}
   142  	if r.branch != nil {
   143  		parameterAddToHeaderOrQuery(localVarQueryParams, "branch", r.branch, "")
   144  	}
   145  	// to determine the Content-Type header
   146  	localVarHTTPContentTypes := []string{}
   147  
   148  	// set Content-Type header
   149  	localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
   150  	if localVarHTTPContentType != "" {
   151  		localVarHeaderParams["Content-Type"] = localVarHTTPContentType
   152  	}
   153  
   154  	// to determine the Accept header
   155  	localVarHTTPHeaderAccepts := []string{"application/hal+json", "application/problem+json"}
   156  
   157  	// set Accept header
   158  	localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
   159  	if localVarHTTPHeaderAccept != "" {
   160  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   161  	}
   162  	if r.ctx != nil {
   163  		// API Key Authentication
   164  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
   165  			if apiKey, ok := auth["JWT"]; ok {
   166  				var key string
   167  				if apiKey.Prefix != "" {
   168  					key = apiKey.Prefix + " " + apiKey.Key
   169  				} else {
   170  					key = apiKey.Key
   171  				}
   172  				localVarHeaderParams["Authorization"] = key
   173  			}
   174  		}
   175  	}
   176  	if r.ctx != nil {
   177  		// API Key Authentication
   178  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
   179  			if apiKey, ok := auth["ApiKeyAuth"]; ok {
   180  				var key string
   181  				if apiKey.Prefix != "" {
   182  					key = apiKey.Prefix + " " + apiKey.Key
   183  				} else {
   184  					key = apiKey.Key
   185  				}
   186  				localVarHeaderParams["X-Auth-Token"] = key
   187  			}
   188  		}
   189  	}
   190  	req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
   191  	if err != nil {
   192  		return localVarReturnValue, nil, err
   193  	}
   194  
   195  	localVarHTTPResponse, err := a.client.callAPI(req)
   196  	if err != nil || localVarHTTPResponse == nil {
   197  		return localVarReturnValue, localVarHTTPResponse, err
   198  	}
   199  
   200  	localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
   201  	localVarHTTPResponse.Body.Close()
   202  	localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
   203  	if err != nil {
   204  		return localVarReturnValue, localVarHTTPResponse, err
   205  	}
   206  
   207  	if localVarHTTPResponse.StatusCode >= 300 {
   208  		newErr := &GenericOpenAPIError{
   209  			body:  localVarBody,
   210  			error: localVarHTTPResponse.Status,
   211  		}
   212  		if localVarHTTPResponse.StatusCode >= 400 && localVarHTTPResponse.StatusCode < 500 {
   213  			var v ProblemGeneric
   214  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   215  			if err != nil {
   216  				newErr.error = err.Error()
   217  				return localVarReturnValue, localVarHTTPResponse, newErr
   218  			}
   219  			newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
   220  			newErr.model = v
   221  		}
   222  		return localVarReturnValue, localVarHTTPResponse, newErr
   223  	}
   224  
   225  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   226  	if err != nil {
   227  		newErr := &GenericOpenAPIError{
   228  			body:  localVarBody,
   229  			error: err.Error(),
   230  		}
   231  		return localVarReturnValue, localVarHTTPResponse, newErr
   232  	}
   233  
   234  	return localVarReturnValue, localVarHTTPResponse, nil
   235  }
   236  
   237  type ApiComponentGitViewRequest struct {
   238  	ctx        context.Context
   239  	ApiService *ComponentGitAPIService
   240  	id         string
   241  }
   242  
   243  func (r ApiComponentGitViewRequest) Execute() (*ComponentGitItem, *http.Response, error) {
   244  	return r.ApiService.ComponentGitViewExecute(r)
   245  }
   246  
   247  /*
   248  ComponentGitView View git info for a specific service component
   249  
   250  View git info for a specific service component
   251  
   252  	@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   253  	@param id Resource identifier
   254  	@return ApiComponentGitViewRequest
   255  */
   256  func (a *ComponentGitAPIService) ComponentGitView(ctx context.Context, id string) ApiComponentGitViewRequest {
   257  	return ApiComponentGitViewRequest{
   258  		ApiService: a,
   259  		ctx:        ctx,
   260  		id:         id,
   261  	}
   262  }
   263  
   264  // Execute executes the request
   265  //
   266  //	@return ComponentGitItem
   267  func (a *ComponentGitAPIService) ComponentGitViewExecute(r ApiComponentGitViewRequest) (*ComponentGitItem, *http.Response, error) {
   268  	var (
   269  		localVarHTTPMethod  = http.MethodGet
   270  		localVarPostBody    interface{}
   271  		formFiles           []formFile
   272  		localVarReturnValue *ComponentGitItem
   273  	)
   274  
   275  	localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ComponentGitAPIService.ComponentGitView")
   276  	if err != nil {
   277  		return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
   278  	}
   279  
   280  	localVarPath := localBasePath + "/v1/components/{id}/gitinfo"
   281  	localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(parameterValueToString(r.id, "id")), -1)
   282  
   283  	localVarHeaderParams := make(map[string]string)
   284  	localVarQueryParams := url.Values{}
   285  	localVarFormParams := url.Values{}
   286  
   287  	// to determine the Content-Type header
   288  	localVarHTTPContentTypes := []string{}
   289  
   290  	// set Content-Type header
   291  	localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
   292  	if localVarHTTPContentType != "" {
   293  		localVarHeaderParams["Content-Type"] = localVarHTTPContentType
   294  	}
   295  
   296  	// to determine the Accept header
   297  	localVarHTTPHeaderAccepts := []string{"application/hal+json", "application/problem+json"}
   298  
   299  	// set Accept header
   300  	localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
   301  	if localVarHTTPHeaderAccept != "" {
   302  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   303  	}
   304  	if r.ctx != nil {
   305  		// API Key Authentication
   306  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
   307  			if apiKey, ok := auth["JWT"]; ok {
   308  				var key string
   309  				if apiKey.Prefix != "" {
   310  					key = apiKey.Prefix + " " + apiKey.Key
   311  				} else {
   312  					key = apiKey.Key
   313  				}
   314  				localVarHeaderParams["Authorization"] = key
   315  			}
   316  		}
   317  	}
   318  	if r.ctx != nil {
   319  		// API Key Authentication
   320  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
   321  			if apiKey, ok := auth["ApiKeyAuth"]; ok {
   322  				var key string
   323  				if apiKey.Prefix != "" {
   324  					key = apiKey.Prefix + " " + apiKey.Key
   325  				} else {
   326  					key = apiKey.Key
   327  				}
   328  				localVarHeaderParams["X-Auth-Token"] = key
   329  			}
   330  		}
   331  	}
   332  	req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
   333  	if err != nil {
   334  		return localVarReturnValue, nil, err
   335  	}
   336  
   337  	localVarHTTPResponse, err := a.client.callAPI(req)
   338  	if err != nil || localVarHTTPResponse == nil {
   339  		return localVarReturnValue, localVarHTTPResponse, err
   340  	}
   341  
   342  	localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
   343  	localVarHTTPResponse.Body.Close()
   344  	localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
   345  	if err != nil {
   346  		return localVarReturnValue, localVarHTTPResponse, err
   347  	}
   348  
   349  	if localVarHTTPResponse.StatusCode >= 300 {
   350  		newErr := &GenericOpenAPIError{
   351  			body:  localVarBody,
   352  			error: localVarHTTPResponse.Status,
   353  		}
   354  		if localVarHTTPResponse.StatusCode >= 400 && localVarHTTPResponse.StatusCode < 500 {
   355  			var v ProblemGeneric
   356  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   357  			if err != nil {
   358  				newErr.error = err.Error()
   359  				return localVarReturnValue, localVarHTTPResponse, newErr
   360  			}
   361  			newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
   362  			newErr.model = v
   363  		}
   364  		return localVarReturnValue, localVarHTTPResponse, newErr
   365  	}
   366  
   367  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   368  	if err != nil {
   369  		newErr := &GenericOpenAPIError{
   370  			body:  localVarBody,
   371  			error: err.Error(),
   372  		}
   373  		return localVarReturnValue, localVarHTTPResponse, newErr
   374  	}
   375  
   376  	return localVarReturnValue, localVarHTTPResponse, nil
   377  }