github.com/digitalocean/go-netbox@v0.0.2/netbox/models/writable_rear_port.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 "strconv" 27 28 "github.com/go-openapi/errors" 29 "github.com/go-openapi/strfmt" 30 "github.com/go-openapi/swag" 31 "github.com/go-openapi/validate" 32 ) 33 34 // WritableRearPort writable rear port 35 // 36 // swagger:model WritableRearPort 37 type WritableRearPort struct { 38 39 // occupied 40 // Read Only: true 41 Occupied *bool `json:"_occupied,omitempty"` 42 43 // cable 44 Cable *NestedCable `json:"cable,omitempty"` 45 46 // Cable peer 47 // 48 // 49 // Return the appropriate serializer for the cable termination model. 50 // 51 // Read Only: true 52 CablePeer map[string]*string `json:"cable_peer,omitempty"` 53 54 // Cable peer type 55 // Read Only: true 56 CablePeerType string `json:"cable_peer_type,omitempty"` 57 58 // Created 59 // Read Only: true 60 // Format: date 61 Created strfmt.Date `json:"created,omitempty"` 62 63 // Custom fields 64 CustomFields interface{} `json:"custom_fields,omitempty"` 65 66 // Description 67 // Max Length: 200 68 Description string `json:"description,omitempty"` 69 70 // Device 71 // Required: true 72 Device *int64 `json:"device"` 73 74 // Display 75 // Read Only: true 76 Display string `json:"display,omitempty"` 77 78 // Id 79 // Read Only: true 80 ID int64 `json:"id,omitempty"` 81 82 // Label 83 // 84 // Physical label 85 // Max Length: 64 86 Label string `json:"label,omitempty"` 87 88 // Last updated 89 // Read Only: true 90 // Format: date-time 91 LastUpdated strfmt.DateTime `json:"last_updated,omitempty"` 92 93 // Mark connected 94 // 95 // Treat as if a cable is connected 96 MarkConnected bool `json:"mark_connected,omitempty"` 97 98 // Name 99 // Required: true 100 // Max Length: 64 101 // Min Length: 1 102 Name *string `json:"name"` 103 104 // Positions 105 // Maximum: 1024 106 // Minimum: 1 107 Positions int64 `json:"positions,omitempty"` 108 109 // tags 110 Tags []*NestedTag `json:"tags"` 111 112 // Type 113 // Required: true 114 // Enum: [8p8c 8p6c 8p4c 8p2c 6p6c 6p4c 6p2c 4p4c 4p2c gg45 tera-4p tera-2p tera-1p 110-punch bnc f n mrj21 fc lc lc-apc lsh lsh-apc mpo mtrj sc sc-apc st cs sn splice] 115 Type *string `json:"type"` 116 117 // Url 118 // Read Only: true 119 // Format: uri 120 URL strfmt.URI `json:"url,omitempty"` 121 } 122 123 // Validate validates this writable rear port 124 func (m *WritableRearPort) Validate(formats strfmt.Registry) error { 125 var res []error 126 127 if err := m.validateCable(formats); err != nil { 128 res = append(res, err) 129 } 130 131 if err := m.validateCreated(formats); err != nil { 132 res = append(res, err) 133 } 134 135 if err := m.validateDescription(formats); err != nil { 136 res = append(res, err) 137 } 138 139 if err := m.validateDevice(formats); err != nil { 140 res = append(res, err) 141 } 142 143 if err := m.validateLabel(formats); err != nil { 144 res = append(res, err) 145 } 146 147 if err := m.validateLastUpdated(formats); err != nil { 148 res = append(res, err) 149 } 150 151 if err := m.validateName(formats); err != nil { 152 res = append(res, err) 153 } 154 155 if err := m.validatePositions(formats); err != nil { 156 res = append(res, err) 157 } 158 159 if err := m.validateTags(formats); err != nil { 160 res = append(res, err) 161 } 162 163 if err := m.validateType(formats); err != nil { 164 res = append(res, err) 165 } 166 167 if err := m.validateURL(formats); err != nil { 168 res = append(res, err) 169 } 170 171 if len(res) > 0 { 172 return errors.CompositeValidationError(res...) 173 } 174 return nil 175 } 176 177 func (m *WritableRearPort) validateCable(formats strfmt.Registry) error { 178 if swag.IsZero(m.Cable) { // not required 179 return nil 180 } 181 182 if m.Cable != nil { 183 if err := m.Cable.Validate(formats); err != nil { 184 if ve, ok := err.(*errors.Validation); ok { 185 return ve.ValidateName("cable") 186 } else if ce, ok := err.(*errors.CompositeError); ok { 187 return ce.ValidateName("cable") 188 } 189 return err 190 } 191 } 192 193 return nil 194 } 195 196 func (m *WritableRearPort) validateCreated(formats strfmt.Registry) error { 197 if swag.IsZero(m.Created) { // not required 198 return nil 199 } 200 201 if err := validate.FormatOf("created", "body", "date", m.Created.String(), formats); err != nil { 202 return err 203 } 204 205 return nil 206 } 207 208 func (m *WritableRearPort) validateDescription(formats strfmt.Registry) error { 209 if swag.IsZero(m.Description) { // not required 210 return nil 211 } 212 213 if err := validate.MaxLength("description", "body", m.Description, 200); err != nil { 214 return err 215 } 216 217 return nil 218 } 219 220 func (m *WritableRearPort) validateDevice(formats strfmt.Registry) error { 221 222 if err := validate.Required("device", "body", m.Device); err != nil { 223 return err 224 } 225 226 return nil 227 } 228 229 func (m *WritableRearPort) validateLabel(formats strfmt.Registry) error { 230 if swag.IsZero(m.Label) { // not required 231 return nil 232 } 233 234 if err := validate.MaxLength("label", "body", m.Label, 64); err != nil { 235 return err 236 } 237 238 return nil 239 } 240 241 func (m *WritableRearPort) validateLastUpdated(formats strfmt.Registry) error { 242 if swag.IsZero(m.LastUpdated) { // not required 243 return nil 244 } 245 246 if err := validate.FormatOf("last_updated", "body", "date-time", m.LastUpdated.String(), formats); err != nil { 247 return err 248 } 249 250 return nil 251 } 252 253 func (m *WritableRearPort) validateName(formats strfmt.Registry) error { 254 255 if err := validate.Required("name", "body", m.Name); err != nil { 256 return err 257 } 258 259 if err := validate.MinLength("name", "body", *m.Name, 1); err != nil { 260 return err 261 } 262 263 if err := validate.MaxLength("name", "body", *m.Name, 64); err != nil { 264 return err 265 } 266 267 return nil 268 } 269 270 func (m *WritableRearPort) validatePositions(formats strfmt.Registry) error { 271 if swag.IsZero(m.Positions) { // not required 272 return nil 273 } 274 275 if err := validate.MinimumInt("positions", "body", m.Positions, 1, false); err != nil { 276 return err 277 } 278 279 if err := validate.MaximumInt("positions", "body", m.Positions, 1024, false); err != nil { 280 return err 281 } 282 283 return nil 284 } 285 286 func (m *WritableRearPort) validateTags(formats strfmt.Registry) error { 287 if swag.IsZero(m.Tags) { // not required 288 return nil 289 } 290 291 for i := 0; i < len(m.Tags); i++ { 292 if swag.IsZero(m.Tags[i]) { // not required 293 continue 294 } 295 296 if m.Tags[i] != nil { 297 if err := m.Tags[i].Validate(formats); err != nil { 298 if ve, ok := err.(*errors.Validation); ok { 299 return ve.ValidateName("tags" + "." + strconv.Itoa(i)) 300 } else if ce, ok := err.(*errors.CompositeError); ok { 301 return ce.ValidateName("tags" + "." + strconv.Itoa(i)) 302 } 303 return err 304 } 305 } 306 307 } 308 309 return nil 310 } 311 312 var writableRearPortTypeTypePropEnum []interface{} 313 314 func init() { 315 var res []string 316 if err := json.Unmarshal([]byte(`["8p8c","8p6c","8p4c","8p2c","6p6c","6p4c","6p2c","4p4c","4p2c","gg45","tera-4p","tera-2p","tera-1p","110-punch","bnc","f","n","mrj21","fc","lc","lc-apc","lsh","lsh-apc","mpo","mtrj","sc","sc-apc","st","cs","sn","splice"]`), &res); err != nil { 317 panic(err) 318 } 319 for _, v := range res { 320 writableRearPortTypeTypePropEnum = append(writableRearPortTypeTypePropEnum, v) 321 } 322 } 323 324 const ( 325 326 // WritableRearPortTypeNr8p8c captures enum value "8p8c" 327 WritableRearPortTypeNr8p8c string = "8p8c" 328 329 // WritableRearPortTypeNr8p6c captures enum value "8p6c" 330 WritableRearPortTypeNr8p6c string = "8p6c" 331 332 // WritableRearPortTypeNr8p4c captures enum value "8p4c" 333 WritableRearPortTypeNr8p4c string = "8p4c" 334 335 // WritableRearPortTypeNr8p2c captures enum value "8p2c" 336 WritableRearPortTypeNr8p2c string = "8p2c" 337 338 // WritableRearPortTypeNr6p6c captures enum value "6p6c" 339 WritableRearPortTypeNr6p6c string = "6p6c" 340 341 // WritableRearPortTypeNr6p4c captures enum value "6p4c" 342 WritableRearPortTypeNr6p4c string = "6p4c" 343 344 // WritableRearPortTypeNr6p2c captures enum value "6p2c" 345 WritableRearPortTypeNr6p2c string = "6p2c" 346 347 // WritableRearPortTypeNr4p4c captures enum value "4p4c" 348 WritableRearPortTypeNr4p4c string = "4p4c" 349 350 // WritableRearPortTypeNr4p2c captures enum value "4p2c" 351 WritableRearPortTypeNr4p2c string = "4p2c" 352 353 // WritableRearPortTypeGg45 captures enum value "gg45" 354 WritableRearPortTypeGg45 string = "gg45" 355 356 // WritableRearPortTypeTeraDash4p captures enum value "tera-4p" 357 WritableRearPortTypeTeraDash4p string = "tera-4p" 358 359 // WritableRearPortTypeTeraDash2p captures enum value "tera-2p" 360 WritableRearPortTypeTeraDash2p string = "tera-2p" 361 362 // WritableRearPortTypeTeraDash1p captures enum value "tera-1p" 363 WritableRearPortTypeTeraDash1p string = "tera-1p" 364 365 // WritableRearPortTypeNr110DashPunch captures enum value "110-punch" 366 WritableRearPortTypeNr110DashPunch string = "110-punch" 367 368 // WritableRearPortTypeBnc captures enum value "bnc" 369 WritableRearPortTypeBnc string = "bnc" 370 371 // WritableRearPortTypeF captures enum value "f" 372 WritableRearPortTypeF string = "f" 373 374 // WritableRearPortTypeN captures enum value "n" 375 WritableRearPortTypeN string = "n" 376 377 // WritableRearPortTypeMrj21 captures enum value "mrj21" 378 WritableRearPortTypeMrj21 string = "mrj21" 379 380 // WritableRearPortTypeFc captures enum value "fc" 381 WritableRearPortTypeFc string = "fc" 382 383 // WritableRearPortTypeLc captures enum value "lc" 384 WritableRearPortTypeLc string = "lc" 385 386 // WritableRearPortTypeLcDashApc captures enum value "lc-apc" 387 WritableRearPortTypeLcDashApc string = "lc-apc" 388 389 // WritableRearPortTypeLsh captures enum value "lsh" 390 WritableRearPortTypeLsh string = "lsh" 391 392 // WritableRearPortTypeLshDashApc captures enum value "lsh-apc" 393 WritableRearPortTypeLshDashApc string = "lsh-apc" 394 395 // WritableRearPortTypeMpo captures enum value "mpo" 396 WritableRearPortTypeMpo string = "mpo" 397 398 // WritableRearPortTypeMtrj captures enum value "mtrj" 399 WritableRearPortTypeMtrj string = "mtrj" 400 401 // WritableRearPortTypeSc captures enum value "sc" 402 WritableRearPortTypeSc string = "sc" 403 404 // WritableRearPortTypeScDashApc captures enum value "sc-apc" 405 WritableRearPortTypeScDashApc string = "sc-apc" 406 407 // WritableRearPortTypeSt captures enum value "st" 408 WritableRearPortTypeSt string = "st" 409 410 // WritableRearPortTypeCs captures enum value "cs" 411 WritableRearPortTypeCs string = "cs" 412 413 // WritableRearPortTypeSn captures enum value "sn" 414 WritableRearPortTypeSn string = "sn" 415 416 // WritableRearPortTypeSplice captures enum value "splice" 417 WritableRearPortTypeSplice string = "splice" 418 ) 419 420 // prop value enum 421 func (m *WritableRearPort) validateTypeEnum(path, location string, value string) error { 422 if err := validate.EnumCase(path, location, value, writableRearPortTypeTypePropEnum, true); err != nil { 423 return err 424 } 425 return nil 426 } 427 428 func (m *WritableRearPort) validateType(formats strfmt.Registry) error { 429 430 if err := validate.Required("type", "body", m.Type); err != nil { 431 return err 432 } 433 434 // value enum 435 if err := m.validateTypeEnum("type", "body", *m.Type); err != nil { 436 return err 437 } 438 439 return nil 440 } 441 442 func (m *WritableRearPort) validateURL(formats strfmt.Registry) error { 443 if swag.IsZero(m.URL) { // not required 444 return nil 445 } 446 447 if err := validate.FormatOf("url", "body", "uri", m.URL.String(), formats); err != nil { 448 return err 449 } 450 451 return nil 452 } 453 454 // ContextValidate validate this writable rear port based on the context it is used 455 func (m *WritableRearPort) ContextValidate(ctx context.Context, formats strfmt.Registry) error { 456 var res []error 457 458 if err := m.contextValidateOccupied(ctx, formats); err != nil { 459 res = append(res, err) 460 } 461 462 if err := m.contextValidateCable(ctx, formats); err != nil { 463 res = append(res, err) 464 } 465 466 if err := m.contextValidateCablePeer(ctx, formats); err != nil { 467 res = append(res, err) 468 } 469 470 if err := m.contextValidateCablePeerType(ctx, formats); err != nil { 471 res = append(res, err) 472 } 473 474 if err := m.contextValidateCreated(ctx, formats); err != nil { 475 res = append(res, err) 476 } 477 478 if err := m.contextValidateDisplay(ctx, formats); err != nil { 479 res = append(res, err) 480 } 481 482 if err := m.contextValidateID(ctx, formats); err != nil { 483 res = append(res, err) 484 } 485 486 if err := m.contextValidateLastUpdated(ctx, formats); err != nil { 487 res = append(res, err) 488 } 489 490 if err := m.contextValidateTags(ctx, formats); err != nil { 491 res = append(res, err) 492 } 493 494 if err := m.contextValidateURL(ctx, formats); err != nil { 495 res = append(res, err) 496 } 497 498 if len(res) > 0 { 499 return errors.CompositeValidationError(res...) 500 } 501 return nil 502 } 503 504 func (m *WritableRearPort) contextValidateOccupied(ctx context.Context, formats strfmt.Registry) error { 505 506 if err := validate.ReadOnly(ctx, "_occupied", "body", m.Occupied); err != nil { 507 return err 508 } 509 510 return nil 511 } 512 513 func (m *WritableRearPort) contextValidateCable(ctx context.Context, formats strfmt.Registry) error { 514 515 if m.Cable != nil { 516 if err := m.Cable.ContextValidate(ctx, formats); err != nil { 517 if ve, ok := err.(*errors.Validation); ok { 518 return ve.ValidateName("cable") 519 } else if ce, ok := err.(*errors.CompositeError); ok { 520 return ce.ValidateName("cable") 521 } 522 return err 523 } 524 } 525 526 return nil 527 } 528 529 func (m *WritableRearPort) contextValidateCablePeer(ctx context.Context, formats strfmt.Registry) error { 530 531 return nil 532 } 533 534 func (m *WritableRearPort) contextValidateCablePeerType(ctx context.Context, formats strfmt.Registry) error { 535 536 if err := validate.ReadOnly(ctx, "cable_peer_type", "body", string(m.CablePeerType)); err != nil { 537 return err 538 } 539 540 return nil 541 } 542 543 func (m *WritableRearPort) contextValidateCreated(ctx context.Context, formats strfmt.Registry) error { 544 545 if err := validate.ReadOnly(ctx, "created", "body", strfmt.Date(m.Created)); err != nil { 546 return err 547 } 548 549 return nil 550 } 551 552 func (m *WritableRearPort) contextValidateDisplay(ctx context.Context, formats strfmt.Registry) error { 553 554 if err := validate.ReadOnly(ctx, "display", "body", string(m.Display)); err != nil { 555 return err 556 } 557 558 return nil 559 } 560 561 func (m *WritableRearPort) contextValidateID(ctx context.Context, formats strfmt.Registry) error { 562 563 if err := validate.ReadOnly(ctx, "id", "body", int64(m.ID)); err != nil { 564 return err 565 } 566 567 return nil 568 } 569 570 func (m *WritableRearPort) contextValidateLastUpdated(ctx context.Context, formats strfmt.Registry) error { 571 572 if err := validate.ReadOnly(ctx, "last_updated", "body", strfmt.DateTime(m.LastUpdated)); err != nil { 573 return err 574 } 575 576 return nil 577 } 578 579 func (m *WritableRearPort) contextValidateTags(ctx context.Context, formats strfmt.Registry) error { 580 581 for i := 0; i < len(m.Tags); i++ { 582 583 if m.Tags[i] != nil { 584 if err := m.Tags[i].ContextValidate(ctx, formats); err != nil { 585 if ve, ok := err.(*errors.Validation); ok { 586 return ve.ValidateName("tags" + "." + strconv.Itoa(i)) 587 } else if ce, ok := err.(*errors.CompositeError); ok { 588 return ce.ValidateName("tags" + "." + strconv.Itoa(i)) 589 } 590 return err 591 } 592 } 593 594 } 595 596 return nil 597 } 598 599 func (m *WritableRearPort) contextValidateURL(ctx context.Context, formats strfmt.Registry) error { 600 601 if err := validate.ReadOnly(ctx, "url", "body", strfmt.URI(m.URL)); err != nil { 602 return err 603 } 604 605 return nil 606 } 607 608 // MarshalBinary interface implementation 609 func (m *WritableRearPort) MarshalBinary() ([]byte, error) { 610 if m == nil { 611 return nil, nil 612 } 613 return swag.WriteJSON(m) 614 } 615 616 // UnmarshalBinary interface implementation 617 func (m *WritableRearPort) UnmarshalBinary(b []byte) error { 618 var res WritableRearPort 619 if err := swag.ReadJSON(b, &res); err != nil { 620 return err 621 } 622 *m = res 623 return nil 624 }