Commit 4f752932 authored by M. Rehan Abbasi's avatar M. Rehan Abbasi
Browse files

update meep-vis-client as per new OAS file

parent 52778367
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
3.0.29
 No newline at end of file
3.0.22
 No newline at end of file
+29 −22
Original line number Diff line number Diff line
# Go API client for swagger

ETSI GS MEC 030 V2X Information Service API described using OpenAPI.
V2X Information Service is AdvantEDGE's implementation of [ETSI MEC ISG MEC030 V2XI API](http://www.etsi.org/deliver/etsi_gs/MEC/001_099/030/02.02.01_60/gs_MEC030v020201p.pdf) <p>[Copyright (c) ETSI 2017](https://forge.etsi.org/etsi-forge-copyright-notice.txt) <p>**Micro-service**<br>[meep-vis](https://github.com/InterDigitalInc/AdvantEDGE/tree/master/go-apps/meep-vis) <p>**Type & Usage**<br>Edge Service used by edge applications that want to get information about radio conditions in the network <p>**Note**<br>AdvantEDGE supports a selected subset of RNI API endpoints (see below) and a subset of subscription types.

## Overview
This API client was generated by the [swagger-codegen](https://github.com/swagger-api/swagger-codegen) project.  By using the [swagger-spec](https://github.com/swagger-api/swagger-spec) from a remote server, you can easily generate an API client.
@@ -8,7 +8,6 @@ This API client was generated by the [swagger-codegen](https://github.com/swagge
- API version: 2.2.1
- Package version: 1.0.0
- Build package: io.swagger.codegen.v3.generators.go.GoClientCodegen
For more information, please visit [https://forge.etsi.org/rep/mec/gs030-vis-api](https://forge.etsi.org/rep/mec/gs030-vis-api)

## Installation
Put the package under your project folder and add the following in import:
@@ -18,23 +17,28 @@ import "./swagger"

## Documentation for API Endpoints

All URIs are relative to *https://localhost/vis/v2*
All URIs are relative to *https://localhost/sandboxname/vis/v2*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*QoSApi* | [**PredictedQosPOST**](docs/QoSApi.md#predictedqospost) | **Post** /provide_predicted_qos | Request the predicted QoS correspondent to potential routes of a vehicular UE.
*QueriesApi* | [**ProvInfoGET**](docs/QueriesApi.md#provinfoget) | **Get** /queries/pc5_provisioning_info | Query provisioning information for V2X communication over PC5.
*QueriesApi* | [**ProvInfoUuMbmsGET**](docs/QueriesApi.md#provinfouumbmsget) | **Get** /queries/uu_mbms_provisioning_info | retrieve information required for V2X communication over Uu MBMS.
*QueriesApi* | [**ProvInfoUuUnicastGET**](docs/QueriesApi.md#provinfouuunicastget) | **Get** /queries/uu_unicast_provisioning_info | Used to query provisioning information for V2X communication over Uu unicast.
*SubscriptionApi* | [**IndividualSubscriptionDELETE**](docs/SubscriptionApi.md#individualsubscriptiondelete) | **Delete** /subscriptions/{subscriptionId} | Used to cancel the existing subscription.
*SubscriptionApi* | [**IndividualSubscriptionGET**](docs/SubscriptionApi.md#individualsubscriptionget) | **Get** /subscriptions/{subscriptionId} | Retrieve information about this subscription.
*SubscriptionApi* | [**IndividualSubscriptionPUT**](docs/SubscriptionApi.md#individualsubscriptionput) | **Put** /subscriptions/{subscriptionId} | Used to update the existing subscription.
*SubscriptionApi* | [**SubGET**](docs/SubscriptionApi.md#subget) | **Get** /subscriptions | Request information about the subscriptions for this requestor.
*SubscriptionApi* | [**SubPOST**](docs/SubscriptionApi.md#subpost) | **Post** /subscriptions |  create a new subscription to VIS notifications.
*V2XMsgApi* | [**V2xMessagePOST**](docs/V2XMsgApi.md#v2xmessagepost) | **Post** /publish_v2x_message | Used to publish a V2X message.
*UnsupportedApi* | [**IndividualSubscriptionDELETE**](docs/UnsupportedApi.md#individualsubscriptiondelete) | **Delete** /subscriptions/{subscriptionId} | Used to cancel the existing subscription.
*UnsupportedApi* | [**IndividualSubscriptionGET**](docs/UnsupportedApi.md#individualsubscriptionget) | **Get** /subscriptions/{subscriptionId} | Retrieve information about this subscription.
*UnsupportedApi* | [**IndividualSubscriptionPUT**](docs/UnsupportedApi.md#individualsubscriptionput) | **Put** /subscriptions/{subscriptionId} | Used to update the existing subscription.
*UnsupportedApi* | [**ProvInfoGET**](docs/UnsupportedApi.md#provinfoget) | **Get** /queries/pc5_provisioning_info | Query provisioning information for V2X communication over PC5.
*UnsupportedApi* | [**ProvInfoUuMbmsGET**](docs/UnsupportedApi.md#provinfouumbmsget) | **Get** /queries/uu_mbms_provisioning_info | retrieve information required for V2X communication over Uu MBMS.
*UnsupportedApi* | [**ProvInfoUuUnicastGET**](docs/UnsupportedApi.md#provinfouuunicastget) | **Get** /queries/uu_unicast_provisioning_info | Used to query provisioning information for V2X communication over Uu unicast.
*UnsupportedApi* | [**SubGET**](docs/UnsupportedApi.md#subget) | **Get** /subscriptions | Request information about the subscriptions for this requestor.
*UnsupportedApi* | [**SubPOST**](docs/UnsupportedApi.md#subpost) | **Post** /subscriptions |  create a new subscription to VIS notifications.
*UnsupportedApi* | [**V2xMessagePOST**](docs/UnsupportedApi.md#v2xmessagepost) | **Post** /publish_v2x_message | Used to publish a V2X message.
*V2xiApi* | [**Mec011AppTerminationPOST**](docs/V2xiApi.md#mec011appterminationpost) | **Post** /notifications/mec011/appTermination | MEC011 Application Termination notification for self termination
*V2xiApi* | [**PredictedQosPOST**](docs/V2xiApi.md#predictedqospost) | **Post** /provide_predicted_qos | Request the predicted QoS correspondent to potential routes of a vehicular UE.

## Documentation For Models

 - [AppTerminationNotification](docs/AppTerminationNotification.md)
 - [AppTerminationNotificationLinks](docs/AppTerminationNotificationLinks.md)
 - [Body](docs/Body.md)
 - [Body1](docs/Body1.md)
 - [CellId](docs/CellId.md)
 - [Earfcn](docs/Earfcn.md)
 - [Ecgi](docs/Ecgi.md)
@@ -44,10 +48,12 @@ Class | Method | HTTP request | Description
 - [LocationInfo](docs/LocationInfo.md)
 - [LocationInfoGeoArea](docs/LocationInfoGeoArea.md)
 - [MsgType](docs/MsgType.md)
 - [OneOfsubscriptionsBody](docs/OneOfsubscriptionsBody.md)
 - [OneOfsubscriptionsSubscriptionIdBody](docs/OneOfsubscriptionsSubscriptionIdBody.md)
 - [OneOfbody](docs/OneOfbody.md)
 - [OneOfbody1](docs/OneOfbody1.md)
 - [OperationActionType](docs/OperationActionType.md)
 - [Pc5NeighbourCellInfo](docs/Pc5NeighbourCellInfo.md)
 - [Pc5ProvisioningInfoInner](docs/Pc5ProvisioningInfoInner.md)
 - [Pc5ProvisioningInfo](docs/Pc5ProvisioningInfo.md)
 - [Pc5ProvisioningInfoProInfoPc5](docs/Pc5ProvisioningInfoProInfoPc5.md)
 - [Plmn](docs/Plmn.md)
 - [PredictedQos](docs/PredictedQos.md)
 - [PredictedQosRoutes](docs/PredictedQosRoutes.md)
@@ -63,9 +69,8 @@ Class | Method | HTTP request | Description
 - [ProvChgUuUniSubscription](docs/ProvChgUuUniSubscription.md)
 - [ProvChgUuUniSubscriptionFilterCriteria](docs/ProvChgUuUniSubscriptionFilterCriteria.md)
 - [SubscriptionLinkList](docs/SubscriptionLinkList.md)
 - [SubscriptionLinkListLinksInner](docs/SubscriptionLinkListLinksInner.md)
 - [SubscriptionsBody](docs/SubscriptionsBody.md)
 - [SubscriptionsSubscriptionIdBody](docs/SubscriptionsSubscriptionIdBody.md)
 - [SubscriptionLinkListLinks](docs/SubscriptionLinkListLinks.md)
 - [SubscriptionLinkListLinksSubscriptions](docs/SubscriptionLinkListLinksSubscriptions.md)
 - [SystemInformationBlockType21](docs/SystemInformationBlockType21.md)
 - [TddInfo](docs/TddInfo.md)
 - [TestNotification](docs/TestNotification.md)
@@ -74,9 +79,11 @@ Class | Method | HTTP request | Description
 - [TransmissionBandwidth](docs/TransmissionBandwidth.md)
 - [TransmissionBandwidthTransmissionBandwidth](docs/TransmissionBandwidthTransmissionBandwidth.md)
 - [UuMbmsNeighbourCellInfo](docs/UuMbmsNeighbourCellInfo.md)
 - [UuMbmsProvisioningInfoInner](docs/UuMbmsProvisioningInfoInner.md)
 - [UuMbmsProvisioningInfo](docs/UuMbmsProvisioningInfo.md)
 - [UuMbmsProvisioningInfoProInfoUuMbms](docs/UuMbmsProvisioningInfoProInfoUuMbms.md)
 - [UuUniNeighbourCellInfo](docs/UuUniNeighbourCellInfo.md)
 - [UuUnicastProvisioningInfoInner](docs/UuUnicastProvisioningInfoInner.md)
 - [UuUnicastProvisioningInfo](docs/UuUnicastProvisioningInfo.md)
 - [UuUnicastProvisioningInfoProInfoUuUnicast](docs/UuUnicastProvisioningInfoProInfoUuUnicast.md)
 - [V2xApplicationServer](docs/V2xApplicationServer.md)
 - [V2xMsgNotification](docs/V2xMsgNotification.md)
 - [V2xMsgNotificationLinks](docs/V2xMsgNotificationLinks.md)
@@ -94,4 +101,4 @@ Class | Method | HTTP request | Description

## Author

cti_support@etsi.org
AdvantEDGE@InterDigital.com
+956 −406

File changed.

Preview size limit exceeded, changes collapsed.

+596 −710

File changed and moved.

Preview size limit exceeded, changes collapsed.

+234 −0
Original line number Diff line number Diff line
/*
 * Copyright (c) 2022  InterDigital Communications, Inc
 *
 * Licensed under the Apache License, Version 2.0 (the \"License\");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an \"AS IS\" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * AdvantEDGE V2X Information Service REST API
 *
 * V2X Information Service is AdvantEDGE's implementation of [ETSI MEC ISG MEC030 V2XI API](http://www.etsi.org/deliver/etsi_gs/MEC/001_099/030/02.02.01_60/gs_MEC030v020201p.pdf) <p>[Copyright (c) ETSI 2017](https://forge.etsi.org/etsi-forge-copyright-notice.txt) <p>**Micro-service**<br>[meep-vis](https://github.com/InterDigitalInc/AdvantEDGE/tree/master/go-apps/meep-vis) <p>**Type & Usage**<br>Edge Service used by edge applications that want to get information about radio conditions in the network <p>**Note**<br>AdvantEDGE supports a selected subset of RNI API endpoints (see below) and a subset of subscription types.
 *
 * API version: 2.2.1
 * Contact: AdvantEDGE@InterDigital.com
 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
 */
package client

import (
	"context"
	"io/ioutil"
	"net/http"
	"net/url"
	"strings"
)

// Linger please
var (
	_ context.Context
)

type V2xiApiService service

/*
V2xiApiService MEC011 Application Termination notification for self termination
Terminates itself.
 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
 * @param body Termination notification details

*/
func (a *V2xiApiService) Mec011AppTerminationPOST(ctx context.Context, body AppTerminationNotification) (*http.Response, error) {
	var (
		localVarHttpMethod = strings.ToUpper("Post")
		localVarPostBody   interface{}
		localVarFileName   string
		localVarFileBytes  []byte
	)

	// create path and map variables
	localVarPath := a.client.cfg.BasePath + "/notifications/mec011/appTermination"

	localVarHeaderParams := make(map[string]string)
	localVarQueryParams := url.Values{}
	localVarFormParams := url.Values{}

	// to determine the Content-Type header
	localVarHttpContentTypes := []string{"application/json"}

	// set Content-Type header
	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
	if localVarHttpContentType != "" {
		localVarHeaderParams["Content-Type"] = localVarHttpContentType
	}

	// to determine the Accept header
	localVarHttpHeaderAccepts := []string{}

	// set Accept header
	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
	if localVarHttpHeaderAccept != "" {
		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
	}
	// body params
	localVarPostBody = &body
	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
	if err != nil {
		return nil, err
	}

	localVarHttpResponse, err := a.client.callAPI(r)
	if err != nil || localVarHttpResponse == nil {
		return localVarHttpResponse, err
	}

	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
	localVarHttpResponse.Body.Close()
	if err != nil {
		return localVarHttpResponse, err
	}

	if localVarHttpResponse.StatusCode >= 300 {
		newErr := GenericSwaggerError{
			body:  localVarBody,
			error: localVarHttpResponse.Status,
		}
		return localVarHttpResponse, newErr
	}

	return localVarHttpResponse, nil
}

/*
V2xiApiService Request the predicted QoS correspondent to potential routes of a vehicular UE.
Request the predicted QoS correspondent to potential routes of a vehicular UE.
 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
 * @param body
@return PredictedQos
*/
func (a *V2xiApiService) PredictedQosPOST(ctx context.Context, body PredictedQos) (PredictedQos, *http.Response, error) {
	var (
		localVarHttpMethod  = strings.ToUpper("Post")
		localVarPostBody    interface{}
		localVarFileName    string
		localVarFileBytes   []byte
		localVarReturnValue PredictedQos
	)

	// create path and map variables
	localVarPath := a.client.cfg.BasePath + "/provide_predicted_qos"

	localVarHeaderParams := make(map[string]string)
	localVarQueryParams := url.Values{}
	localVarFormParams := url.Values{}

	// to determine the Content-Type header
	localVarHttpContentTypes := []string{"application/json"}

	// set Content-Type header
	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
	if localVarHttpContentType != "" {
		localVarHeaderParams["Content-Type"] = localVarHttpContentType
	}

	// to determine the Accept header
	localVarHttpHeaderAccepts := []string{"application/json"}

	// set Accept header
	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
	if localVarHttpHeaderAccept != "" {
		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
	}
	// body params
	localVarPostBody = &body
	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
	if err != nil {
		return localVarReturnValue, nil, err
	}

	localVarHttpResponse, err := a.client.callAPI(r)
	if err != nil || localVarHttpResponse == nil {
		return localVarReturnValue, localVarHttpResponse, err
	}

	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
	localVarHttpResponse.Body.Close()
	if err != nil {
		return localVarReturnValue, localVarHttpResponse, err
	}

	if localVarHttpResponse.StatusCode < 300 {
		// If we succeed, return the data, otherwise pass on to decode error.
		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
		if err == nil {
			return localVarReturnValue, localVarHttpResponse, err
		}
	}

	if localVarHttpResponse.StatusCode >= 300 {
		newErr := GenericSwaggerError{
			body:  localVarBody,
			error: localVarHttpResponse.Status,
		}
		if localVarHttpResponse.StatusCode == 200 {
			var v PredictedQos
			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
			if err != nil {
				newErr.error = err.Error()
				return localVarReturnValue, localVarHttpResponse, newErr
			}
			newErr.model = v
			return localVarReturnValue, localVarHttpResponse, newErr
		}
		if localVarHttpResponse.StatusCode == 400 {
			var v ProblemDetails
			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
			if err != nil {
				newErr.error = err.Error()
				return localVarReturnValue, localVarHttpResponse, newErr
			}
			newErr.model = v
			return localVarReturnValue, localVarHttpResponse, newErr
		}
		if localVarHttpResponse.StatusCode == 401 {
			var v ProblemDetails
			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
			if err != nil {
				newErr.error = err.Error()
				return localVarReturnValue, localVarHttpResponse, newErr
			}
			newErr.model = v
			return localVarReturnValue, localVarHttpResponse, newErr
		}
		if localVarHttpResponse.StatusCode == 403 {
			var v ProblemDetails
			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
			if err != nil {
				newErr.error = err.Error()
				return localVarReturnValue, localVarHttpResponse, newErr
			}
			newErr.model = v
			return localVarReturnValue, localVarHttpResponse, newErr
		}
		if localVarHttpResponse.StatusCode == 404 {
			var v ProblemDetails
			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
			if err != nil {
				newErr.error = err.Error()
				return localVarReturnValue, localVarHttpResponse, newErr
			}
			newErr.model = v
			return localVarReturnValue, localVarHttpResponse, newErr
		}
		return localVarReturnValue, localVarHttpResponse, newErr
	}

	return localVarReturnValue, localVarHttpResponse, nil
}
Loading