github.com/digitalocean/go-netbox@v0.0.2/netbox/models/interface_template.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 // Copyright 2020 The go-netbox Authors. 4 // 5 // Licensed under the Apache License, Version 2.0 (the "License"); 6 // you may not use this file except in compliance with the License. 7 // You may obtain a copy of the License at 8 // 9 // http://www.apache.org/licenses/LICENSE-2.0 10 // 11 // Unless required by applicable law or agreed to in writing, software 12 // distributed under the License is distributed on an "AS IS" BASIS, 13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 // See the License for the specific language governing permissions and 15 // limitations under the License. 16 // 17 18 package models 19 20 // This file was generated by the swagger tool. 21 // Editing this file might prove futile when you re-run the swagger generate command 22 23 import ( 24 "context" 25 "encoding/json" 26 27 "github.com/go-openapi/errors" 28 "github.com/go-openapi/strfmt" 29 "github.com/go-openapi/swag" 30 "github.com/go-openapi/validate" 31 ) 32 33 // InterfaceTemplate interface template 34 // 35 // swagger:model InterfaceTemplate 36 type InterfaceTemplate struct { 37 38 // Created 39 // Read Only: true 40 // Format: date 41 Created strfmt.Date `json:"created,omitempty"` 42 43 // Description 44 // Max Length: 200 45 Description string `json:"description,omitempty"` 46 47 // device type 48 // Required: true 49 DeviceType *NestedDeviceType `json:"device_type"` 50 51 // Display 52 // Read Only: true 53 Display string `json:"display,omitempty"` 54 55 // Id 56 // Read Only: true 57 ID int64 `json:"id,omitempty"` 58 59 // Label 60 // 61 // Physical label 62 // Max Length: 64 63 Label string `json:"label,omitempty"` 64 65 // Last updated 66 // Read Only: true 67 // Format: date-time 68 LastUpdated strfmt.DateTime `json:"last_updated,omitempty"` 69 70 // Management only 71 MgmtOnly bool `json:"mgmt_only,omitempty"` 72 73 // Name 74 // Required: true 75 // Max Length: 64 76 // Min Length: 1 77 Name *string `json:"name"` 78 79 // type 80 // Required: true 81 Type *InterfaceTemplateType `json:"type"` 82 83 // Url 84 // Read Only: true 85 // Format: uri 86 URL strfmt.URI `json:"url,omitempty"` 87 } 88 89 // Validate validates this interface template 90 func (m *InterfaceTemplate) Validate(formats strfmt.Registry) error { 91 var res []error 92 93 if err := m.validateCreated(formats); err != nil { 94 res = append(res, err) 95 } 96 97 if err := m.validateDescription(formats); err != nil { 98 res = append(res, err) 99 } 100 101 if err := m.validateDeviceType(formats); err != nil { 102 res = append(res, err) 103 } 104 105 if err := m.validateLabel(formats); err != nil { 106 res = append(res, err) 107 } 108 109 if err := m.validateLastUpdated(formats); err != nil { 110 res = append(res, err) 111 } 112 113 if err := m.validateName(formats); err != nil { 114 res = append(res, err) 115 } 116 117 if err := m.validateType(formats); err != nil { 118 res = append(res, err) 119 } 120 121 if err := m.validateURL(formats); err != nil { 122 res = append(res, err) 123 } 124 125 if len(res) > 0 { 126 return errors.CompositeValidationError(res...) 127 } 128 return nil 129 } 130 131 func (m *InterfaceTemplate) validateCreated(formats strfmt.Registry) error { 132 if swag.IsZero(m.Created) { // not required 133 return nil 134 } 135 136 if err := validate.FormatOf("created", "body", "date", m.Created.String(), formats); err != nil { 137 return err 138 } 139 140 return nil 141 } 142 143 func (m *InterfaceTemplate) validateDescription(formats strfmt.Registry) error { 144 if swag.IsZero(m.Description) { // not required 145 return nil 146 } 147 148 if err := validate.MaxLength("description", "body", m.Description, 200); err != nil { 149 return err 150 } 151 152 return nil 153 } 154 155 func (m *InterfaceTemplate) validateDeviceType(formats strfmt.Registry) error { 156 157 if err := validate.Required("device_type", "body", m.DeviceType); err != nil { 158 return err 159 } 160 161 if m.DeviceType != nil { 162 if err := m.DeviceType.Validate(formats); err != nil { 163 if ve, ok := err.(*errors.Validation); ok { 164 return ve.ValidateName("device_type") 165 } else if ce, ok := err.(*errors.CompositeError); ok { 166 return ce.ValidateName("device_type") 167 } 168 return err 169 } 170 } 171 172 return nil 173 } 174 175 func (m *InterfaceTemplate) validateLabel(formats strfmt.Registry) error { 176 if swag.IsZero(m.Label) { // not required 177 return nil 178 } 179 180 if err := validate.MaxLength("label", "body", m.Label, 64); err != nil { 181 return err 182 } 183 184 return nil 185 } 186 187 func (m *InterfaceTemplate) validateLastUpdated(formats strfmt.Registry) error { 188 if swag.IsZero(m.LastUpdated) { // not required 189 return nil 190 } 191 192 if err := validate.FormatOf("last_updated", "body", "date-time", m.LastUpdated.String(), formats); err != nil { 193 return err 194 } 195 196 return nil 197 } 198 199 func (m *InterfaceTemplate) validateName(formats strfmt.Registry) error { 200 201 if err := validate.Required("name", "body", m.Name); err != nil { 202 return err 203 } 204 205 if err := validate.MinLength("name", "body", *m.Name, 1); err != nil { 206 return err 207 } 208 209 if err := validate.MaxLength("name", "body", *m.Name, 64); err != nil { 210 return err 211 } 212 213 return nil 214 } 215 216 func (m *InterfaceTemplate) validateType(formats strfmt.Registry) error { 217 218 if err := validate.Required("type", "body", m.Type); err != nil { 219 return err 220 } 221 222 if m.Type != nil { 223 if err := m.Type.Validate(formats); err != nil { 224 if ve, ok := err.(*errors.Validation); ok { 225 return ve.ValidateName("type") 226 } else if ce, ok := err.(*errors.CompositeError); ok { 227 return ce.ValidateName("type") 228 } 229 return err 230 } 231 } 232 233 return nil 234 } 235 236 func (m *InterfaceTemplate) validateURL(formats strfmt.Registry) error { 237 if swag.IsZero(m.URL) { // not required 238 return nil 239 } 240 241 if err := validate.FormatOf("url", "body", "uri", m.URL.String(), formats); err != nil { 242 return err 243 } 244 245 return nil 246 } 247 248 // ContextValidate validate this interface template based on the context it is used 249 func (m *InterfaceTemplate) ContextValidate(ctx context.Context, formats strfmt.Registry) error { 250 var res []error 251 252 if err := m.contextValidateCreated(ctx, formats); err != nil { 253 res = append(res, err) 254 } 255 256 if err := m.contextValidateDeviceType(ctx, formats); err != nil { 257 res = append(res, err) 258 } 259 260 if err := m.contextValidateDisplay(ctx, formats); err != nil { 261 res = append(res, err) 262 } 263 264 if err := m.contextValidateID(ctx, formats); err != nil { 265 res = append(res, err) 266 } 267 268 if err := m.contextValidateLastUpdated(ctx, formats); err != nil { 269 res = append(res, err) 270 } 271 272 if err := m.contextValidateType(ctx, formats); err != nil { 273 res = append(res, err) 274 } 275 276 if err := m.contextValidateURL(ctx, formats); err != nil { 277 res = append(res, err) 278 } 279 280 if len(res) > 0 { 281 return errors.CompositeValidationError(res...) 282 } 283 return nil 284 } 285 286 func (m *InterfaceTemplate) contextValidateCreated(ctx context.Context, formats strfmt.Registry) error { 287 288 if err := validate.ReadOnly(ctx, "created", "body", strfmt.Date(m.Created)); err != nil { 289 return err 290 } 291 292 return nil 293 } 294 295 func (m *InterfaceTemplate) contextValidateDeviceType(ctx context.Context, formats strfmt.Registry) error { 296 297 if m.DeviceType != nil { 298 if err := m.DeviceType.ContextValidate(ctx, formats); err != nil { 299 if ve, ok := err.(*errors.Validation); ok { 300 return ve.ValidateName("device_type") 301 } else if ce, ok := err.(*errors.CompositeError); ok { 302 return ce.ValidateName("device_type") 303 } 304 return err 305 } 306 } 307 308 return nil 309 } 310 311 func (m *InterfaceTemplate) contextValidateDisplay(ctx context.Context, formats strfmt.Registry) error { 312 313 if err := validate.ReadOnly(ctx, "display", "body", string(m.Display)); err != nil { 314 return err 315 } 316 317 return nil 318 } 319 320 func (m *InterfaceTemplate) contextValidateID(ctx context.Context, formats strfmt.Registry) error { 321 322 if err := validate.ReadOnly(ctx, "id", "body", int64(m.ID)); err != nil { 323 return err 324 } 325 326 return nil 327 } 328 329 func (m *InterfaceTemplate) contextValidateLastUpdated(ctx context.Context, formats strfmt.Registry) error { 330 331 if err := validate.ReadOnly(ctx, "last_updated", "body", strfmt.DateTime(m.LastUpdated)); err != nil { 332 return err 333 } 334 335 return nil 336 } 337 338 func (m *InterfaceTemplate) contextValidateType(ctx context.Context, formats strfmt.Registry) error { 339 340 if m.Type != nil { 341 if err := m.Type.ContextValidate(ctx, formats); err != nil { 342 if ve, ok := err.(*errors.Validation); ok { 343 return ve.ValidateName("type") 344 } else if ce, ok := err.(*errors.CompositeError); ok { 345 return ce.ValidateName("type") 346 } 347 return err 348 } 349 } 350 351 return nil 352 } 353 354 func (m *InterfaceTemplate) contextValidateURL(ctx context.Context, formats strfmt.Registry) error { 355 356 if err := validate.ReadOnly(ctx, "url", "body", strfmt.URI(m.URL)); err != nil { 357 return err 358 } 359 360 return nil 361 } 362 363 // MarshalBinary interface implementation 364 func (m *InterfaceTemplate) MarshalBinary() ([]byte, error) { 365 if m == nil { 366 return nil, nil 367 } 368 return swag.WriteJSON(m) 369 } 370 371 // UnmarshalBinary interface implementation 372 func (m *InterfaceTemplate) UnmarshalBinary(b []byte) error { 373 var res InterfaceTemplate 374 if err := swag.ReadJSON(b, &res); err != nil { 375 return err 376 } 377 *m = res 378 return nil 379 } 380 381 // InterfaceTemplateType Type 382 // 383 // swagger:model InterfaceTemplateType 384 type InterfaceTemplateType struct { 385 386 // label 387 // Required: true 388 // Enum: [Virtual Link Aggregation Group (LAG) 100BASE-TX (10/100ME) 1000BASE-T (1GE) 2.5GBASE-T (2.5GE) 5GBASE-T (5GE) 10GBASE-T (10GE) 10GBASE-CX4 (10GE) GBIC (1GE) SFP (1GE) SFP+ (10GE) XFP (10GE) XENPAK (10GE) X2 (10GE) SFP28 (25GE) SFP56 (50GE) QSFP+ (40GE) QSFP28 (50GE) CFP (100GE) CFP2 (100GE) CFP2 (200GE) CFP4 (100GE) Cisco CPAK (100GE) QSFP28 (100GE) QSFP56 (200GE) QSFP-DD (400GE) OSFP (400GE) IEEE 802.11a IEEE 802.11b/g IEEE 802.11n IEEE 802.11ac IEEE 802.11ad IEEE 802.11ax GSM CDMA LTE OC-3/STM-1 OC-12/STM-4 OC-48/STM-16 OC-192/STM-64 OC-768/STM-256 OC-1920/STM-640 OC-3840/STM-1234 SFP (1GFC) SFP (2GFC) SFP (4GFC) SFP+ (8GFC) SFP+ (16GFC) SFP28 (32GFC) QSFP+ (64GFC) QSFP28 (128GFC) SDR (2 Gbps) DDR (4 Gbps) QDR (8 Gbps) FDR10 (10 Gbps) FDR (13.5 Gbps) EDR (25 Gbps) HDR (50 Gbps) NDR (100 Gbps) XDR (250 Gbps) T1 (1.544 Mbps) E1 (2.048 Mbps) T3 (45 Mbps) E3 (34 Mbps) Cisco StackWise Cisco StackWise Plus Cisco FlexStack Cisco FlexStack Plus Juniper VCP Extreme SummitStack Extreme SummitStack-128 Extreme SummitStack-256 Extreme SummitStack-512 Other] 389 Label *string `json:"label"` 390 391 // value 392 // Required: true 393 // Enum: [virtual lag 100base-tx 1000base-t 2.5gbase-t 5gbase-t 10gbase-t 10gbase-cx4 1000base-x-gbic 1000base-x-sfp 10gbase-x-sfpp 10gbase-x-xfp 10gbase-x-xenpak 10gbase-x-x2 25gbase-x-sfp28 50gbase-x-sfp56 40gbase-x-qsfpp 50gbase-x-sfp28 100gbase-x-cfp 100gbase-x-cfp2 200gbase-x-cfp2 100gbase-x-cfp4 100gbase-x-cpak 100gbase-x-qsfp28 200gbase-x-qsfp56 400gbase-x-qsfpdd 400gbase-x-osfp ieee802.11a ieee802.11g ieee802.11n ieee802.11ac ieee802.11ad ieee802.11ax gsm cdma lte sonet-oc3 sonet-oc12 sonet-oc48 sonet-oc192 sonet-oc768 sonet-oc1920 sonet-oc3840 1gfc-sfp 2gfc-sfp 4gfc-sfp 8gfc-sfpp 16gfc-sfpp 32gfc-sfp28 64gfc-qsfpp 128gfc-sfp28 infiniband-sdr infiniband-ddr infiniband-qdr infiniband-fdr10 infiniband-fdr infiniband-edr infiniband-hdr infiniband-ndr infiniband-xdr t1 e1 t3 e3 cisco-stackwise cisco-stackwise-plus cisco-flexstack cisco-flexstack-plus juniper-vcp extreme-summitstack extreme-summitstack-128 extreme-summitstack-256 extreme-summitstack-512 other] 394 Value *string `json:"value"` 395 } 396 397 // Validate validates this interface template type 398 func (m *InterfaceTemplateType) Validate(formats strfmt.Registry) error { 399 var res []error 400 401 if err := m.validateLabel(formats); err != nil { 402 res = append(res, err) 403 } 404 405 if err := m.validateValue(formats); err != nil { 406 res = append(res, err) 407 } 408 409 if len(res) > 0 { 410 return errors.CompositeValidationError(res...) 411 } 412 return nil 413 } 414 415 var interfaceTemplateTypeTypeLabelPropEnum []interface{} 416 417 func init() { 418 var res []string 419 if err := json.Unmarshal([]byte(`["Virtual","Link Aggregation Group (LAG)","100BASE-TX (10/100ME)","1000BASE-T (1GE)","2.5GBASE-T (2.5GE)","5GBASE-T (5GE)","10GBASE-T (10GE)","10GBASE-CX4 (10GE)","GBIC (1GE)","SFP (1GE)","SFP+ (10GE)","XFP (10GE)","XENPAK (10GE)","X2 (10GE)","SFP28 (25GE)","SFP56 (50GE)","QSFP+ (40GE)","QSFP28 (50GE)","CFP (100GE)","CFP2 (100GE)","CFP2 (200GE)","CFP4 (100GE)","Cisco CPAK (100GE)","QSFP28 (100GE)","QSFP56 (200GE)","QSFP-DD (400GE)","OSFP (400GE)","IEEE 802.11a","IEEE 802.11b/g","IEEE 802.11n","IEEE 802.11ac","IEEE 802.11ad","IEEE 802.11ax","GSM","CDMA","LTE","OC-3/STM-1","OC-12/STM-4","OC-48/STM-16","OC-192/STM-64","OC-768/STM-256","OC-1920/STM-640","OC-3840/STM-1234","SFP (1GFC)","SFP (2GFC)","SFP (4GFC)","SFP+ (8GFC)","SFP+ (16GFC)","SFP28 (32GFC)","QSFP+ (64GFC)","QSFP28 (128GFC)","SDR (2 Gbps)","DDR (4 Gbps)","QDR (8 Gbps)","FDR10 (10 Gbps)","FDR (13.5 Gbps)","EDR (25 Gbps)","HDR (50 Gbps)","NDR (100 Gbps)","XDR (250 Gbps)","T1 (1.544 Mbps)","E1 (2.048 Mbps)","T3 (45 Mbps)","E3 (34 Mbps)","Cisco StackWise","Cisco StackWise Plus","Cisco FlexStack","Cisco FlexStack Plus","Juniper VCP","Extreme SummitStack","Extreme SummitStack-128","Extreme SummitStack-256","Extreme SummitStack-512","Other"]`), &res); err != nil { 420 panic(err) 421 } 422 for _, v := range res { 423 interfaceTemplateTypeTypeLabelPropEnum = append(interfaceTemplateTypeTypeLabelPropEnum, v) 424 } 425 } 426 427 const ( 428 429 // InterfaceTemplateTypeLabelVirtual captures enum value "Virtual" 430 InterfaceTemplateTypeLabelVirtual string = "Virtual" 431 432 // InterfaceTemplateTypeLabelLinkAggregationGroupLAG captures enum value "Link Aggregation Group (LAG)" 433 InterfaceTemplateTypeLabelLinkAggregationGroupLAG string = "Link Aggregation Group (LAG)" 434 435 // InterfaceTemplateTypeLabelNr100BASEDashTX10100ME captures enum value "100BASE-TX (10/100ME)" 436 InterfaceTemplateTypeLabelNr100BASEDashTX10100ME string = "100BASE-TX (10/100ME)" 437 438 // InterfaceTemplateTypeLabelNr1000BASEDashT1GE captures enum value "1000BASE-T (1GE)" 439 InterfaceTemplateTypeLabelNr1000BASEDashT1GE string = "1000BASE-T (1GE)" 440 441 // InterfaceTemplateTypeLabelNr2Dot5GBASEDashT2Dot5GE captures enum value "2.5GBASE-T (2.5GE)" 442 InterfaceTemplateTypeLabelNr2Dot5GBASEDashT2Dot5GE string = "2.5GBASE-T (2.5GE)" 443 444 // InterfaceTemplateTypeLabelNr5GBASEDashT5GE captures enum value "5GBASE-T (5GE)" 445 InterfaceTemplateTypeLabelNr5GBASEDashT5GE string = "5GBASE-T (5GE)" 446 447 // InterfaceTemplateTypeLabelNr10GBASEDashT10GE captures enum value "10GBASE-T (10GE)" 448 InterfaceTemplateTypeLabelNr10GBASEDashT10GE string = "10GBASE-T (10GE)" 449 450 // InterfaceTemplateTypeLabelNr10GBASEDashCX410GE captures enum value "10GBASE-CX4 (10GE)" 451 InterfaceTemplateTypeLabelNr10GBASEDashCX410GE string = "10GBASE-CX4 (10GE)" 452 453 // InterfaceTemplateTypeLabelGBIC1GE captures enum value "GBIC (1GE)" 454 InterfaceTemplateTypeLabelGBIC1GE string = "GBIC (1GE)" 455 456 // InterfaceTemplateTypeLabelSFP1GE captures enum value "SFP (1GE)" 457 InterfaceTemplateTypeLabelSFP1GE string = "SFP (1GE)" 458 459 // InterfaceTemplateTypeLabelSFPPlus10GE captures enum value "SFP+ (10GE)" 460 InterfaceTemplateTypeLabelSFPPlus10GE string = "SFP+ (10GE)" 461 462 // InterfaceTemplateTypeLabelXFP10GE captures enum value "XFP (10GE)" 463 InterfaceTemplateTypeLabelXFP10GE string = "XFP (10GE)" 464 465 // InterfaceTemplateTypeLabelXENPAK10GE captures enum value "XENPAK (10GE)" 466 InterfaceTemplateTypeLabelXENPAK10GE string = "XENPAK (10GE)" 467 468 // InterfaceTemplateTypeLabelX210GE captures enum value "X2 (10GE)" 469 InterfaceTemplateTypeLabelX210GE string = "X2 (10GE)" 470 471 // InterfaceTemplateTypeLabelSFP2825GE captures enum value "SFP28 (25GE)" 472 InterfaceTemplateTypeLabelSFP2825GE string = "SFP28 (25GE)" 473 474 // InterfaceTemplateTypeLabelSFP5650GE captures enum value "SFP56 (50GE)" 475 InterfaceTemplateTypeLabelSFP5650GE string = "SFP56 (50GE)" 476 477 // InterfaceTemplateTypeLabelQSFPPlus40GE captures enum value "QSFP+ (40GE)" 478 InterfaceTemplateTypeLabelQSFPPlus40GE string = "QSFP+ (40GE)" 479 480 // InterfaceTemplateTypeLabelQSFP2850GE captures enum value "QSFP28 (50GE)" 481 InterfaceTemplateTypeLabelQSFP2850GE string = "QSFP28 (50GE)" 482 483 // InterfaceTemplateTypeLabelCFP100GE captures enum value "CFP (100GE)" 484 InterfaceTemplateTypeLabelCFP100GE string = "CFP (100GE)" 485 486 // InterfaceTemplateTypeLabelCFP2100GE captures enum value "CFP2 (100GE)" 487 InterfaceTemplateTypeLabelCFP2100GE string = "CFP2 (100GE)" 488 489 // InterfaceTemplateTypeLabelCFP2200GE captures enum value "CFP2 (200GE)" 490 InterfaceTemplateTypeLabelCFP2200GE string = "CFP2 (200GE)" 491 492 // InterfaceTemplateTypeLabelCFP4100GE captures enum value "CFP4 (100GE)" 493 InterfaceTemplateTypeLabelCFP4100GE string = "CFP4 (100GE)" 494 495 // InterfaceTemplateTypeLabelCiscoCPAK100GE captures enum value "Cisco CPAK (100GE)" 496 InterfaceTemplateTypeLabelCiscoCPAK100GE string = "Cisco CPAK (100GE)" 497 498 // InterfaceTemplateTypeLabelQSFP28100GE captures enum value "QSFP28 (100GE)" 499 InterfaceTemplateTypeLabelQSFP28100GE string = "QSFP28 (100GE)" 500 501 // InterfaceTemplateTypeLabelQSFP56200GE captures enum value "QSFP56 (200GE)" 502 InterfaceTemplateTypeLabelQSFP56200GE string = "QSFP56 (200GE)" 503 504 // InterfaceTemplateTypeLabelQSFPDashDD400GE captures enum value "QSFP-DD (400GE)" 505 InterfaceTemplateTypeLabelQSFPDashDD400GE string = "QSFP-DD (400GE)" 506 507 // InterfaceTemplateTypeLabelOSFP400GE captures enum value "OSFP (400GE)" 508 InterfaceTemplateTypeLabelOSFP400GE string = "OSFP (400GE)" 509 510 // InterfaceTemplateTypeLabelIEEE802Dot11a captures enum value "IEEE 802.11a" 511 InterfaceTemplateTypeLabelIEEE802Dot11a string = "IEEE 802.11a" 512 513 // InterfaceTemplateTypeLabelIEEE802Dot11bg captures enum value "IEEE 802.11b/g" 514 InterfaceTemplateTypeLabelIEEE802Dot11bg string = "IEEE 802.11b/g" 515 516 // InterfaceTemplateTypeLabelIEEE802Dot11n captures enum value "IEEE 802.11n" 517 InterfaceTemplateTypeLabelIEEE802Dot11n string = "IEEE 802.11n" 518 519 // InterfaceTemplateTypeLabelIEEE802Dot11ac captures enum value "IEEE 802.11ac" 520 InterfaceTemplateTypeLabelIEEE802Dot11ac string = "IEEE 802.11ac" 521 522 // InterfaceTemplateTypeLabelIEEE802Dot11ad captures enum value "IEEE 802.11ad" 523 InterfaceTemplateTypeLabelIEEE802Dot11ad string = "IEEE 802.11ad" 524 525 // InterfaceTemplateTypeLabelIEEE802Dot11ax captures enum value "IEEE 802.11ax" 526 InterfaceTemplateTypeLabelIEEE802Dot11ax string = "IEEE 802.11ax" 527 528 // InterfaceTemplateTypeLabelGSM captures enum value "GSM" 529 InterfaceTemplateTypeLabelGSM string = "GSM" 530 531 // InterfaceTemplateTypeLabelCDMA captures enum value "CDMA" 532 InterfaceTemplateTypeLabelCDMA string = "CDMA" 533 534 // InterfaceTemplateTypeLabelLTE captures enum value "LTE" 535 InterfaceTemplateTypeLabelLTE string = "LTE" 536 537 // InterfaceTemplateTypeLabelOCDash3STMDash1 captures enum value "OC-3/STM-1" 538 InterfaceTemplateTypeLabelOCDash3STMDash1 string = "OC-3/STM-1" 539 540 // InterfaceTemplateTypeLabelOCDash12STMDash4 captures enum value "OC-12/STM-4" 541 InterfaceTemplateTypeLabelOCDash12STMDash4 string = "OC-12/STM-4" 542 543 // InterfaceTemplateTypeLabelOCDash48STMDash16 captures enum value "OC-48/STM-16" 544 InterfaceTemplateTypeLabelOCDash48STMDash16 string = "OC-48/STM-16" 545 546 // InterfaceTemplateTypeLabelOCDash192STMDash64 captures enum value "OC-192/STM-64" 547 InterfaceTemplateTypeLabelOCDash192STMDash64 string = "OC-192/STM-64" 548 549 // InterfaceTemplateTypeLabelOCDash768STMDash256 captures enum value "OC-768/STM-256" 550 InterfaceTemplateTypeLabelOCDash768STMDash256 string = "OC-768/STM-256" 551 552 // InterfaceTemplateTypeLabelOCDash1920STMDash640 captures enum value "OC-1920/STM-640" 553 InterfaceTemplateTypeLabelOCDash1920STMDash640 string = "OC-1920/STM-640" 554 555 // InterfaceTemplateTypeLabelOCDash3840STMDash1234 captures enum value "OC-3840/STM-1234" 556 InterfaceTemplateTypeLabelOCDash3840STMDash1234 string = "OC-3840/STM-1234" 557 558 // InterfaceTemplateTypeLabelSFP1GFC captures enum value "SFP (1GFC)" 559 InterfaceTemplateTypeLabelSFP1GFC string = "SFP (1GFC)" 560 561 // InterfaceTemplateTypeLabelSFP2GFC captures enum value "SFP (2GFC)" 562 InterfaceTemplateTypeLabelSFP2GFC string = "SFP (2GFC)" 563 564 // InterfaceTemplateTypeLabelSFP4GFC captures enum value "SFP (4GFC)" 565 InterfaceTemplateTypeLabelSFP4GFC string = "SFP (4GFC)" 566 567 // InterfaceTemplateTypeLabelSFPPlus8GFC captures enum value "SFP+ (8GFC)" 568 InterfaceTemplateTypeLabelSFPPlus8GFC string = "SFP+ (8GFC)" 569 570 // InterfaceTemplateTypeLabelSFPPlus16GFC captures enum value "SFP+ (16GFC)" 571 InterfaceTemplateTypeLabelSFPPlus16GFC string = "SFP+ (16GFC)" 572 573 // InterfaceTemplateTypeLabelSFP2832GFC captures enum value "SFP28 (32GFC)" 574 InterfaceTemplateTypeLabelSFP2832GFC string = "SFP28 (32GFC)" 575 576 // InterfaceTemplateTypeLabelQSFPPlus64GFC captures enum value "QSFP+ (64GFC)" 577 InterfaceTemplateTypeLabelQSFPPlus64GFC string = "QSFP+ (64GFC)" 578 579 // InterfaceTemplateTypeLabelQSFP28128GFC captures enum value "QSFP28 (128GFC)" 580 InterfaceTemplateTypeLabelQSFP28128GFC string = "QSFP28 (128GFC)" 581 582 // InterfaceTemplateTypeLabelSDR2Gbps captures enum value "SDR (2 Gbps)" 583 InterfaceTemplateTypeLabelSDR2Gbps string = "SDR (2 Gbps)" 584 585 // InterfaceTemplateTypeLabelDDR4Gbps captures enum value "DDR (4 Gbps)" 586 InterfaceTemplateTypeLabelDDR4Gbps string = "DDR (4 Gbps)" 587 588 // InterfaceTemplateTypeLabelQDR8Gbps captures enum value "QDR (8 Gbps)" 589 InterfaceTemplateTypeLabelQDR8Gbps string = "QDR (8 Gbps)" 590 591 // InterfaceTemplateTypeLabelFDR1010Gbps captures enum value "FDR10 (10 Gbps)" 592 InterfaceTemplateTypeLabelFDR1010Gbps string = "FDR10 (10 Gbps)" 593 594 // InterfaceTemplateTypeLabelFDR13Dot5Gbps captures enum value "FDR (13.5 Gbps)" 595 InterfaceTemplateTypeLabelFDR13Dot5Gbps string = "FDR (13.5 Gbps)" 596 597 // InterfaceTemplateTypeLabelEDR25Gbps captures enum value "EDR (25 Gbps)" 598 InterfaceTemplateTypeLabelEDR25Gbps string = "EDR (25 Gbps)" 599 600 // InterfaceTemplateTypeLabelHDR50Gbps captures enum value "HDR (50 Gbps)" 601 InterfaceTemplateTypeLabelHDR50Gbps string = "HDR (50 Gbps)" 602 603 // InterfaceTemplateTypeLabelNDR100Gbps captures enum value "NDR (100 Gbps)" 604 InterfaceTemplateTypeLabelNDR100Gbps string = "NDR (100 Gbps)" 605 606 // InterfaceTemplateTypeLabelXDR250Gbps captures enum value "XDR (250 Gbps)" 607 InterfaceTemplateTypeLabelXDR250Gbps string = "XDR (250 Gbps)" 608 609 // InterfaceTemplateTypeLabelT11Dot544Mbps captures enum value "T1 (1.544 Mbps)" 610 InterfaceTemplateTypeLabelT11Dot544Mbps string = "T1 (1.544 Mbps)" 611 612 // InterfaceTemplateTypeLabelE12Dot048Mbps captures enum value "E1 (2.048 Mbps)" 613 InterfaceTemplateTypeLabelE12Dot048Mbps string = "E1 (2.048 Mbps)" 614 615 // InterfaceTemplateTypeLabelT345Mbps captures enum value "T3 (45 Mbps)" 616 InterfaceTemplateTypeLabelT345Mbps string = "T3 (45 Mbps)" 617 618 // InterfaceTemplateTypeLabelE334Mbps captures enum value "E3 (34 Mbps)" 619 InterfaceTemplateTypeLabelE334Mbps string = "E3 (34 Mbps)" 620 621 // InterfaceTemplateTypeLabelCiscoStackWise captures enum value "Cisco StackWise" 622 InterfaceTemplateTypeLabelCiscoStackWise string = "Cisco StackWise" 623 624 // InterfaceTemplateTypeLabelCiscoStackWisePlus captures enum value "Cisco StackWise Plus" 625 InterfaceTemplateTypeLabelCiscoStackWisePlus string = "Cisco StackWise Plus" 626 627 // InterfaceTemplateTypeLabelCiscoFlexStack captures enum value "Cisco FlexStack" 628 InterfaceTemplateTypeLabelCiscoFlexStack string = "Cisco FlexStack" 629 630 // InterfaceTemplateTypeLabelCiscoFlexStackPlus captures enum value "Cisco FlexStack Plus" 631 InterfaceTemplateTypeLabelCiscoFlexStackPlus string = "Cisco FlexStack Plus" 632 633 // InterfaceTemplateTypeLabelJuniperVCP captures enum value "Juniper VCP" 634 InterfaceTemplateTypeLabelJuniperVCP string = "Juniper VCP" 635 636 // InterfaceTemplateTypeLabelExtremeSummitStack captures enum value "Extreme SummitStack" 637 InterfaceTemplateTypeLabelExtremeSummitStack string = "Extreme SummitStack" 638 639 // InterfaceTemplateTypeLabelExtremeSummitStackDash128 captures enum value "Extreme SummitStack-128" 640 InterfaceTemplateTypeLabelExtremeSummitStackDash128 string = "Extreme SummitStack-128" 641 642 // InterfaceTemplateTypeLabelExtremeSummitStackDash256 captures enum value "Extreme SummitStack-256" 643 InterfaceTemplateTypeLabelExtremeSummitStackDash256 string = "Extreme SummitStack-256" 644 645 // InterfaceTemplateTypeLabelExtremeSummitStackDash512 captures enum value "Extreme SummitStack-512" 646 InterfaceTemplateTypeLabelExtremeSummitStackDash512 string = "Extreme SummitStack-512" 647 648 // InterfaceTemplateTypeLabelOther captures enum value "Other" 649 InterfaceTemplateTypeLabelOther string = "Other" 650 ) 651 652 // prop value enum 653 func (m *InterfaceTemplateType) validateLabelEnum(path, location string, value string) error { 654 if err := validate.EnumCase(path, location, value, interfaceTemplateTypeTypeLabelPropEnum, true); err != nil { 655 return err 656 } 657 return nil 658 } 659 660 func (m *InterfaceTemplateType) validateLabel(formats strfmt.Registry) error { 661 662 if err := validate.Required("type"+"."+"label", "body", m.Label); err != nil { 663 return err 664 } 665 666 // value enum 667 if err := m.validateLabelEnum("type"+"."+"label", "body", *m.Label); err != nil { 668 return err 669 } 670 671 return nil 672 } 673 674 var interfaceTemplateTypeTypeValuePropEnum []interface{} 675 676 func init() { 677 var res []string 678 if err := json.Unmarshal([]byte(`["virtual","lag","100base-tx","1000base-t","2.5gbase-t","5gbase-t","10gbase-t","10gbase-cx4","1000base-x-gbic","1000base-x-sfp","10gbase-x-sfpp","10gbase-x-xfp","10gbase-x-xenpak","10gbase-x-x2","25gbase-x-sfp28","50gbase-x-sfp56","40gbase-x-qsfpp","50gbase-x-sfp28","100gbase-x-cfp","100gbase-x-cfp2","200gbase-x-cfp2","100gbase-x-cfp4","100gbase-x-cpak","100gbase-x-qsfp28","200gbase-x-qsfp56","400gbase-x-qsfpdd","400gbase-x-osfp","ieee802.11a","ieee802.11g","ieee802.11n","ieee802.11ac","ieee802.11ad","ieee802.11ax","gsm","cdma","lte","sonet-oc3","sonet-oc12","sonet-oc48","sonet-oc192","sonet-oc768","sonet-oc1920","sonet-oc3840","1gfc-sfp","2gfc-sfp","4gfc-sfp","8gfc-sfpp","16gfc-sfpp","32gfc-sfp28","64gfc-qsfpp","128gfc-sfp28","infiniband-sdr","infiniband-ddr","infiniband-qdr","infiniband-fdr10","infiniband-fdr","infiniband-edr","infiniband-hdr","infiniband-ndr","infiniband-xdr","t1","e1","t3","e3","cisco-stackwise","cisco-stackwise-plus","cisco-flexstack","cisco-flexstack-plus","juniper-vcp","extreme-summitstack","extreme-summitstack-128","extreme-summitstack-256","extreme-summitstack-512","other"]`), &res); err != nil { 679 panic(err) 680 } 681 for _, v := range res { 682 interfaceTemplateTypeTypeValuePropEnum = append(interfaceTemplateTypeTypeValuePropEnum, v) 683 } 684 } 685 686 const ( 687 688 // InterfaceTemplateTypeValueVirtual captures enum value "virtual" 689 InterfaceTemplateTypeValueVirtual string = "virtual" 690 691 // InterfaceTemplateTypeValueLag captures enum value "lag" 692 InterfaceTemplateTypeValueLag string = "lag" 693 694 // InterfaceTemplateTypeValueNr100baseDashTx captures enum value "100base-tx" 695 InterfaceTemplateTypeValueNr100baseDashTx string = "100base-tx" 696 697 // InterfaceTemplateTypeValueNr1000baseDasht captures enum value "1000base-t" 698 InterfaceTemplateTypeValueNr1000baseDasht string = "1000base-t" 699 700 // InterfaceTemplateTypeValueNr2Dot5gbaseDasht captures enum value "2.5gbase-t" 701 InterfaceTemplateTypeValueNr2Dot5gbaseDasht string = "2.5gbase-t" 702 703 // InterfaceTemplateTypeValueNr5gbaseDasht captures enum value "5gbase-t" 704 InterfaceTemplateTypeValueNr5gbaseDasht string = "5gbase-t" 705 706 // InterfaceTemplateTypeValueNr10gbaseDasht captures enum value "10gbase-t" 707 InterfaceTemplateTypeValueNr10gbaseDasht string = "10gbase-t" 708 709 // InterfaceTemplateTypeValueNr10gbaseDashCx4 captures enum value "10gbase-cx4" 710 InterfaceTemplateTypeValueNr10gbaseDashCx4 string = "10gbase-cx4" 711 712 // InterfaceTemplateTypeValueNr1000baseDashxDashGbic captures enum value "1000base-x-gbic" 713 InterfaceTemplateTypeValueNr1000baseDashxDashGbic string = "1000base-x-gbic" 714 715 // InterfaceTemplateTypeValueNr1000baseDashxDashSfp captures enum value "1000base-x-sfp" 716 InterfaceTemplateTypeValueNr1000baseDashxDashSfp string = "1000base-x-sfp" 717 718 // InterfaceTemplateTypeValueNr10gbaseDashxDashSfpp captures enum value "10gbase-x-sfpp" 719 InterfaceTemplateTypeValueNr10gbaseDashxDashSfpp string = "10gbase-x-sfpp" 720 721 // InterfaceTemplateTypeValueNr10gbaseDashxDashXfp captures enum value "10gbase-x-xfp" 722 InterfaceTemplateTypeValueNr10gbaseDashxDashXfp string = "10gbase-x-xfp" 723 724 // InterfaceTemplateTypeValueNr10gbaseDashxDashXenpak captures enum value "10gbase-x-xenpak" 725 InterfaceTemplateTypeValueNr10gbaseDashxDashXenpak string = "10gbase-x-xenpak" 726 727 // InterfaceTemplateTypeValueNr10gbaseDashxDashX2 captures enum value "10gbase-x-x2" 728 InterfaceTemplateTypeValueNr10gbaseDashxDashX2 string = "10gbase-x-x2" 729 730 // InterfaceTemplateTypeValueNr25gbaseDashxDashSfp28 captures enum value "25gbase-x-sfp28" 731 InterfaceTemplateTypeValueNr25gbaseDashxDashSfp28 string = "25gbase-x-sfp28" 732 733 // InterfaceTemplateTypeValueNr50gbaseDashxDashSfp56 captures enum value "50gbase-x-sfp56" 734 InterfaceTemplateTypeValueNr50gbaseDashxDashSfp56 string = "50gbase-x-sfp56" 735 736 // InterfaceTemplateTypeValueNr40gbaseDashxDashQsfpp captures enum value "40gbase-x-qsfpp" 737 InterfaceTemplateTypeValueNr40gbaseDashxDashQsfpp string = "40gbase-x-qsfpp" 738 739 // InterfaceTemplateTypeValueNr50gbaseDashxDashSfp28 captures enum value "50gbase-x-sfp28" 740 InterfaceTemplateTypeValueNr50gbaseDashxDashSfp28 string = "50gbase-x-sfp28" 741 742 // InterfaceTemplateTypeValueNr100gbaseDashxDashCfp captures enum value "100gbase-x-cfp" 743 InterfaceTemplateTypeValueNr100gbaseDashxDashCfp string = "100gbase-x-cfp" 744 745 // InterfaceTemplateTypeValueNr100gbaseDashxDashCfp2 captures enum value "100gbase-x-cfp2" 746 InterfaceTemplateTypeValueNr100gbaseDashxDashCfp2 string = "100gbase-x-cfp2" 747 748 // InterfaceTemplateTypeValueNr200gbaseDashxDashCfp2 captures enum value "200gbase-x-cfp2" 749 InterfaceTemplateTypeValueNr200gbaseDashxDashCfp2 string = "200gbase-x-cfp2" 750 751 // InterfaceTemplateTypeValueNr100gbaseDashxDashCfp4 captures enum value "100gbase-x-cfp4" 752 InterfaceTemplateTypeValueNr100gbaseDashxDashCfp4 string = "100gbase-x-cfp4" 753 754 // InterfaceTemplateTypeValueNr100gbaseDashxDashCpak captures enum value "100gbase-x-cpak" 755 InterfaceTemplateTypeValueNr100gbaseDashxDashCpak string = "100gbase-x-cpak" 756 757 // InterfaceTemplateTypeValueNr100gbaseDashxDashQsfp28 captures enum value "100gbase-x-qsfp28" 758 InterfaceTemplateTypeValueNr100gbaseDashxDashQsfp28 string = "100gbase-x-qsfp28" 759 760 // InterfaceTemplateTypeValueNr200gbaseDashxDashQsfp56 captures enum value "200gbase-x-qsfp56" 761 InterfaceTemplateTypeValueNr200gbaseDashxDashQsfp56 string = "200gbase-x-qsfp56" 762 763 // InterfaceTemplateTypeValueNr400gbaseDashxDashQsfpdd captures enum value "400gbase-x-qsfpdd" 764 InterfaceTemplateTypeValueNr400gbaseDashxDashQsfpdd string = "400gbase-x-qsfpdd" 765 766 // InterfaceTemplateTypeValueNr400gbaseDashxDashOsfp captures enum value "400gbase-x-osfp" 767 InterfaceTemplateTypeValueNr400gbaseDashxDashOsfp string = "400gbase-x-osfp" 768 769 // InterfaceTemplateTypeValueIeee802Dot11a captures enum value "ieee802.11a" 770 InterfaceTemplateTypeValueIeee802Dot11a string = "ieee802.11a" 771 772 // InterfaceTemplateTypeValueIeee802Dot11g captures enum value "ieee802.11g" 773 InterfaceTemplateTypeValueIeee802Dot11g string = "ieee802.11g" 774 775 // InterfaceTemplateTypeValueIeee802Dot11n captures enum value "ieee802.11n" 776 InterfaceTemplateTypeValueIeee802Dot11n string = "ieee802.11n" 777 778 // InterfaceTemplateTypeValueIeee802Dot11ac captures enum value "ieee802.11ac" 779 InterfaceTemplateTypeValueIeee802Dot11ac string = "ieee802.11ac" 780 781 // InterfaceTemplateTypeValueIeee802Dot11ad captures enum value "ieee802.11ad" 782 InterfaceTemplateTypeValueIeee802Dot11ad string = "ieee802.11ad" 783 784 // InterfaceTemplateTypeValueIeee802Dot11ax captures enum value "ieee802.11ax" 785 InterfaceTemplateTypeValueIeee802Dot11ax string = "ieee802.11ax" 786 787 // InterfaceTemplateTypeValueGsm captures enum value "gsm" 788 InterfaceTemplateTypeValueGsm string = "gsm" 789 790 // InterfaceTemplateTypeValueCdma captures enum value "cdma" 791 InterfaceTemplateTypeValueCdma string = "cdma" 792 793 // InterfaceTemplateTypeValueLte captures enum value "lte" 794 InterfaceTemplateTypeValueLte string = "lte" 795 796 // InterfaceTemplateTypeValueSonetDashOc3 captures enum value "sonet-oc3" 797 InterfaceTemplateTypeValueSonetDashOc3 string = "sonet-oc3" 798 799 // InterfaceTemplateTypeValueSonetDashOc12 captures enum value "sonet-oc12" 800 InterfaceTemplateTypeValueSonetDashOc12 string = "sonet-oc12" 801 802 // InterfaceTemplateTypeValueSonetDashOc48 captures enum value "sonet-oc48" 803 InterfaceTemplateTypeValueSonetDashOc48 string = "sonet-oc48" 804 805 // InterfaceTemplateTypeValueSonetDashOc192 captures enum value "sonet-oc192" 806 InterfaceTemplateTypeValueSonetDashOc192 string = "sonet-oc192" 807 808 // InterfaceTemplateTypeValueSonetDashOc768 captures enum value "sonet-oc768" 809 InterfaceTemplateTypeValueSonetDashOc768 string = "sonet-oc768" 810 811 // InterfaceTemplateTypeValueSonetDashOc1920 captures enum value "sonet-oc1920" 812 InterfaceTemplateTypeValueSonetDashOc1920 string = "sonet-oc1920" 813 814 // InterfaceTemplateTypeValueSonetDashOc3840 captures enum value "sonet-oc3840" 815 InterfaceTemplateTypeValueSonetDashOc3840 string = "sonet-oc3840" 816 817 // InterfaceTemplateTypeValueNr1gfcDashSfp captures enum value "1gfc-sfp" 818 InterfaceTemplateTypeValueNr1gfcDashSfp string = "1gfc-sfp" 819 820 // InterfaceTemplateTypeValueNr2gfcDashSfp captures enum value "2gfc-sfp" 821 InterfaceTemplateTypeValueNr2gfcDashSfp string = "2gfc-sfp" 822 823 // InterfaceTemplateTypeValueNr4gfcDashSfp captures enum value "4gfc-sfp" 824 InterfaceTemplateTypeValueNr4gfcDashSfp string = "4gfc-sfp" 825 826 // InterfaceTemplateTypeValueNr8gfcDashSfpp captures enum value "8gfc-sfpp" 827 InterfaceTemplateTypeValueNr8gfcDashSfpp string = "8gfc-sfpp" 828 829 // InterfaceTemplateTypeValueNr16gfcDashSfpp captures enum value "16gfc-sfpp" 830 InterfaceTemplateTypeValueNr16gfcDashSfpp string = "16gfc-sfpp" 831 832 // InterfaceTemplateTypeValueNr32gfcDashSfp28 captures enum value "32gfc-sfp28" 833 InterfaceTemplateTypeValueNr32gfcDashSfp28 string = "32gfc-sfp28" 834 835 // InterfaceTemplateTypeValueNr64gfcDashQsfpp captures enum value "64gfc-qsfpp" 836 InterfaceTemplateTypeValueNr64gfcDashQsfpp string = "64gfc-qsfpp" 837 838 // InterfaceTemplateTypeValueNr128gfcDashSfp28 captures enum value "128gfc-sfp28" 839 InterfaceTemplateTypeValueNr128gfcDashSfp28 string = "128gfc-sfp28" 840 841 // InterfaceTemplateTypeValueInfinibandDashSdr captures enum value "infiniband-sdr" 842 InterfaceTemplateTypeValueInfinibandDashSdr string = "infiniband-sdr" 843 844 // InterfaceTemplateTypeValueInfinibandDashDdr captures enum value "infiniband-ddr" 845 InterfaceTemplateTypeValueInfinibandDashDdr string = "infiniband-ddr" 846 847 // InterfaceTemplateTypeValueInfinibandDashQdr captures enum value "infiniband-qdr" 848 InterfaceTemplateTypeValueInfinibandDashQdr string = "infiniband-qdr" 849 850 // InterfaceTemplateTypeValueInfinibandDashFdr10 captures enum value "infiniband-fdr10" 851 InterfaceTemplateTypeValueInfinibandDashFdr10 string = "infiniband-fdr10" 852 853 // InterfaceTemplateTypeValueInfinibandDashFdr captures enum value "infiniband-fdr" 854 InterfaceTemplateTypeValueInfinibandDashFdr string = "infiniband-fdr" 855 856 // InterfaceTemplateTypeValueInfinibandDashEdr captures enum value "infiniband-edr" 857 InterfaceTemplateTypeValueInfinibandDashEdr string = "infiniband-edr" 858 859 // InterfaceTemplateTypeValueInfinibandDashHdr captures enum value "infiniband-hdr" 860 InterfaceTemplateTypeValueInfinibandDashHdr string = "infiniband-hdr" 861 862 // InterfaceTemplateTypeValueInfinibandDashNdr captures enum value "infiniband-ndr" 863 InterfaceTemplateTypeValueInfinibandDashNdr string = "infiniband-ndr" 864 865 // InterfaceTemplateTypeValueInfinibandDashXdr captures enum value "infiniband-xdr" 866 InterfaceTemplateTypeValueInfinibandDashXdr string = "infiniband-xdr" 867 868 // InterfaceTemplateTypeValueT1 captures enum value "t1" 869 InterfaceTemplateTypeValueT1 string = "t1" 870 871 // InterfaceTemplateTypeValueE1 captures enum value "e1" 872 InterfaceTemplateTypeValueE1 string = "e1" 873 874 // InterfaceTemplateTypeValueT3 captures enum value "t3" 875 InterfaceTemplateTypeValueT3 string = "t3" 876 877 // InterfaceTemplateTypeValueE3 captures enum value "e3" 878 InterfaceTemplateTypeValueE3 string = "e3" 879 880 // InterfaceTemplateTypeValueCiscoDashStackwise captures enum value "cisco-stackwise" 881 InterfaceTemplateTypeValueCiscoDashStackwise string = "cisco-stackwise" 882 883 // InterfaceTemplateTypeValueCiscoDashStackwiseDashPlus captures enum value "cisco-stackwise-plus" 884 InterfaceTemplateTypeValueCiscoDashStackwiseDashPlus string = "cisco-stackwise-plus" 885 886 // InterfaceTemplateTypeValueCiscoDashFlexstack captures enum value "cisco-flexstack" 887 InterfaceTemplateTypeValueCiscoDashFlexstack string = "cisco-flexstack" 888 889 // InterfaceTemplateTypeValueCiscoDashFlexstackDashPlus captures enum value "cisco-flexstack-plus" 890 InterfaceTemplateTypeValueCiscoDashFlexstackDashPlus string = "cisco-flexstack-plus" 891 892 // InterfaceTemplateTypeValueJuniperDashVcp captures enum value "juniper-vcp" 893 InterfaceTemplateTypeValueJuniperDashVcp string = "juniper-vcp" 894 895 // InterfaceTemplateTypeValueExtremeDashSummitstack captures enum value "extreme-summitstack" 896 InterfaceTemplateTypeValueExtremeDashSummitstack string = "extreme-summitstack" 897 898 // InterfaceTemplateTypeValueExtremeDashSummitstackDash128 captures enum value "extreme-summitstack-128" 899 InterfaceTemplateTypeValueExtremeDashSummitstackDash128 string = "extreme-summitstack-128" 900 901 // InterfaceTemplateTypeValueExtremeDashSummitstackDash256 captures enum value "extreme-summitstack-256" 902 InterfaceTemplateTypeValueExtremeDashSummitstackDash256 string = "extreme-summitstack-256" 903 904 // InterfaceTemplateTypeValueExtremeDashSummitstackDash512 captures enum value "extreme-summitstack-512" 905 InterfaceTemplateTypeValueExtremeDashSummitstackDash512 string = "extreme-summitstack-512" 906 907 // InterfaceTemplateTypeValueOther captures enum value "other" 908 InterfaceTemplateTypeValueOther string = "other" 909 ) 910 911 // prop value enum 912 func (m *InterfaceTemplateType) validateValueEnum(path, location string, value string) error { 913 if err := validate.EnumCase(path, location, value, interfaceTemplateTypeTypeValuePropEnum, true); err != nil { 914 return err 915 } 916 return nil 917 } 918 919 func (m *InterfaceTemplateType) validateValue(formats strfmt.Registry) error { 920 921 if err := validate.Required("type"+"."+"value", "body", m.Value); err != nil { 922 return err 923 } 924 925 // value enum 926 if err := m.validateValueEnum("type"+"."+"value", "body", *m.Value); err != nil { 927 return err 928 } 929 930 return nil 931 } 932 933 // ContextValidate validates this interface template type based on context it is used 934 func (m *InterfaceTemplateType) ContextValidate(ctx context.Context, formats strfmt.Registry) error { 935 return nil 936 } 937 938 // MarshalBinary interface implementation 939 func (m *InterfaceTemplateType) MarshalBinary() ([]byte, error) { 940 if m == nil { 941 return nil, nil 942 } 943 return swag.WriteJSON(m) 944 } 945 946 // UnmarshalBinary interface implementation 947 func (m *InterfaceTemplateType) UnmarshalBinary(b []byte) error { 948 var res InterfaceTemplateType 949 if err := swag.ReadJSON(b, &res); err != nil { 950 return err 951 } 952 *m = res 953 return nil 954 }