onlinedeployment

package
v0.20230815.1145621 Latest Latest
Warning

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

Go to latest
Published: Aug 15, 2023 License: MPL-2.0 Imports: 13 Imported by: 0

README

github.com/hashicorp/go-azure-sdk/resource-manager/machinelearningservices/2022-05-01/onlinedeployment Documentation

The onlinedeployment SDK allows for interaction with the Azure Resource Manager Service machinelearningservices (API Version 2022-05-01).

This readme covers example usages, but further information on using this SDK can be found in the project root.

Import Path

import "github.com/hashicorp/go-azure-sdk/resource-manager/machinelearningservices/2022-05-01/onlinedeployment"

Client Initialization

client := onlinedeployment.NewOnlineDeploymentClientWithBaseURI("https://management.azure.com")
client.Client.Authorizer = authorizer

Example Usage: OnlineDeploymentClient.CreateOrUpdate

ctx := context.TODO()
id := onlinedeployment.NewOnlineEndpointDeploymentID("12345678-1234-9876-4563-123456789012", "example-resource-group", "workspaceValue", "onlineEndpointValue", "deploymentValue")

payload := onlinedeployment.OnlineDeploymentTrackedResource{
	// ...
}


if err := client.CreateOrUpdateThenPoll(ctx, id, payload); err != nil {
	// handle the error
}

Example Usage: OnlineDeploymentClient.Delete

ctx := context.TODO()
id := onlinedeployment.NewOnlineEndpointDeploymentID("12345678-1234-9876-4563-123456789012", "example-resource-group", "workspaceValue", "onlineEndpointValue", "deploymentValue")

if err := client.DeleteThenPoll(ctx, id); err != nil {
	// handle the error
}

Example Usage: OnlineDeploymentClient.Get

ctx := context.TODO()
id := onlinedeployment.NewOnlineEndpointDeploymentID("12345678-1234-9876-4563-123456789012", "example-resource-group", "workspaceValue", "onlineEndpointValue", "deploymentValue")

read, err := client.Get(ctx, id)
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Example Usage: OnlineDeploymentClient.GetLogs

ctx := context.TODO()
id := onlinedeployment.NewOnlineEndpointDeploymentID("12345678-1234-9876-4563-123456789012", "example-resource-group", "workspaceValue", "onlineEndpointValue", "deploymentValue")

payload := onlinedeployment.DeploymentLogsRequest{
	// ...
}


read, err := client.GetLogs(ctx, id, payload)
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Example Usage: OnlineDeploymentClient.List

ctx := context.TODO()
id := onlinedeployment.NewOnlineEndpointID("12345678-1234-9876-4563-123456789012", "example-resource-group", "workspaceValue", "onlineEndpointValue")

// alternatively `client.List(ctx, id, onlinedeployment.DefaultListOperationOptions())` can be used to do batched pagination
items, err := client.ListComplete(ctx, id, onlinedeployment.DefaultListOperationOptions())
if err != nil {
	// handle the error
}
for _, item := range items {
	// do something
}

Example Usage: OnlineDeploymentClient.ListSkus

ctx := context.TODO()
id := onlinedeployment.NewOnlineEndpointDeploymentID("12345678-1234-9876-4563-123456789012", "example-resource-group", "workspaceValue", "onlineEndpointValue", "deploymentValue")

// alternatively `client.ListSkus(ctx, id, onlinedeployment.DefaultListSkusOperationOptions())` can be used to do batched pagination
items, err := client.ListSkusComplete(ctx, id, onlinedeployment.DefaultListSkusOperationOptions())
if err != nil {
	// handle the error
}
for _, item := range items {
	// do something
}

Example Usage: OnlineDeploymentClient.Update

ctx := context.TODO()
id := onlinedeployment.NewOnlineEndpointDeploymentID("12345678-1234-9876-4563-123456789012", "example-resource-group", "workspaceValue", "onlineEndpointValue", "deploymentValue")

payload := onlinedeployment.PartialMinimalTrackedResourceWithSku{
	// ...
}


if err := client.UpdateThenPoll(ctx, id, payload); err != nil {
	// handle the error
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PossibleValuesForContainerType

func PossibleValuesForContainerType() []string

func PossibleValuesForDeploymentProvisioningState

func PossibleValuesForDeploymentProvisioningState() []string

func PossibleValuesForEndpointComputeType

func PossibleValuesForEndpointComputeType() []string

func PossibleValuesForScaleType

func PossibleValuesForScaleType() []string

func PossibleValuesForSkuScaleType

func PossibleValuesForSkuScaleType() []string

func PossibleValuesForSkuTier

func PossibleValuesForSkuTier() []string

func ValidateOnlineEndpointDeploymentID

func ValidateOnlineEndpointDeploymentID(input interface{}, key string) (warnings []string, errors []error)

ValidateOnlineEndpointDeploymentID checks that 'input' can be parsed as a Online Endpoint Deployment ID

func ValidateOnlineEndpointID

func ValidateOnlineEndpointID(input interface{}, key string) (warnings []string, errors []error)

ValidateOnlineEndpointID checks that 'input' can be parsed as a Online Endpoint ID

Types

type CodeConfiguration

type CodeConfiguration struct {
	CodeId        *string `json:"codeId,omitempty"`
	ScoringScript string  `json:"scoringScript"`
}

type ContainerResourceRequirements

type ContainerResourceRequirements struct {
	ContainerResourceLimits   *ContainerResourceSettings `json:"containerResourceLimits,omitempty"`
	ContainerResourceRequests *ContainerResourceSettings `json:"containerResourceRequests,omitempty"`
}

type ContainerResourceSettings

type ContainerResourceSettings struct {
	Cpu    *string `json:"cpu,omitempty"`
	Gpu    *string `json:"gpu,omitempty"`
	Memory *string `json:"memory,omitempty"`
}

type ContainerType

type ContainerType string
const (
	ContainerTypeInferenceServer    ContainerType = "InferenceServer"
	ContainerTypeStorageInitializer ContainerType = "StorageInitializer"
)

func (*ContainerType) UnmarshalJSON added in v0.20230713.1092427

func (s *ContainerType) UnmarshalJSON(bytes []byte) error

type CreateOrUpdateOperationResponse

type CreateOrUpdateOperationResponse struct {
	Poller       pollers.Poller
	HttpResponse *http.Response
	OData        *odata.OData
}

type DefaultScaleSettings

type DefaultScaleSettings struct {
}

func (DefaultScaleSettings) MarshalJSON

func (s DefaultScaleSettings) MarshalJSON() ([]byte, error)

type DeleteOperationResponse

type DeleteOperationResponse struct {
	Poller       pollers.Poller
	HttpResponse *http.Response
	OData        *odata.OData
}

type DeploymentLogs

type DeploymentLogs struct {
	Content *string `json:"content,omitempty"`
}

type DeploymentLogsRequest

type DeploymentLogsRequest struct {
	ContainerType *ContainerType `json:"containerType,omitempty"`
	Tail          *int64         `json:"tail,omitempty"`
}

type DeploymentProvisioningState

type DeploymentProvisioningState string
const (
	DeploymentProvisioningStateCanceled  DeploymentProvisioningState = "Canceled"
	DeploymentProvisioningStateCreating  DeploymentProvisioningState = "Creating"
	DeploymentProvisioningStateDeleting  DeploymentProvisioningState = "Deleting"
	DeploymentProvisioningStateFailed    DeploymentProvisioningState = "Failed"
	DeploymentProvisioningStateScaling   DeploymentProvisioningState = "Scaling"
	DeploymentProvisioningStateSucceeded DeploymentProvisioningState = "Succeeded"
	DeploymentProvisioningStateUpdating  DeploymentProvisioningState = "Updating"
)

func (*DeploymentProvisioningState) UnmarshalJSON added in v0.20230713.1092427

func (s *DeploymentProvisioningState) UnmarshalJSON(bytes []byte) error

type EndpointComputeType

type EndpointComputeType string
const (
	EndpointComputeTypeAzureMLCompute EndpointComputeType = "AzureMLCompute"
	EndpointComputeTypeKubernetes     EndpointComputeType = "Kubernetes"
	EndpointComputeTypeManaged        EndpointComputeType = "Managed"
)

func (*EndpointComputeType) UnmarshalJSON added in v0.20230713.1092427

func (s *EndpointComputeType) UnmarshalJSON(bytes []byte) error

type GetLogsOperationResponse

type GetLogsOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *DeploymentLogs
}

type GetOperationResponse

type GetOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *OnlineDeploymentTrackedResource
}

type KubernetesOnlineDeployment

type KubernetesOnlineDeployment struct {
	ContainerResourceRequirements *ContainerResourceRequirements `json:"containerResourceRequirements,omitempty"`

	// Fields inherited from OnlineDeployment
	AppInsightsEnabled   *bool                        `json:"appInsightsEnabled,omitempty"`
	CodeConfiguration    *CodeConfiguration           `json:"codeConfiguration,omitempty"`
	Description          *string                      `json:"description,omitempty"`
	EnvironmentId        *string                      `json:"environmentId,omitempty"`
	EnvironmentVariables *map[string]string           `json:"environmentVariables,omitempty"`
	InstanceType         *string                      `json:"instanceType,omitempty"`
	LivenessProbe        *ProbeSettings               `json:"livenessProbe,omitempty"`
	Model                *string                      `json:"model,omitempty"`
	ModelMountPath       *string                      `json:"modelMountPath,omitempty"`
	Properties           *map[string]string           `json:"properties,omitempty"`
	ProvisioningState    *DeploymentProvisioningState `json:"provisioningState,omitempty"`
	ReadinessProbe       *ProbeSettings               `json:"readinessProbe,omitempty"`
	RequestSettings      *OnlineRequestSettings       `json:"requestSettings,omitempty"`
	ScaleSettings        OnlineScaleSettings          `json:"scaleSettings"`
}

func (KubernetesOnlineDeployment) MarshalJSON

func (s KubernetesOnlineDeployment) MarshalJSON() ([]byte, error)

func (*KubernetesOnlineDeployment) UnmarshalJSON added in v0.20220704.1074157

func (s *KubernetesOnlineDeployment) UnmarshalJSON(bytes []byte) error

type ListCompleteResult

type ListCompleteResult struct {
	Items []OnlineDeploymentTrackedResource
}

type ListOperationOptions

type ListOperationOptions struct {
	OrderBy *string
	Skip    *string
	Top     *int64
}

func DefaultListOperationOptions

func DefaultListOperationOptions() ListOperationOptions

func (ListOperationOptions) ToHeaders added in v0.20230713.1092427

func (o ListOperationOptions) ToHeaders() *client.Headers

func (ListOperationOptions) ToOData added in v0.20230713.1092427

func (o ListOperationOptions) ToOData() *odata.Query

func (ListOperationOptions) ToQuery added in v0.20230713.1092427

type ListOperationResponse

type ListOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *[]OnlineDeploymentTrackedResource
}

type ListSkusCompleteResult

type ListSkusCompleteResult struct {
	Items []SkuResource
}

type ListSkusOperationOptions

type ListSkusOperationOptions struct {
	Count *int64
	Skip  *string
}

func DefaultListSkusOperationOptions

func DefaultListSkusOperationOptions() ListSkusOperationOptions

func (ListSkusOperationOptions) ToHeaders added in v0.20230713.1092427

func (o ListSkusOperationOptions) ToHeaders() *client.Headers

func (ListSkusOperationOptions) ToOData added in v0.20230713.1092427

func (o ListSkusOperationOptions) ToOData() *odata.Query

func (ListSkusOperationOptions) ToQuery added in v0.20230713.1092427

type ListSkusOperationResponse

type ListSkusOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *[]SkuResource
}

type ManagedOnlineDeployment

type ManagedOnlineDeployment struct {

	// Fields inherited from OnlineDeployment
	AppInsightsEnabled   *bool                        `json:"appInsightsEnabled,omitempty"`
	CodeConfiguration    *CodeConfiguration           `json:"codeConfiguration,omitempty"`
	Description          *string                      `json:"description,omitempty"`
	EnvironmentId        *string                      `json:"environmentId,omitempty"`
	EnvironmentVariables *map[string]string           `json:"environmentVariables,omitempty"`
	InstanceType         *string                      `json:"instanceType,omitempty"`
	LivenessProbe        *ProbeSettings               `json:"livenessProbe,omitempty"`
	Model                *string                      `json:"model,omitempty"`
	ModelMountPath       *string                      `json:"modelMountPath,omitempty"`
	Properties           *map[string]string           `json:"properties,omitempty"`
	ProvisioningState    *DeploymentProvisioningState `json:"provisioningState,omitempty"`
	ReadinessProbe       *ProbeSettings               `json:"readinessProbe,omitempty"`
	RequestSettings      *OnlineRequestSettings       `json:"requestSettings,omitempty"`
	ScaleSettings        OnlineScaleSettings          `json:"scaleSettings"`
}

func (ManagedOnlineDeployment) MarshalJSON

func (s ManagedOnlineDeployment) MarshalJSON() ([]byte, error)

func (*ManagedOnlineDeployment) UnmarshalJSON added in v0.20220704.1074157

func (s *ManagedOnlineDeployment) UnmarshalJSON(bytes []byte) error

type OnlineDeployment

type OnlineDeployment interface {
}

type OnlineDeploymentClient

type OnlineDeploymentClient struct {
	Client *resourcemanager.Client
}

func NewOnlineDeploymentClientWithBaseURI

func NewOnlineDeploymentClientWithBaseURI(sdkApi sdkEnv.Api) (*OnlineDeploymentClient, error)

func (OnlineDeploymentClient) CreateOrUpdate

CreateOrUpdate ...

func (OnlineDeploymentClient) CreateOrUpdateThenPoll

CreateOrUpdateThenPoll performs CreateOrUpdate then polls until it's completed

func (OnlineDeploymentClient) Delete

Delete ...

func (OnlineDeploymentClient) DeleteThenPoll

DeleteThenPoll performs Delete then polls until it's completed

func (OnlineDeploymentClient) Get

Get ...

func (OnlineDeploymentClient) GetLogs

GetLogs ...

func (OnlineDeploymentClient) List

List ...

func (OnlineDeploymentClient) ListComplete

ListComplete retrieves all the results into a single object

func (OnlineDeploymentClient) ListCompleteMatchingPredicate

ListCompleteMatchingPredicate retrieves all the results and then applies the predicate

func (OnlineDeploymentClient) ListSkus

ListSkus ...

func (OnlineDeploymentClient) ListSkusComplete

ListSkusComplete retrieves all the results into a single object

func (OnlineDeploymentClient) ListSkusCompleteMatchingPredicate

func (c OnlineDeploymentClient) ListSkusCompleteMatchingPredicate(ctx context.Context, id OnlineEndpointDeploymentId, options ListSkusOperationOptions, predicate SkuResourceOperationPredicate) (result ListSkusCompleteResult, err error)

ListSkusCompleteMatchingPredicate retrieves all the results and then applies the predicate

func (OnlineDeploymentClient) Update

Update ...

func (OnlineDeploymentClient) UpdateThenPoll

UpdateThenPoll performs Update then polls until it's completed

type OnlineDeploymentTrackedResource

type OnlineDeploymentTrackedResource struct {
	Id         *string                                  `json:"id,omitempty"`
	Identity   *identity.LegacySystemAndUserAssignedMap `json:"identity,omitempty"`
	Kind       *string                                  `json:"kind,omitempty"`
	Location   string                                   `json:"location"`
	Name       *string                                  `json:"name,omitempty"`
	Properties OnlineDeployment                         `json:"properties"`
	Sku        *Sku                                     `json:"sku,omitempty"`
	SystemData *systemdata.SystemData                   `json:"systemData,omitempty"`
	Tags       *map[string]string                       `json:"tags,omitempty"`
	Type       *string                                  `json:"type,omitempty"`
}

func (*OnlineDeploymentTrackedResource) UnmarshalJSON

func (s *OnlineDeploymentTrackedResource) UnmarshalJSON(bytes []byte) error

type OnlineDeploymentTrackedResourceOperationPredicate

type OnlineDeploymentTrackedResourceOperationPredicate struct {
	Id       *string
	Kind     *string
	Location *string
	Name     *string
	Type     *string
}

func (OnlineDeploymentTrackedResourceOperationPredicate) Matches

type OnlineEndpointDeploymentId

type OnlineEndpointDeploymentId struct {
	SubscriptionId     string
	ResourceGroupName  string
	WorkspaceName      string
	OnlineEndpointName string
	DeploymentName     string
}

OnlineEndpointDeploymentId is a struct representing the Resource ID for a Online Endpoint Deployment

func NewOnlineEndpointDeploymentID

func NewOnlineEndpointDeploymentID(subscriptionId string, resourceGroupName string, workspaceName string, onlineEndpointName string, deploymentName string) OnlineEndpointDeploymentId

NewOnlineEndpointDeploymentID returns a new OnlineEndpointDeploymentId struct

func ParseOnlineEndpointDeploymentID

func ParseOnlineEndpointDeploymentID(input string) (*OnlineEndpointDeploymentId, error)

ParseOnlineEndpointDeploymentID parses 'input' into a OnlineEndpointDeploymentId

func ParseOnlineEndpointDeploymentIDInsensitively

func ParseOnlineEndpointDeploymentIDInsensitively(input string) (*OnlineEndpointDeploymentId, error)

ParseOnlineEndpointDeploymentIDInsensitively parses 'input' case-insensitively into a OnlineEndpointDeploymentId note: this method should only be used for API response data and not user input

func (OnlineEndpointDeploymentId) ID

ID returns the formatted Online Endpoint Deployment ID

func (OnlineEndpointDeploymentId) Segments

Segments returns a slice of Resource ID Segments which comprise this Online Endpoint Deployment ID

func (OnlineEndpointDeploymentId) String

func (id OnlineEndpointDeploymentId) String() string

String returns a human-readable description of this Online Endpoint Deployment ID

type OnlineEndpointId

type OnlineEndpointId struct {
	SubscriptionId     string
	ResourceGroupName  string
	WorkspaceName      string
	OnlineEndpointName string
}

OnlineEndpointId is a struct representing the Resource ID for a Online Endpoint

func NewOnlineEndpointID

func NewOnlineEndpointID(subscriptionId string, resourceGroupName string, workspaceName string, onlineEndpointName string) OnlineEndpointId

NewOnlineEndpointID returns a new OnlineEndpointId struct

func ParseOnlineEndpointID

func ParseOnlineEndpointID(input string) (*OnlineEndpointId, error)

ParseOnlineEndpointID parses 'input' into a OnlineEndpointId

func ParseOnlineEndpointIDInsensitively

func ParseOnlineEndpointIDInsensitively(input string) (*OnlineEndpointId, error)

ParseOnlineEndpointIDInsensitively parses 'input' case-insensitively into a OnlineEndpointId note: this method should only be used for API response data and not user input

func (OnlineEndpointId) ID

func (id OnlineEndpointId) ID() string

ID returns the formatted Online Endpoint ID

func (OnlineEndpointId) Segments

func (id OnlineEndpointId) Segments() []resourceids.Segment

Segments returns a slice of Resource ID Segments which comprise this Online Endpoint ID

func (OnlineEndpointId) String

func (id OnlineEndpointId) String() string

String returns a human-readable description of this Online Endpoint ID

type OnlineRequestSettings

type OnlineRequestSettings struct {
	MaxConcurrentRequestsPerInstance *int64  `json:"maxConcurrentRequestsPerInstance,omitempty"`
	MaxQueueWait                     *string `json:"maxQueueWait,omitempty"`
	RequestTimeout                   *string `json:"requestTimeout,omitempty"`
}

type OnlineScaleSettings

type OnlineScaleSettings interface {
}

type PartialMinimalTrackedResourceWithSku

type PartialMinimalTrackedResourceWithSku struct {
	Sku  *PartialSku        `json:"sku,omitempty"`
	Tags *map[string]string `json:"tags,omitempty"`
}

type PartialSku

type PartialSku struct {
	Capacity *int64   `json:"capacity,omitempty"`
	Family   *string  `json:"family,omitempty"`
	Name     *string  `json:"name,omitempty"`
	Size     *string  `json:"size,omitempty"`
	Tier     *SkuTier `json:"tier,omitempty"`
}

type ProbeSettings

type ProbeSettings struct {
	FailureThreshold *int64  `json:"failureThreshold,omitempty"`
	InitialDelay     *string `json:"initialDelay,omitempty"`
	Period           *string `json:"period,omitempty"`
	SuccessThreshold *int64  `json:"successThreshold,omitempty"`
	Timeout          *string `json:"timeout,omitempty"`
}

type RawOnlineDeploymentImpl added in v0.20230807.1063129

type RawOnlineDeploymentImpl struct {
	Type   string
	Values map[string]interface{}
}

RawModeOfTransitImpl is returned when the Discriminated Value doesn't match any of the defined types NOTE: this should only be used when a type isn't defined for this type of Object (as a workaround) and is used only for Deserialization (e.g. this cannot be used as a Request Payload).

type RawOnlineScaleSettingsImpl added in v0.20230807.1063129

type RawOnlineScaleSettingsImpl struct {
	Type   string
	Values map[string]interface{}
}

RawModeOfTransitImpl is returned when the Discriminated Value doesn't match any of the defined types NOTE: this should only be used when a type isn't defined for this type of Object (as a workaround) and is used only for Deserialization (e.g. this cannot be used as a Request Payload).

type ScaleType

type ScaleType string
const (
	ScaleTypeDefault           ScaleType = "Default"
	ScaleTypeTargetUtilization ScaleType = "TargetUtilization"
)

func (*ScaleType) UnmarshalJSON added in v0.20230713.1092427

func (s *ScaleType) UnmarshalJSON(bytes []byte) error

type Sku

type Sku struct {
	Capacity *int64   `json:"capacity,omitempty"`
	Family   *string  `json:"family,omitempty"`
	Name     string   `json:"name"`
	Size     *string  `json:"size,omitempty"`
	Tier     *SkuTier `json:"tier,omitempty"`
}

type SkuCapacity

type SkuCapacity struct {
	Default   *int64        `json:"default,omitempty"`
	Maximum   *int64        `json:"maximum,omitempty"`
	Minimum   *int64        `json:"minimum,omitempty"`
	ScaleType *SkuScaleType `json:"scaleType,omitempty"`
}

type SkuResource

type SkuResource struct {
	Capacity     *SkuCapacity `json:"capacity,omitempty"`
	ResourceType *string      `json:"resourceType,omitempty"`
	Sku          *SkuSetting  `json:"sku,omitempty"`
}

type SkuResourceOperationPredicate

type SkuResourceOperationPredicate struct {
	ResourceType *string
}

func (SkuResourceOperationPredicate) Matches

type SkuScaleType

type SkuScaleType string
const (
	SkuScaleTypeAutomatic SkuScaleType = "Automatic"
	SkuScaleTypeManual    SkuScaleType = "Manual"
	SkuScaleTypeNone      SkuScaleType = "None"
)

func (*SkuScaleType) UnmarshalJSON added in v0.20230713.1092427

func (s *SkuScaleType) UnmarshalJSON(bytes []byte) error

type SkuSetting

type SkuSetting struct {
	Name string   `json:"name"`
	Tier *SkuTier `json:"tier,omitempty"`
}

type SkuTier

type SkuTier string
const (
	SkuTierBasic    SkuTier = "Basic"
	SkuTierFree     SkuTier = "Free"
	SkuTierPremium  SkuTier = "Premium"
	SkuTierStandard SkuTier = "Standard"
)

func (*SkuTier) UnmarshalJSON added in v0.20230713.1092427

func (s *SkuTier) UnmarshalJSON(bytes []byte) error

type TargetUtilizationScaleSettings

type TargetUtilizationScaleSettings struct {
	MaxInstances                *int64  `json:"maxInstances,omitempty"`
	MinInstances                *int64  `json:"minInstances,omitempty"`
	PollingInterval             *string `json:"pollingInterval,omitempty"`
	TargetUtilizationPercentage *int64  `json:"targetUtilizationPercentage,omitempty"`
}

func (TargetUtilizationScaleSettings) MarshalJSON

func (s TargetUtilizationScaleSettings) MarshalJSON() ([]byte, error)

type UpdateOperationResponse

type UpdateOperationResponse struct {
	Poller       pollers.Poller
	HttpResponse *http.Response
	OData        *odata.OData
}

Jump to

Keyboard shortcuts

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