client

package module
v0.0.0-...-8f6edbe Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 30, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

README

Go API client for client

This API is the main Platform Controller API for scenario configuration & sandbox management

Micro-service
meep-pfm-ctrl

Type & Usage
Platform main interface used by controller software to configure scenarios and manage sandboxes in the AdvantEDGE platform

Details
API details available at your-AdvantEDGE-ip-address/api

Overview

This API client was generated by the swagger-codegen project. By using the swagger-spec from a remote server, you can easily generate an API client.

  • API version: 1.0.0
  • Package version: 1.0.0
  • Build package: io.swagger.codegen.languages.GoClientCodegen

Installation

Put the package under your project folder and add the following in import:

import "./client"

Documentation for API Endpoints

All URIs are relative to https://localhost/platform-ctrl/v1

Class Method HTTP request Description
SandboxControlApi CreateSandbox Post /sandboxes Create a new sandbox
SandboxControlApi CreateSandboxWithName Post /sandboxes/{name} Create a new sandbox
SandboxControlApi DeleteSandbox Delete /sandboxes/{name} Delete a specific sandbox
SandboxControlApi DeleteSandboxList Delete /sandboxes Delete all active sandboxes
SandboxControlApi GetSandbox Get /sandboxes/{name} Get a specific sandbox
SandboxControlApi GetSandboxList Get /sandboxes Get all active sandboxes
ScenarioConfigurationApi CreateScenario Post /scenarios/{name} Add a scenario
ScenarioConfigurationApi DeleteScenario Delete /scenarios/{name} Delete a scenario
ScenarioConfigurationApi DeleteScenarioList Delete /scenarios Delete all scenarios
ScenarioConfigurationApi GetScenario Get /scenarios/{name} Get a specific scenario
ScenarioConfigurationApi GetScenarioList Get /scenarios Get all scenarios
ScenarioConfigurationApi SetScenario Put /scenarios/{name} Update a scenario

Documentation For Models

Documentation For Authorization

Endpoints do not require authorization.

Author

AdvantEDGE@InterDigital.com

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ContextOAuth2 takes a oauth2.TokenSource as authentication for the request.
	ContextOAuth2 = contextKey("token")

	// ContextBasicAuth takes BasicAuth as authentication for the request.
	ContextBasicAuth = contextKey("basic")

	// ContextAccessToken takes a string oauth2 access token as authentication for the request.
	ContextAccessToken = contextKey("accesstoken")

	// ContextAPIKey takes an APIKey as authentication for the request
	ContextAPIKey = contextKey("apikey")
)

Functions

func CacheExpires

func CacheExpires(r *http.Response) time.Time

CacheExpires helper function to determine remaining time before repeating a request.

Types

type APIClient

type APIClient struct {
	SandboxControlApi *SandboxControlApiService

	ScenarioConfigurationApi *ScenarioConfigurationApiService
	// contains filtered or unexported fields
}

APIClient manages communication with the AdvantEDGE Platform Controller REST API API v1.0.0 In most cases there should be only one, shared, APIClient.

func NewAPIClient

func NewAPIClient(cfg *Configuration) *APIClient

NewAPIClient creates a new API client. Requires a userAgent string describing your application. optionally a custom http.Client to allow for advanced features such as caching.

func (*APIClient) ChangeBasePath

func (c *APIClient) ChangeBasePath(path string)

Change base path to allow switching to mocks

type APIKey

type APIKey struct {
	Key    string
	Prefix string
}

APIKey provides API key based authentication to a request passed via context using ContextAPIKey

type APIResponse

type APIResponse struct {
	*http.Response `json:"-"`
	Message        string `json:"message,omitempty"`
	// Operation is the name of the swagger operation.
	Operation string `json:"operation,omitempty"`
	// RequestURL is the request URL. This value is always available, even if the
	// embedded *http.Response is nil.
	RequestURL string `json:"url,omitempty"`
	// Method is the HTTP method used for the request.  This value is always
	// available, even if the embedded *http.Response is nil.
	Method string `json:"method,omitempty"`
	// Payload holds the contents of the response body (which may be nil or empty).
	// This is provided here as the raw response.Body() reader will have already
	// been drained.
	Payload []byte `json:"-"`
}

func NewAPIResponse

func NewAPIResponse(r *http.Response) *APIResponse

func NewAPIResponseWithError

func NewAPIResponseWithError(errorMessage string) *APIResponse

type BasicAuth

type BasicAuth struct {
	UserName string `json:"userName,omitempty"`
	Password string `json:"password,omitempty"`
}

BasicAuth provides basic http authentication to a request passed via context using ContextBasicAuth

type CellularDomainConfig

type CellularDomainConfig struct {
	// Mobile Network Code part of PLMN identity as defined in ETSI TS 136 413
	Mnc string `json:"mnc,omitempty"`
	// Mobile Country Code part of PLMN identity as defined in ETSI TS 136 413
	Mcc string `json:"mcc,omitempty"`
	// The E-UTRAN Cell Identity as defined in ETSI TS 136 413 if no cellId is defined for the cell or if not applicable
	DefaultCellId string `json:"defaultCellId,omitempty"`
}

Cellular domain configuration information

type CellularPoaConfig

type CellularPoaConfig struct {
	// The E-UTRAN Cell Identity as defined in ETSI TS 136 413 including the ID of the eNB serving the cell
	CellId string `json:"cellId,omitempty"`
}

**DEPRECATED** As of release 1.5.1, renamed to poa4GConfig

type Configuration

type Configuration struct {
	BasePath      string            `json:"basePath,omitempty"`
	Host          string            `json:"host,omitempty"`
	Scheme        string            `json:"scheme,omitempty"`
	DefaultHeader map[string]string `json:"defaultHeader,omitempty"`
	UserAgent     string            `json:"userAgent,omitempty"`
	HTTPClient    *http.Client
}

func NewConfiguration

func NewConfiguration() *Configuration

func (*Configuration) AddDefaultHeader

func (c *Configuration) AddDefaultHeader(key string, value string)

type ConnectivityConfig

type ConnectivityConfig struct {
	// Connectivity Model: <li>OPEN: Any node in the scenario can communicate with any node <li>PDU: Terminal nodes (UE) require a PDU session to the target DN
	Model string `json:"model,omitempty"`
}

type CpuConfig

type CpuConfig struct {
	// Minimum requested CPU
	Min float32 `json:"min,omitempty"`
	// Maximum requested CPU
	Max float32 `json:"max,omitempty"`
}

CPU configuration object

type D2dConfig

type D2dConfig struct {
	// Maximum distance for D2D. Default distance is 100m
	D2dMaxDistance float32 `json:"d2dMaxDistance,omitempty"`
	// Enable-Disable D2D via network. Default value is false
	DisableD2dViaNetwork bool `json:"disableD2dViaNetwork,omitempty"`
}

D2D config

type Deployment

type Deployment struct {
	NetChar      *NetworkCharacteristics `json:"netChar,omitempty"`
	Connectivity *ConnectivityConfig     `json:"connectivity,omitempty"`
	D2d          *D2dConfig              `json:"d2d,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latency
	InterDomainLatency int32 `json:"interDomainLatency,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latencyVariation
	InterDomainLatencyVariation int32 `json:"interDomainLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar throughputUl and throughputDl
	InterDomainThroughput int32 `json:"interDomainThroughput,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar packetLoss
	InterDomainPacketLoss float64 `json:"interDomainPacketLoss,omitempty"`
	// Key/Value Pair Map (string, string)
	Meta map[string]string `json:"meta,omitempty"`
	// Key/Value Pair Map (string, string)
	UserMeta map[string]string `json:"userMeta,omitempty"`
	Domains  []Domain          `json:"domains,omitempty"`
}

Network deployment object

type DnConfig

type DnConfig struct {
	// Data Network Name
	Dnn string `json:"dnn,omitempty"`
	// true: Data network serves local area only false: Data network is not limited to local area
	Ladn bool `json:"ladn,omitempty"`
	// Edge Compute Service Provider
	Ecsp string `json:"ecsp,omitempty"`
}

Data Network Configuration

type Domain

type Domain struct {
	// Unique domain ID
	Id string `json:"id,omitempty"`
	// Domain name
	Name string `json:"name,omitempty"`
	// Domain type
	Type_   string                  `json:"type,omitempty"`
	NetChar *NetworkCharacteristics `json:"netChar,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latency
	InterZoneLatency int32 `json:"interZoneLatency,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latencyVariation
	InterZoneLatencyVariation int32 `json:"interZoneLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar throughputUl and throughputDl
	InterZoneThroughput int32 `json:"interZoneThroughput,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar packetLoss
	InterZonePacketLoss float64 `json:"interZonePacketLoss,omitempty"`
	// Key/Value Pair Map (string, string)
	Meta map[string]string `json:"meta,omitempty"`
	// Key/Value Pair Map (string, string)
	UserMeta             map[string]string     `json:"userMeta,omitempty"`
	CellularDomainConfig *CellularDomainConfig `json:"cellularDomainConfig,omitempty"`
	Zones                []Zone                `json:"zones,omitempty"`
}

Operator domain object

type EgressService

type EgressService struct {
	// Service name
	Name string `json:"name,omitempty"`
	// Multi-Edge service name, if any
	MeSvcName string `json:"meSvcName,omitempty"`
	// External node IP address
	Ip string `json:"ip,omitempty"`
	// Service port number
	Port int32 `json:"port,omitempty"`
	// Service protocol (TCP or UDP)
	Protocol string `json:"protocol,omitempty"`
}

External service exposed internally via specific port

type ExternalConfig

type ExternalConfig struct {
	IngressServiceMap []IngressService `json:"ingressServiceMap,omitempty"`
	EgressServiceMap  []EgressService  `json:"egressServiceMap,omitempty"`
}

External Process configuration. NOTE: Only valid if 'isExternal' is set.

type GenericSwaggerError

type GenericSwaggerError struct {
	// contains filtered or unexported fields
}

GenericSwaggerError Provides access to the body, error and model on returned errors.

func (GenericSwaggerError) Body

func (e GenericSwaggerError) Body() []byte

Body returns the raw bytes of the response

func (GenericSwaggerError) Error

func (e GenericSwaggerError) Error() string

Error returns non-empty string if there was an error.

func (GenericSwaggerError) Model

func (e GenericSwaggerError) Model() interface{}

Model returns the unpacked model of the error

type GeoData

type GeoData struct {
	Location *Point `json:"location,omitempty"`
	// Optional - Radius (in meters) around the location
	Radius float32     `json:"radius,omitempty"`
	Path   *LineString `json:"path,omitempty"`
	// End-of-Path mode: <li>LOOP: When path endpoint is reached, start over from the beginning <li>REVERSE: When path endpoint is reached, return on the reverse path
	EopMode string `json:"eopMode,omitempty"`
	// Speed of movement along path in m/s
	Velocity   float32  `json:"velocity,omitempty"`
	D2dInRange []string `json:"d2dInRange,omitempty"`
	PoaInRange []string `json:"poaInRange,omitempty"`
}

Geographic data

type GpuConfig

type GpuConfig struct {
	// Requested GPU type
	Type_ string `json:"type,omitempty"`
	// Number of GPUs requested
	Count int32 `json:"count,omitempty"`
}

GPU configuration object

type IngressService

type IngressService struct {
	// Service name (unique or multi-edge)
	Name string `json:"name,omitempty"`
	// Internal service port number
	Port int32 `json:"port,omitempty"`
	// Externally-exposed unique service port in range (30000 - 32767)
	ExternalPort int32 `json:"externalPort,omitempty"`
	// Service protocol (TCP or UDP)
	Protocol string `json:"protocol,omitempty"`
}

Internal service exposed externally via specific port

type LineString

type LineString struct {
	// Must be LineString
	Type_ string `json:"type"`
	// For a LineString, coordinates is an array of two or more positions; a position is an array of two decimal numbers (longitude and latitude precisely in that order)
	Coordinates [][]float32 `json:"coordinates,omitempty"`
}

An array of two or more positions in coordinate space (GeoJSON); a position is an array of two numbers

type MemoryConfig

type MemoryConfig struct {
	// Minimum requested memory
	Min int32 `json:"min,omitempty"`
	// Maximum requested memory
	Max int32 `json:"max,omitempty"`
}

Memory configuration object

type NetworkCharacteristics

type NetworkCharacteristics struct {
	// Latency in ms
	Latency int32 `json:"latency,omitempty"`
	// Latency variation in ms
	LatencyVariation int32 `json:"latencyVariation,omitempty"`
	// Latency distribution. Can only be set in the Scenario Deployment network characteristics, ignored otherwise. Latency distribution is set for the whole network and applied to every end-to-end traffic flows. Default value is 'Normal' distribution.
	LatencyDistribution string `json:"latencyDistribution,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by throughputUl and throughputDl
	Throughput int32 `json:"throughput,omitempty"`
	// Downlink throughput limit in Mbps
	ThroughputDl int32 `json:"throughputDl,omitempty"`
	// Uplink throughput limit in Mbps
	ThroughputUl int32 `json:"throughputUl,omitempty"`
	// Packet loss percentage
	PacketLoss float64 `json:"packetLoss,omitempty"`
}

Network characteristics object

type NetworkLocation

type NetworkLocation struct {
	// Unique network location ID
	Id string `json:"id,omitempty"`
	// Network location name
	Name string `json:"name,omitempty"`
	// Network location type
	Type_   string                  `json:"type,omitempty"`
	NetChar *NetworkCharacteristics `json:"netChar,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latency
	TerminalLinkLatency int32 `json:"terminalLinkLatency,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latencyVariation
	TerminalLinkLatencyVariation int32 `json:"terminalLinkLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar throughputUl and throughputDl
	TerminalLinkThroughput int32 `json:"terminalLinkThroughput,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar packetLoss
	TerminalLinkPacketLoss float64 `json:"terminalLinkPacketLoss,omitempty"`
	// Key/Value Pair Map (string, string)
	Meta map[string]string `json:"meta,omitempty"`
	// Key/Value Pair Map (string, string)
	UserMeta          map[string]string  `json:"userMeta,omitempty"`
	CellularPoaConfig *CellularPoaConfig `json:"cellularPoaConfig,omitempty"`
	Poa4GConfig       *Poa4GConfig       `json:"poa4GConfig,omitempty"`
	Poa5GConfig       *Poa5GConfig       `json:"poa5GConfig,omitempty"`
	PoaWifiConfig     *PoaWifiConfig     `json:"poaWifiConfig,omitempty"`
	GeoData           *GeoData           `json:"geoData,omitempty"`
	PhysicalLocations []PhysicalLocation `json:"physicalLocations,omitempty"`
}

Logical network location object

type PhysicalLocation

type PhysicalLocation struct {
	// Unique physical location ID
	Id string `json:"id,omitempty"`
	// Physical location name
	Name string `json:"name,omitempty"`
	// Physical location type
	Type_ string `json:"type,omitempty"`
	// true: Physical location is external to MEEP false: Physical location is internal to MEEP
	IsExternal              bool     `json:"isExternal,omitempty"`
	GeoData                 *GeoData `json:"geoData,omitempty"`
	NetworkLocationsInRange []string `json:"networkLocationsInRange,omitempty"`
	// true: Physical location has network connectivity false: Physical location has no network connectivity
	Connected bool `json:"connected,omitempty"`
	// true: Physical location uses a wireless connection false: Physical location uses a wired connection
	Wireless bool `json:"wireless,omitempty"`
	// Prioritized, comma-separated list of supported wireless connection types. Default priority if not specififed is 'wifi,5g,4g,other'. Wireless connection types: - 4g - 5g - wifi - other
	WirelessType string    `json:"wirelessType,omitempty"`
	DataNetwork  *DnConfig `json:"dataNetwork,omitempty"`
	// Key/Value Pair Map (string, string)
	Meta map[string]string `json:"meta,omitempty"`
	// Key/Value Pair Map (string, string)
	UserMeta  map[string]string       `json:"userMeta,omitempty"`
	Processes []Process               `json:"processes,omitempty"`
	NetChar   *NetworkCharacteristics `json:"netChar,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latency
	LinkLatency int32 `json:"linkLatency,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latencyVariation
	LinkLatencyVariation int32 `json:"linkLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar throughputUl and throughputDl
	LinkThroughput int32 `json:"linkThroughput,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar packetLoss
	LinkPacketLoss float64 `json:"linkPacketLoss,omitempty"`
	// Physical location MAC Address
	MacId string `json:"macId,omitempty"`
}

Physical location object

type Poa4GConfig

type Poa4GConfig struct {
	// The E-UTRAN Cell Identity as defined in ETSI TS 136 413 including the ID of the eNB serving the cell
	CellId string `json:"cellId,omitempty"`
}

Cellular 4G POA configuration information

type Poa5GConfig

type Poa5GConfig struct {
	// The E-UTRAN Cell Identity as defined in ETSI TS 136 413 including the ID of the NR serving the cell
	CellId string `json:"cellId,omitempty"`
}

Cellular 5G POA configuration information

type PoaWifiConfig

type PoaWifiConfig struct {
	// WIFI POA MAC Address
	MacId string `json:"macId,omitempty"`
}

WIFI POA configuration information

type Point

type Point struct {
	// Must be Point
	Type_ string `json:"type"`
	// For a Point, coordinates MUST be an array of two decimal numbers; longitude and latitude precisely in that order
	Coordinates []float32 `json:"coordinates,omitempty"`
}

A single position in coordinate space (GeoJSON); a position is an array of two numbers

type Process

type Process struct {
	// Unique process ID
	Id string `json:"id,omitempty"`
	// Process name
	Name string `json:"name,omitempty"`
	// Process type
	Type_ string `json:"type,omitempty"`
	// true: process is external to MEEP false: process is internal to MEEP
	IsExternal bool `json:"isExternal,omitempty"`
	// Docker image to deploy inside MEEP
	Image string `json:"image,omitempty"`
	// Environment variables using the format NAME=\"value\",NAME=\"value\",NAME=\"value\"
	Environment string `json:"environment,omitempty"`
	// Arguments to command executable
	CommandArguments string `json:"commandArguments,omitempty"`
	// Executable to invoke at container start up
	CommandExe     string          `json:"commandExe,omitempty"`
	ServiceConfig  *ServiceConfig  `json:"serviceConfig,omitempty"`
	GpuConfig      *GpuConfig      `json:"gpuConfig,omitempty"`
	MemoryConfig   *MemoryConfig   `json:"memoryConfig,omitempty"`
	CpuConfig      *CpuConfig      `json:"cpuConfig,omitempty"`
	ExternalConfig *ExternalConfig `json:"externalConfig,omitempty"`
	// Process status
	Status string `json:"status,omitempty"`
	// Chart location for the deployment of the chart provided by the user
	UserChartLocation string `json:"userChartLocation,omitempty"`
	// Chart values.yaml file location for the deployment of the chart provided by the user
	UserChartAlternateValues string `json:"userChartAlternateValues,omitempty"`
	// Chart supplemental information related to the group (service)
	UserChartGroup string `json:"userChartGroup,omitempty"`
	// Key/Value Pair Map (string, string)
	Meta map[string]string `json:"meta,omitempty"`
	// Key/Value Pair Map (string, string)
	UserMeta map[string]string       `json:"userMeta,omitempty"`
	NetChar  *NetworkCharacteristics `json:"netChar,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latency
	AppLatency int32 `json:"appLatency,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar latencyVariation
	AppLatencyVariation int32 `json:"appLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar throughputUl and throughputDl
	AppThroughput int32 `json:"appThroughput,omitempty"`
	// **DEPRECATED** As of release 1.5.0, replaced by netChar packetLoss
	AppPacketLoss float64 `json:"appPacketLoss,omitempty"`
	// Identifier used for process placement in AdvantEDGE cluster
	PlacementId string `json:"placementId,omitempty"`
}

Application or service object

type Sandbox

type Sandbox struct {
	// Sandbox name
	Name string `json:"name,omitempty"`
}

Sandbox object

type SandboxConfig

type SandboxConfig struct {
	// Name of scenario to activate in sandbox
	ScenarioName string `json:"scenarioName,omitempty"`
}

Sandbox configuration object

type SandboxControlApiService

type SandboxControlApiService service

func (*SandboxControlApiService) CreateSandbox

func (a *SandboxControlApiService) CreateSandbox(ctx context.Context, config SandboxConfig) (Sandbox, *http.Response, error)

SandboxControlApiService Create a new sandbox Create a new sandbox with a server-generated name

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param config Sandbox configuration information

@return Sandbox

func (*SandboxControlApiService) CreateSandboxWithName

func (a *SandboxControlApiService) CreateSandboxWithName(ctx context.Context, name string, config SandboxConfig) (*http.Response, error)

SandboxControlApiService Create a new sandbox Create a new sandbox using provided name

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Sandbox name
  • @param config Sandbox configuration information

func (*SandboxControlApiService) DeleteSandbox

func (a *SandboxControlApiService) DeleteSandbox(ctx context.Context, name string) (*http.Response, error)

SandboxControlApiService Delete a specific sandbox Delete the sandbox with the provided name

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Sandbox name

func (*SandboxControlApiService) DeleteSandboxList

func (a *SandboxControlApiService) DeleteSandboxList(ctx context.Context) (*http.Response, error)

SandboxControlApiService Delete all active sandboxes Delete all active sandboxes

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

func (*SandboxControlApiService) GetSandbox

func (a *SandboxControlApiService) GetSandbox(ctx context.Context, name string) (Sandbox, *http.Response, error)

SandboxControlApiService Get a specific sandbox Get sandbox information for provided sandbox name

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Sandbox name

@return Sandbox

func (*SandboxControlApiService) GetSandboxList

SandboxControlApiService Get all active sandboxes Returns a list of all active sandboxes

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return SandboxList

type SandboxList

type SandboxList struct {
	Sandboxes []Sandbox `json:"sandboxes,omitempty"`
}

Sandbox list

type Scenario

type Scenario struct {
	// Scenario version
	Version string `json:"version,omitempty"`
	// Unique scenario ID
	Id string `json:"id,omitempty"`
	// Unique scenario name
	Name string `json:"name,omitempty"`
	// User description of the scenario.
	Description string          `json:"description,omitempty"`
	Config      *ScenarioConfig `json:"config,omitempty"`
	Deployment  *Deployment     `json:"deployment,omitempty"`
}

Scenario object

type ScenarioConfig

type ScenarioConfig struct {
	// Visualization configuration
	Visualization string `json:"visualization,omitempty"`
	// Other scenario configuration
	Other string `json:"other,omitempty"`
}

Scenario configuration

type ScenarioConfigurationApiService

type ScenarioConfigurationApiService service

func (*ScenarioConfigurationApiService) CreateScenario

func (a *ScenarioConfigurationApiService) CreateScenario(ctx context.Context, name string, scenario Scenario) (*http.Response, error)

ScenarioConfigurationApiService Add a scenario Add a scenario to the platform scenario store

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Scenario name
  • @param scenario Scenario

func (*ScenarioConfigurationApiService) DeleteScenario

func (a *ScenarioConfigurationApiService) DeleteScenario(ctx context.Context, name string) (*http.Response, error)

ScenarioConfigurationApiService Delete a scenario Delete a scenario by name from the platform scenario store

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Scenario name

func (*ScenarioConfigurationApiService) DeleteScenarioList

func (a *ScenarioConfigurationApiService) DeleteScenarioList(ctx context.Context) (*http.Response, error)

ScenarioConfigurationApiService Delete all scenarios Delete all scenarios present in the platform scenario store

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

func (*ScenarioConfigurationApiService) GetScenario

ScenarioConfigurationApiService Get a specific scenario Get a scenario by name from the platform scenario store

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Scenario name

@return Scenario

func (*ScenarioConfigurationApiService) GetScenarioList

ScenarioConfigurationApiService Get all scenarios Returns all scenarios from the platform scenario store

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return ScenarioList

func (*ScenarioConfigurationApiService) SetScenario

func (a *ScenarioConfigurationApiService) SetScenario(ctx context.Context, name string, scenario Scenario) (*http.Response, error)

ScenarioConfigurationApiService Update a scenario Update a scenario by name in the platform scenario store

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param name Scenario name
  • @param scenario Scenario to add to MEEP store

type ScenarioList

type ScenarioList struct {
	Scenarios []Scenario `json:"scenarios,omitempty"`
}

Scenario list

type ServiceConfig

type ServiceConfig struct {
	// Unique service name
	Name string `json:"name,omitempty"`
	// Multi-Edge service name, if any
	MeSvcName string        `json:"meSvcName,omitempty"`
	Ports     []ServicePort `json:"ports,omitempty"`
}

Service object

type ServicePort

type ServicePort struct {
	// Protocol that the application is using (TCP or UDP)
	Protocol string `json:"protocol,omitempty"`
	// Port number that the service is listening on
	Port int32 `json:"port,omitempty"`
	// External port number on which to expose the application (30000 - 32767)  <li>Only one application allowed per external port <li>Scenario builder must configure to prevent conflicts
	ExternalPort int32 `json:"externalPort,omitempty"`
}

Service port object

type Zone

type Zone struct {
	// Unique zone ID
	Id string `json:"id,omitempty"`
	// Zone name
	Name string `json:"name,omitempty"`
	// Zone type
	Type_   string                  `json:"type,omitempty"`
	NetChar *NetworkCharacteristics `json:"netChar,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterFogLatency int32 `json:"interFogLatency,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterFogLatencyVariation int32 `json:"interFogLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterFogThroughput int32 `json:"interFogThroughput,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterFogPacketLoss float64 `json:"interFogPacketLoss,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterEdgeLatency int32 `json:"interEdgeLatency,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterEdgeLatencyVariation int32 `json:"interEdgeLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterEdgeThroughput int32 `json:"interEdgeThroughput,omitempty"`
	// **DEPRECATED** As of release 1.3.0, no longer supported
	InterEdgePacketLoss float64 `json:"interEdgePacketLoss,omitempty"`
	// **DEPRECATED** As of release 1.3.0, replaced by netChar latency
	EdgeFogLatency int32 `json:"edgeFogLatency,omitempty"`
	// **DEPRECATED** As of release 1.3.0, replaced by netChar latencyVariation
	EdgeFogLatencyVariation int32 `json:"edgeFogLatencyVariation,omitempty"`
	// **DEPRECATED** As of release 1.3.0, replaced by netChar throughput
	EdgeFogThroughput int32 `json:"edgeFogThroughput,omitempty"`
	// **DEPRECATED** As of release 1.3.0, replaced by netChar packetLoss
	EdgeFogPacketLoss float64 `json:"edgeFogPacketLoss,omitempty"`
	// Key/Value Pair Map (string, string)
	Meta map[string]string `json:"meta,omitempty"`
	// Key/Value Pair Map (string, string)
	UserMeta         map[string]string `json:"userMeta,omitempty"`
	NetworkLocations []NetworkLocation `json:"networkLocations,omitempty"`
}

Logical zone (MEC network) object

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL