1// Copyright (c) 2016, 2018, 2019, Oracle and/or its affiliates. All rights reserved. 2// Code generated. DO NOT EDIT. 3 4// Core Services API 5// 6// API covering the Networking (https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/overview.htm), 7// Compute (https://docs.cloud.oracle.com/iaas/Content/Compute/Concepts/computeoverview.htm), and 8// Block Volume (https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/overview.htm) services. Use this API 9// to manage resources such as virtual cloud networks (VCNs), compute instances, and 10// block storage volumes. 11// 12 13package core 14 15import ( 16 "github.com/oracle/oci-go-sdk/common" 17) 18 19// FastConnectProviderService A service offering from a supported provider. For more information, 20// see FastConnect Overview (https://docs.cloud.oracle.com/Content/Network/Concepts/fastconnect.htm). 21type FastConnectProviderService struct { 22 23 // The OCID of the service offered by the provider. 24 Id *string `mandatory:"true" json:"id"` 25 26 // Who is responsible for managing the private peering BGP information. 27 PrivatePeeringBgpManagement FastConnectProviderServicePrivatePeeringBgpManagementEnum `mandatory:"true" json:"privatePeeringBgpManagement"` 28 29 // The name of the provider. 30 ProviderName *string `mandatory:"true" json:"providerName"` 31 32 // The name of the service offered by the provider. 33 ProviderServiceName *string `mandatory:"true" json:"providerServiceName"` 34 35 // Who is responsible for managing the public peering BGP information. 36 PublicPeeringBgpManagement FastConnectProviderServicePublicPeeringBgpManagementEnum `mandatory:"true" json:"publicPeeringBgpManagement"` 37 38 // Who is responsible for managing the ASN information for the network at the other end 39 // of the connection from Oracle. 40 CustomerAsnManagement FastConnectProviderServiceCustomerAsnManagementEnum `mandatory:"true" json:"customerAsnManagement"` 41 42 // Who is responsible for managing the provider service key. 43 ProviderServiceKeyManagement FastConnectProviderServiceProviderServiceKeyManagementEnum `mandatory:"true" json:"providerServiceKeyManagement"` 44 45 // Who is responsible for managing the virtual circuit bandwidth. 46 BandwithShapeManagement FastConnectProviderServiceBandwithShapeManagementEnum `mandatory:"true" json:"bandwithShapeManagement"` 47 48 // Total number of cross-connect or cross-connect groups required for the virtual circuit. 49 RequiredTotalCrossConnects *int `mandatory:"true" json:"requiredTotalCrossConnects"` 50 51 // Provider service type. 52 Type FastConnectProviderServiceTypeEnum `mandatory:"true" json:"type"` 53 54 // The location of the provider's website or portal. This portal is where you can get information 55 // about the provider service, create a virtual circuit connection from the provider to Oracle 56 // Cloud Infrastructure, and retrieve your provider service key for that virtual circuit connection. 57 // Example: `https://example.com` 58 Description *string `mandatory:"false" json:"description"` 59 60 // An array of virtual circuit types supported by this service. 61 SupportedVirtualCircuitTypes []FastConnectProviderServiceSupportedVirtualCircuitTypesEnum `mandatory:"false" json:"supportedVirtualCircuitTypes,omitempty"` 62} 63 64func (m FastConnectProviderService) String() string { 65 return common.PointerString(m) 66} 67 68// FastConnectProviderServicePrivatePeeringBgpManagementEnum Enum with underlying type: string 69type FastConnectProviderServicePrivatePeeringBgpManagementEnum string 70 71// Set of constants representing the allowable values for FastConnectProviderServicePrivatePeeringBgpManagementEnum 72const ( 73 FastConnectProviderServicePrivatePeeringBgpManagementCustomerManaged FastConnectProviderServicePrivatePeeringBgpManagementEnum = "CUSTOMER_MANAGED" 74 FastConnectProviderServicePrivatePeeringBgpManagementProviderManaged FastConnectProviderServicePrivatePeeringBgpManagementEnum = "PROVIDER_MANAGED" 75 FastConnectProviderServicePrivatePeeringBgpManagementOracleManaged FastConnectProviderServicePrivatePeeringBgpManagementEnum = "ORACLE_MANAGED" 76) 77 78var mappingFastConnectProviderServicePrivatePeeringBgpManagement = map[string]FastConnectProviderServicePrivatePeeringBgpManagementEnum{ 79 "CUSTOMER_MANAGED": FastConnectProviderServicePrivatePeeringBgpManagementCustomerManaged, 80 "PROVIDER_MANAGED": FastConnectProviderServicePrivatePeeringBgpManagementProviderManaged, 81 "ORACLE_MANAGED": FastConnectProviderServicePrivatePeeringBgpManagementOracleManaged, 82} 83 84// GetFastConnectProviderServicePrivatePeeringBgpManagementEnumValues Enumerates the set of values for FastConnectProviderServicePrivatePeeringBgpManagementEnum 85func GetFastConnectProviderServicePrivatePeeringBgpManagementEnumValues() []FastConnectProviderServicePrivatePeeringBgpManagementEnum { 86 values := make([]FastConnectProviderServicePrivatePeeringBgpManagementEnum, 0) 87 for _, v := range mappingFastConnectProviderServicePrivatePeeringBgpManagement { 88 values = append(values, v) 89 } 90 return values 91} 92 93// FastConnectProviderServicePublicPeeringBgpManagementEnum Enum with underlying type: string 94type FastConnectProviderServicePublicPeeringBgpManagementEnum string 95 96// Set of constants representing the allowable values for FastConnectProviderServicePublicPeeringBgpManagementEnum 97const ( 98 FastConnectProviderServicePublicPeeringBgpManagementCustomerManaged FastConnectProviderServicePublicPeeringBgpManagementEnum = "CUSTOMER_MANAGED" 99 FastConnectProviderServicePublicPeeringBgpManagementProviderManaged FastConnectProviderServicePublicPeeringBgpManagementEnum = "PROVIDER_MANAGED" 100 FastConnectProviderServicePublicPeeringBgpManagementOracleManaged FastConnectProviderServicePublicPeeringBgpManagementEnum = "ORACLE_MANAGED" 101) 102 103var mappingFastConnectProviderServicePublicPeeringBgpManagement = map[string]FastConnectProviderServicePublicPeeringBgpManagementEnum{ 104 "CUSTOMER_MANAGED": FastConnectProviderServicePublicPeeringBgpManagementCustomerManaged, 105 "PROVIDER_MANAGED": FastConnectProviderServicePublicPeeringBgpManagementProviderManaged, 106 "ORACLE_MANAGED": FastConnectProviderServicePublicPeeringBgpManagementOracleManaged, 107} 108 109// GetFastConnectProviderServicePublicPeeringBgpManagementEnumValues Enumerates the set of values for FastConnectProviderServicePublicPeeringBgpManagementEnum 110func GetFastConnectProviderServicePublicPeeringBgpManagementEnumValues() []FastConnectProviderServicePublicPeeringBgpManagementEnum { 111 values := make([]FastConnectProviderServicePublicPeeringBgpManagementEnum, 0) 112 for _, v := range mappingFastConnectProviderServicePublicPeeringBgpManagement { 113 values = append(values, v) 114 } 115 return values 116} 117 118// FastConnectProviderServiceSupportedVirtualCircuitTypesEnum Enum with underlying type: string 119type FastConnectProviderServiceSupportedVirtualCircuitTypesEnum string 120 121// Set of constants representing the allowable values for FastConnectProviderServiceSupportedVirtualCircuitTypesEnum 122const ( 123 FastConnectProviderServiceSupportedVirtualCircuitTypesPublic FastConnectProviderServiceSupportedVirtualCircuitTypesEnum = "PUBLIC" 124 FastConnectProviderServiceSupportedVirtualCircuitTypesPrivate FastConnectProviderServiceSupportedVirtualCircuitTypesEnum = "PRIVATE" 125) 126 127var mappingFastConnectProviderServiceSupportedVirtualCircuitTypes = map[string]FastConnectProviderServiceSupportedVirtualCircuitTypesEnum{ 128 "PUBLIC": FastConnectProviderServiceSupportedVirtualCircuitTypesPublic, 129 "PRIVATE": FastConnectProviderServiceSupportedVirtualCircuitTypesPrivate, 130} 131 132// GetFastConnectProviderServiceSupportedVirtualCircuitTypesEnumValues Enumerates the set of values for FastConnectProviderServiceSupportedVirtualCircuitTypesEnum 133func GetFastConnectProviderServiceSupportedVirtualCircuitTypesEnumValues() []FastConnectProviderServiceSupportedVirtualCircuitTypesEnum { 134 values := make([]FastConnectProviderServiceSupportedVirtualCircuitTypesEnum, 0) 135 for _, v := range mappingFastConnectProviderServiceSupportedVirtualCircuitTypes { 136 values = append(values, v) 137 } 138 return values 139} 140 141// FastConnectProviderServiceCustomerAsnManagementEnum Enum with underlying type: string 142type FastConnectProviderServiceCustomerAsnManagementEnum string 143 144// Set of constants representing the allowable values for FastConnectProviderServiceCustomerAsnManagementEnum 145const ( 146 FastConnectProviderServiceCustomerAsnManagementCustomerManaged FastConnectProviderServiceCustomerAsnManagementEnum = "CUSTOMER_MANAGED" 147 FastConnectProviderServiceCustomerAsnManagementProviderManaged FastConnectProviderServiceCustomerAsnManagementEnum = "PROVIDER_MANAGED" 148 FastConnectProviderServiceCustomerAsnManagementOracleManaged FastConnectProviderServiceCustomerAsnManagementEnum = "ORACLE_MANAGED" 149) 150 151var mappingFastConnectProviderServiceCustomerAsnManagement = map[string]FastConnectProviderServiceCustomerAsnManagementEnum{ 152 "CUSTOMER_MANAGED": FastConnectProviderServiceCustomerAsnManagementCustomerManaged, 153 "PROVIDER_MANAGED": FastConnectProviderServiceCustomerAsnManagementProviderManaged, 154 "ORACLE_MANAGED": FastConnectProviderServiceCustomerAsnManagementOracleManaged, 155} 156 157// GetFastConnectProviderServiceCustomerAsnManagementEnumValues Enumerates the set of values for FastConnectProviderServiceCustomerAsnManagementEnum 158func GetFastConnectProviderServiceCustomerAsnManagementEnumValues() []FastConnectProviderServiceCustomerAsnManagementEnum { 159 values := make([]FastConnectProviderServiceCustomerAsnManagementEnum, 0) 160 for _, v := range mappingFastConnectProviderServiceCustomerAsnManagement { 161 values = append(values, v) 162 } 163 return values 164} 165 166// FastConnectProviderServiceProviderServiceKeyManagementEnum Enum with underlying type: string 167type FastConnectProviderServiceProviderServiceKeyManagementEnum string 168 169// Set of constants representing the allowable values for FastConnectProviderServiceProviderServiceKeyManagementEnum 170const ( 171 FastConnectProviderServiceProviderServiceKeyManagementCustomerManaged FastConnectProviderServiceProviderServiceKeyManagementEnum = "CUSTOMER_MANAGED" 172 FastConnectProviderServiceProviderServiceKeyManagementProviderManaged FastConnectProviderServiceProviderServiceKeyManagementEnum = "PROVIDER_MANAGED" 173 FastConnectProviderServiceProviderServiceKeyManagementOracleManaged FastConnectProviderServiceProviderServiceKeyManagementEnum = "ORACLE_MANAGED" 174) 175 176var mappingFastConnectProviderServiceProviderServiceKeyManagement = map[string]FastConnectProviderServiceProviderServiceKeyManagementEnum{ 177 "CUSTOMER_MANAGED": FastConnectProviderServiceProviderServiceKeyManagementCustomerManaged, 178 "PROVIDER_MANAGED": FastConnectProviderServiceProviderServiceKeyManagementProviderManaged, 179 "ORACLE_MANAGED": FastConnectProviderServiceProviderServiceKeyManagementOracleManaged, 180} 181 182// GetFastConnectProviderServiceProviderServiceKeyManagementEnumValues Enumerates the set of values for FastConnectProviderServiceProviderServiceKeyManagementEnum 183func GetFastConnectProviderServiceProviderServiceKeyManagementEnumValues() []FastConnectProviderServiceProviderServiceKeyManagementEnum { 184 values := make([]FastConnectProviderServiceProviderServiceKeyManagementEnum, 0) 185 for _, v := range mappingFastConnectProviderServiceProviderServiceKeyManagement { 186 values = append(values, v) 187 } 188 return values 189} 190 191// FastConnectProviderServiceBandwithShapeManagementEnum Enum with underlying type: string 192type FastConnectProviderServiceBandwithShapeManagementEnum string 193 194// Set of constants representing the allowable values for FastConnectProviderServiceBandwithShapeManagementEnum 195const ( 196 FastConnectProviderServiceBandwithShapeManagementCustomerManaged FastConnectProviderServiceBandwithShapeManagementEnum = "CUSTOMER_MANAGED" 197 FastConnectProviderServiceBandwithShapeManagementProviderManaged FastConnectProviderServiceBandwithShapeManagementEnum = "PROVIDER_MANAGED" 198 FastConnectProviderServiceBandwithShapeManagementOracleManaged FastConnectProviderServiceBandwithShapeManagementEnum = "ORACLE_MANAGED" 199) 200 201var mappingFastConnectProviderServiceBandwithShapeManagement = map[string]FastConnectProviderServiceBandwithShapeManagementEnum{ 202 "CUSTOMER_MANAGED": FastConnectProviderServiceBandwithShapeManagementCustomerManaged, 203 "PROVIDER_MANAGED": FastConnectProviderServiceBandwithShapeManagementProviderManaged, 204 "ORACLE_MANAGED": FastConnectProviderServiceBandwithShapeManagementOracleManaged, 205} 206 207// GetFastConnectProviderServiceBandwithShapeManagementEnumValues Enumerates the set of values for FastConnectProviderServiceBandwithShapeManagementEnum 208func GetFastConnectProviderServiceBandwithShapeManagementEnumValues() []FastConnectProviderServiceBandwithShapeManagementEnum { 209 values := make([]FastConnectProviderServiceBandwithShapeManagementEnum, 0) 210 for _, v := range mappingFastConnectProviderServiceBandwithShapeManagement { 211 values = append(values, v) 212 } 213 return values 214} 215 216// FastConnectProviderServiceTypeEnum Enum with underlying type: string 217type FastConnectProviderServiceTypeEnum string 218 219// Set of constants representing the allowable values for FastConnectProviderServiceTypeEnum 220const ( 221 FastConnectProviderServiceTypeLayer2 FastConnectProviderServiceTypeEnum = "LAYER2" 222 FastConnectProviderServiceTypeLayer3 FastConnectProviderServiceTypeEnum = "LAYER3" 223) 224 225var mappingFastConnectProviderServiceType = map[string]FastConnectProviderServiceTypeEnum{ 226 "LAYER2": FastConnectProviderServiceTypeLayer2, 227 "LAYER3": FastConnectProviderServiceTypeLayer3, 228} 229 230// GetFastConnectProviderServiceTypeEnumValues Enumerates the set of values for FastConnectProviderServiceTypeEnum 231func GetFastConnectProviderServiceTypeEnumValues() []FastConnectProviderServiceTypeEnum { 232 values := make([]FastConnectProviderServiceTypeEnum, 0) 233 for _, v := range mappingFastConnectProviderServiceType { 234 values = append(values, v) 235 } 236 return values 237} 238