github.com/digitalocean/go-netbox@v0.0.2/netbox/models/writable_power_outlet_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 // WritablePowerOutletTemplate writable power outlet template 34 // 35 // swagger:model WritablePowerOutletTemplate 36 type WritablePowerOutletTemplate 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 *int64 `json:"device_type"` 50 51 // Display 52 // Read Only: true 53 Display string `json:"display,omitempty"` 54 55 // Feed leg 56 // 57 // Phase (for three-phase feeds) 58 // Enum: [A B C] 59 FeedLeg string `json:"feed_leg,omitempty"` 60 61 // Id 62 // Read Only: true 63 ID int64 `json:"id,omitempty"` 64 65 // Label 66 // 67 // Physical label 68 // Max Length: 64 69 Label string `json:"label,omitempty"` 70 71 // Last updated 72 // Read Only: true 73 // Format: date-time 74 LastUpdated strfmt.DateTime `json:"last_updated,omitempty"` 75 76 // Name 77 // Required: true 78 // Max Length: 64 79 // Min Length: 1 80 Name *string `json:"name"` 81 82 // Power port 83 PowerPort *int64 `json:"power_port,omitempty"` 84 85 // Type 86 // Enum: [iec-60320-c5 iec-60320-c7 iec-60320-c13 iec-60320-c15 iec-60320-c19 iec-60320-c21 iec-60309-p-n-e-4h iec-60309-p-n-e-6h iec-60309-p-n-e-9h iec-60309-2p-e-4h iec-60309-2p-e-6h iec-60309-2p-e-9h iec-60309-3p-e-4h iec-60309-3p-e-6h iec-60309-3p-e-9h iec-60309-3p-n-e-4h iec-60309-3p-n-e-6h iec-60309-3p-n-e-9h nema-1-15r nema-5-15r nema-5-20r nema-5-30r nema-5-50r nema-6-15r nema-6-20r nema-6-30r nema-6-50r nema-10-30r nema-10-50r nema-14-20r nema-14-30r nema-14-50r nema-14-60r nema-15-15r nema-15-20r nema-15-30r nema-15-50r nema-15-60r nema-l1-15r nema-l5-15r nema-l5-20r nema-l5-30r nema-l5-50r nema-l6-15r nema-l6-20r nema-l6-30r nema-l6-50r nema-l10-30r nema-l14-20r nema-l14-30r nema-l14-50r nema-l14-60r nema-l15-20r nema-l15-30r nema-l15-50r nema-l15-60r nema-l21-20r nema-l21-30r CS6360C CS6364C CS8164C CS8264C CS8364C CS8464C ita-e ita-f ita-g ita-h ita-i ita-j ita-k ita-l ita-m ita-n ita-o usb-a usb-micro-b usb-c dc-terminal hdot-cx saf-d-grid] 87 Type string `json:"type,omitempty"` 88 89 // Url 90 // Read Only: true 91 // Format: uri 92 URL strfmt.URI `json:"url,omitempty"` 93 } 94 95 // Validate validates this writable power outlet template 96 func (m *WritablePowerOutletTemplate) Validate(formats strfmt.Registry) error { 97 var res []error 98 99 if err := m.validateCreated(formats); err != nil { 100 res = append(res, err) 101 } 102 103 if err := m.validateDescription(formats); err != nil { 104 res = append(res, err) 105 } 106 107 if err := m.validateDeviceType(formats); err != nil { 108 res = append(res, err) 109 } 110 111 if err := m.validateFeedLeg(formats); err != nil { 112 res = append(res, err) 113 } 114 115 if err := m.validateLabel(formats); err != nil { 116 res = append(res, err) 117 } 118 119 if err := m.validateLastUpdated(formats); err != nil { 120 res = append(res, err) 121 } 122 123 if err := m.validateName(formats); err != nil { 124 res = append(res, err) 125 } 126 127 if err := m.validateType(formats); err != nil { 128 res = append(res, err) 129 } 130 131 if err := m.validateURL(formats); err != nil { 132 res = append(res, err) 133 } 134 135 if len(res) > 0 { 136 return errors.CompositeValidationError(res...) 137 } 138 return nil 139 } 140 141 func (m *WritablePowerOutletTemplate) validateCreated(formats strfmt.Registry) error { 142 if swag.IsZero(m.Created) { // not required 143 return nil 144 } 145 146 if err := validate.FormatOf("created", "body", "date", m.Created.String(), formats); err != nil { 147 return err 148 } 149 150 return nil 151 } 152 153 func (m *WritablePowerOutletTemplate) validateDescription(formats strfmt.Registry) error { 154 if swag.IsZero(m.Description) { // not required 155 return nil 156 } 157 158 if err := validate.MaxLength("description", "body", m.Description, 200); err != nil { 159 return err 160 } 161 162 return nil 163 } 164 165 func (m *WritablePowerOutletTemplate) validateDeviceType(formats strfmt.Registry) error { 166 167 if err := validate.Required("device_type", "body", m.DeviceType); err != nil { 168 return err 169 } 170 171 return nil 172 } 173 174 var writablePowerOutletTemplateTypeFeedLegPropEnum []interface{} 175 176 func init() { 177 var res []string 178 if err := json.Unmarshal([]byte(`["A","B","C"]`), &res); err != nil { 179 panic(err) 180 } 181 for _, v := range res { 182 writablePowerOutletTemplateTypeFeedLegPropEnum = append(writablePowerOutletTemplateTypeFeedLegPropEnum, v) 183 } 184 } 185 186 const ( 187 188 // WritablePowerOutletTemplateFeedLegA captures enum value "A" 189 WritablePowerOutletTemplateFeedLegA string = "A" 190 191 // WritablePowerOutletTemplateFeedLegB captures enum value "B" 192 WritablePowerOutletTemplateFeedLegB string = "B" 193 194 // WritablePowerOutletTemplateFeedLegC captures enum value "C" 195 WritablePowerOutletTemplateFeedLegC string = "C" 196 ) 197 198 // prop value enum 199 func (m *WritablePowerOutletTemplate) validateFeedLegEnum(path, location string, value string) error { 200 if err := validate.EnumCase(path, location, value, writablePowerOutletTemplateTypeFeedLegPropEnum, true); err != nil { 201 return err 202 } 203 return nil 204 } 205 206 func (m *WritablePowerOutletTemplate) validateFeedLeg(formats strfmt.Registry) error { 207 if swag.IsZero(m.FeedLeg) { // not required 208 return nil 209 } 210 211 // value enum 212 if err := m.validateFeedLegEnum("feed_leg", "body", m.FeedLeg); err != nil { 213 return err 214 } 215 216 return nil 217 } 218 219 func (m *WritablePowerOutletTemplate) validateLabel(formats strfmt.Registry) error { 220 if swag.IsZero(m.Label) { // not required 221 return nil 222 } 223 224 if err := validate.MaxLength("label", "body", m.Label, 64); err != nil { 225 return err 226 } 227 228 return nil 229 } 230 231 func (m *WritablePowerOutletTemplate) validateLastUpdated(formats strfmt.Registry) error { 232 if swag.IsZero(m.LastUpdated) { // not required 233 return nil 234 } 235 236 if err := validate.FormatOf("last_updated", "body", "date-time", m.LastUpdated.String(), formats); err != nil { 237 return err 238 } 239 240 return nil 241 } 242 243 func (m *WritablePowerOutletTemplate) validateName(formats strfmt.Registry) error { 244 245 if err := validate.Required("name", "body", m.Name); err != nil { 246 return err 247 } 248 249 if err := validate.MinLength("name", "body", *m.Name, 1); err != nil { 250 return err 251 } 252 253 if err := validate.MaxLength("name", "body", *m.Name, 64); err != nil { 254 return err 255 } 256 257 return nil 258 } 259 260 var writablePowerOutletTemplateTypeTypePropEnum []interface{} 261 262 func init() { 263 var res []string 264 if err := json.Unmarshal([]byte(`["iec-60320-c5","iec-60320-c7","iec-60320-c13","iec-60320-c15","iec-60320-c19","iec-60320-c21","iec-60309-p-n-e-4h","iec-60309-p-n-e-6h","iec-60309-p-n-e-9h","iec-60309-2p-e-4h","iec-60309-2p-e-6h","iec-60309-2p-e-9h","iec-60309-3p-e-4h","iec-60309-3p-e-6h","iec-60309-3p-e-9h","iec-60309-3p-n-e-4h","iec-60309-3p-n-e-6h","iec-60309-3p-n-e-9h","nema-1-15r","nema-5-15r","nema-5-20r","nema-5-30r","nema-5-50r","nema-6-15r","nema-6-20r","nema-6-30r","nema-6-50r","nema-10-30r","nema-10-50r","nema-14-20r","nema-14-30r","nema-14-50r","nema-14-60r","nema-15-15r","nema-15-20r","nema-15-30r","nema-15-50r","nema-15-60r","nema-l1-15r","nema-l5-15r","nema-l5-20r","nema-l5-30r","nema-l5-50r","nema-l6-15r","nema-l6-20r","nema-l6-30r","nema-l6-50r","nema-l10-30r","nema-l14-20r","nema-l14-30r","nema-l14-50r","nema-l14-60r","nema-l15-20r","nema-l15-30r","nema-l15-50r","nema-l15-60r","nema-l21-20r","nema-l21-30r","CS6360C","CS6364C","CS8164C","CS8264C","CS8364C","CS8464C","ita-e","ita-f","ita-g","ita-h","ita-i","ita-j","ita-k","ita-l","ita-m","ita-n","ita-o","usb-a","usb-micro-b","usb-c","dc-terminal","hdot-cx","saf-d-grid"]`), &res); err != nil { 265 panic(err) 266 } 267 for _, v := range res { 268 writablePowerOutletTemplateTypeTypePropEnum = append(writablePowerOutletTemplateTypeTypePropEnum, v) 269 } 270 } 271 272 const ( 273 274 // WritablePowerOutletTemplateTypeIecDash60320DashC5 captures enum value "iec-60320-c5" 275 WritablePowerOutletTemplateTypeIecDash60320DashC5 string = "iec-60320-c5" 276 277 // WritablePowerOutletTemplateTypeIecDash60320DashC7 captures enum value "iec-60320-c7" 278 WritablePowerOutletTemplateTypeIecDash60320DashC7 string = "iec-60320-c7" 279 280 // WritablePowerOutletTemplateTypeIecDash60320DashC13 captures enum value "iec-60320-c13" 281 WritablePowerOutletTemplateTypeIecDash60320DashC13 string = "iec-60320-c13" 282 283 // WritablePowerOutletTemplateTypeIecDash60320DashC15 captures enum value "iec-60320-c15" 284 WritablePowerOutletTemplateTypeIecDash60320DashC15 string = "iec-60320-c15" 285 286 // WritablePowerOutletTemplateTypeIecDash60320DashC19 captures enum value "iec-60320-c19" 287 WritablePowerOutletTemplateTypeIecDash60320DashC19 string = "iec-60320-c19" 288 289 // WritablePowerOutletTemplateTypeIecDash60320DashC21 captures enum value "iec-60320-c21" 290 WritablePowerOutletTemplateTypeIecDash60320DashC21 string = "iec-60320-c21" 291 292 // WritablePowerOutletTemplateTypeIecDash60309DashpDashnDasheDash4h captures enum value "iec-60309-p-n-e-4h" 293 WritablePowerOutletTemplateTypeIecDash60309DashpDashnDasheDash4h string = "iec-60309-p-n-e-4h" 294 295 // WritablePowerOutletTemplateTypeIecDash60309DashpDashnDasheDash6h captures enum value "iec-60309-p-n-e-6h" 296 WritablePowerOutletTemplateTypeIecDash60309DashpDashnDasheDash6h string = "iec-60309-p-n-e-6h" 297 298 // WritablePowerOutletTemplateTypeIecDash60309DashpDashnDasheDash9h captures enum value "iec-60309-p-n-e-9h" 299 WritablePowerOutletTemplateTypeIecDash60309DashpDashnDasheDash9h string = "iec-60309-p-n-e-9h" 300 301 // WritablePowerOutletTemplateTypeIecDash60309Dash2pDasheDash4h captures enum value "iec-60309-2p-e-4h" 302 WritablePowerOutletTemplateTypeIecDash60309Dash2pDasheDash4h string = "iec-60309-2p-e-4h" 303 304 // WritablePowerOutletTemplateTypeIecDash60309Dash2pDasheDash6h captures enum value "iec-60309-2p-e-6h" 305 WritablePowerOutletTemplateTypeIecDash60309Dash2pDasheDash6h string = "iec-60309-2p-e-6h" 306 307 // WritablePowerOutletTemplateTypeIecDash60309Dash2pDasheDash9h captures enum value "iec-60309-2p-e-9h" 308 WritablePowerOutletTemplateTypeIecDash60309Dash2pDasheDash9h string = "iec-60309-2p-e-9h" 309 310 // WritablePowerOutletTemplateTypeIecDash60309Dash3pDasheDash4h captures enum value "iec-60309-3p-e-4h" 311 WritablePowerOutletTemplateTypeIecDash60309Dash3pDasheDash4h string = "iec-60309-3p-e-4h" 312 313 // WritablePowerOutletTemplateTypeIecDash60309Dash3pDasheDash6h captures enum value "iec-60309-3p-e-6h" 314 WritablePowerOutletTemplateTypeIecDash60309Dash3pDasheDash6h string = "iec-60309-3p-e-6h" 315 316 // WritablePowerOutletTemplateTypeIecDash60309Dash3pDasheDash9h captures enum value "iec-60309-3p-e-9h" 317 WritablePowerOutletTemplateTypeIecDash60309Dash3pDasheDash9h string = "iec-60309-3p-e-9h" 318 319 // WritablePowerOutletTemplateTypeIecDash60309Dash3pDashnDasheDash4h captures enum value "iec-60309-3p-n-e-4h" 320 WritablePowerOutletTemplateTypeIecDash60309Dash3pDashnDasheDash4h string = "iec-60309-3p-n-e-4h" 321 322 // WritablePowerOutletTemplateTypeIecDash60309Dash3pDashnDasheDash6h captures enum value "iec-60309-3p-n-e-6h" 323 WritablePowerOutletTemplateTypeIecDash60309Dash3pDashnDasheDash6h string = "iec-60309-3p-n-e-6h" 324 325 // WritablePowerOutletTemplateTypeIecDash60309Dash3pDashnDasheDash9h captures enum value "iec-60309-3p-n-e-9h" 326 WritablePowerOutletTemplateTypeIecDash60309Dash3pDashnDasheDash9h string = "iec-60309-3p-n-e-9h" 327 328 // WritablePowerOutletTemplateTypeNemaDash1Dash15r captures enum value "nema-1-15r" 329 WritablePowerOutletTemplateTypeNemaDash1Dash15r string = "nema-1-15r" 330 331 // WritablePowerOutletTemplateTypeNemaDash5Dash15r captures enum value "nema-5-15r" 332 WritablePowerOutletTemplateTypeNemaDash5Dash15r string = "nema-5-15r" 333 334 // WritablePowerOutletTemplateTypeNemaDash5Dash20r captures enum value "nema-5-20r" 335 WritablePowerOutletTemplateTypeNemaDash5Dash20r string = "nema-5-20r" 336 337 // WritablePowerOutletTemplateTypeNemaDash5Dash30r captures enum value "nema-5-30r" 338 WritablePowerOutletTemplateTypeNemaDash5Dash30r string = "nema-5-30r" 339 340 // WritablePowerOutletTemplateTypeNemaDash5Dash50r captures enum value "nema-5-50r" 341 WritablePowerOutletTemplateTypeNemaDash5Dash50r string = "nema-5-50r" 342 343 // WritablePowerOutletTemplateTypeNemaDash6Dash15r captures enum value "nema-6-15r" 344 WritablePowerOutletTemplateTypeNemaDash6Dash15r string = "nema-6-15r" 345 346 // WritablePowerOutletTemplateTypeNemaDash6Dash20r captures enum value "nema-6-20r" 347 WritablePowerOutletTemplateTypeNemaDash6Dash20r string = "nema-6-20r" 348 349 // WritablePowerOutletTemplateTypeNemaDash6Dash30r captures enum value "nema-6-30r" 350 WritablePowerOutletTemplateTypeNemaDash6Dash30r string = "nema-6-30r" 351 352 // WritablePowerOutletTemplateTypeNemaDash6Dash50r captures enum value "nema-6-50r" 353 WritablePowerOutletTemplateTypeNemaDash6Dash50r string = "nema-6-50r" 354 355 // WritablePowerOutletTemplateTypeNemaDash10Dash30r captures enum value "nema-10-30r" 356 WritablePowerOutletTemplateTypeNemaDash10Dash30r string = "nema-10-30r" 357 358 // WritablePowerOutletTemplateTypeNemaDash10Dash50r captures enum value "nema-10-50r" 359 WritablePowerOutletTemplateTypeNemaDash10Dash50r string = "nema-10-50r" 360 361 // WritablePowerOutletTemplateTypeNemaDash14Dash20r captures enum value "nema-14-20r" 362 WritablePowerOutletTemplateTypeNemaDash14Dash20r string = "nema-14-20r" 363 364 // WritablePowerOutletTemplateTypeNemaDash14Dash30r captures enum value "nema-14-30r" 365 WritablePowerOutletTemplateTypeNemaDash14Dash30r string = "nema-14-30r" 366 367 // WritablePowerOutletTemplateTypeNemaDash14Dash50r captures enum value "nema-14-50r" 368 WritablePowerOutletTemplateTypeNemaDash14Dash50r string = "nema-14-50r" 369 370 // WritablePowerOutletTemplateTypeNemaDash14Dash60r captures enum value "nema-14-60r" 371 WritablePowerOutletTemplateTypeNemaDash14Dash60r string = "nema-14-60r" 372 373 // WritablePowerOutletTemplateTypeNemaDash15Dash15r captures enum value "nema-15-15r" 374 WritablePowerOutletTemplateTypeNemaDash15Dash15r string = "nema-15-15r" 375 376 // WritablePowerOutletTemplateTypeNemaDash15Dash20r captures enum value "nema-15-20r" 377 WritablePowerOutletTemplateTypeNemaDash15Dash20r string = "nema-15-20r" 378 379 // WritablePowerOutletTemplateTypeNemaDash15Dash30r captures enum value "nema-15-30r" 380 WritablePowerOutletTemplateTypeNemaDash15Dash30r string = "nema-15-30r" 381 382 // WritablePowerOutletTemplateTypeNemaDash15Dash50r captures enum value "nema-15-50r" 383 WritablePowerOutletTemplateTypeNemaDash15Dash50r string = "nema-15-50r" 384 385 // WritablePowerOutletTemplateTypeNemaDash15Dash60r captures enum value "nema-15-60r" 386 WritablePowerOutletTemplateTypeNemaDash15Dash60r string = "nema-15-60r" 387 388 // WritablePowerOutletTemplateTypeNemaDashL1Dash15r captures enum value "nema-l1-15r" 389 WritablePowerOutletTemplateTypeNemaDashL1Dash15r string = "nema-l1-15r" 390 391 // WritablePowerOutletTemplateTypeNemaDashL5Dash15r captures enum value "nema-l5-15r" 392 WritablePowerOutletTemplateTypeNemaDashL5Dash15r string = "nema-l5-15r" 393 394 // WritablePowerOutletTemplateTypeNemaDashL5Dash20r captures enum value "nema-l5-20r" 395 WritablePowerOutletTemplateTypeNemaDashL5Dash20r string = "nema-l5-20r" 396 397 // WritablePowerOutletTemplateTypeNemaDashL5Dash30r captures enum value "nema-l5-30r" 398 WritablePowerOutletTemplateTypeNemaDashL5Dash30r string = "nema-l5-30r" 399 400 // WritablePowerOutletTemplateTypeNemaDashL5Dash50r captures enum value "nema-l5-50r" 401 WritablePowerOutletTemplateTypeNemaDashL5Dash50r string = "nema-l5-50r" 402 403 // WritablePowerOutletTemplateTypeNemaDashL6Dash15r captures enum value "nema-l6-15r" 404 WritablePowerOutletTemplateTypeNemaDashL6Dash15r string = "nema-l6-15r" 405 406 // WritablePowerOutletTemplateTypeNemaDashL6Dash20r captures enum value "nema-l6-20r" 407 WritablePowerOutletTemplateTypeNemaDashL6Dash20r string = "nema-l6-20r" 408 409 // WritablePowerOutletTemplateTypeNemaDashL6Dash30r captures enum value "nema-l6-30r" 410 WritablePowerOutletTemplateTypeNemaDashL6Dash30r string = "nema-l6-30r" 411 412 // WritablePowerOutletTemplateTypeNemaDashL6Dash50r captures enum value "nema-l6-50r" 413 WritablePowerOutletTemplateTypeNemaDashL6Dash50r string = "nema-l6-50r" 414 415 // WritablePowerOutletTemplateTypeNemaDashL10Dash30r captures enum value "nema-l10-30r" 416 WritablePowerOutletTemplateTypeNemaDashL10Dash30r string = "nema-l10-30r" 417 418 // WritablePowerOutletTemplateTypeNemaDashL14Dash20r captures enum value "nema-l14-20r" 419 WritablePowerOutletTemplateTypeNemaDashL14Dash20r string = "nema-l14-20r" 420 421 // WritablePowerOutletTemplateTypeNemaDashL14Dash30r captures enum value "nema-l14-30r" 422 WritablePowerOutletTemplateTypeNemaDashL14Dash30r string = "nema-l14-30r" 423 424 // WritablePowerOutletTemplateTypeNemaDashL14Dash50r captures enum value "nema-l14-50r" 425 WritablePowerOutletTemplateTypeNemaDashL14Dash50r string = "nema-l14-50r" 426 427 // WritablePowerOutletTemplateTypeNemaDashL14Dash60r captures enum value "nema-l14-60r" 428 WritablePowerOutletTemplateTypeNemaDashL14Dash60r string = "nema-l14-60r" 429 430 // WritablePowerOutletTemplateTypeNemaDashL15Dash20r captures enum value "nema-l15-20r" 431 WritablePowerOutletTemplateTypeNemaDashL15Dash20r string = "nema-l15-20r" 432 433 // WritablePowerOutletTemplateTypeNemaDashL15Dash30r captures enum value "nema-l15-30r" 434 WritablePowerOutletTemplateTypeNemaDashL15Dash30r string = "nema-l15-30r" 435 436 // WritablePowerOutletTemplateTypeNemaDashL15Dash50r captures enum value "nema-l15-50r" 437 WritablePowerOutletTemplateTypeNemaDashL15Dash50r string = "nema-l15-50r" 438 439 // WritablePowerOutletTemplateTypeNemaDashL15Dash60r captures enum value "nema-l15-60r" 440 WritablePowerOutletTemplateTypeNemaDashL15Dash60r string = "nema-l15-60r" 441 442 // WritablePowerOutletTemplateTypeNemaDashL21Dash20r captures enum value "nema-l21-20r" 443 WritablePowerOutletTemplateTypeNemaDashL21Dash20r string = "nema-l21-20r" 444 445 // WritablePowerOutletTemplateTypeNemaDashL21Dash30r captures enum value "nema-l21-30r" 446 WritablePowerOutletTemplateTypeNemaDashL21Dash30r string = "nema-l21-30r" 447 448 // WritablePowerOutletTemplateTypeCS6360C captures enum value "CS6360C" 449 WritablePowerOutletTemplateTypeCS6360C string = "CS6360C" 450 451 // WritablePowerOutletTemplateTypeCS6364C captures enum value "CS6364C" 452 WritablePowerOutletTemplateTypeCS6364C string = "CS6364C" 453 454 // WritablePowerOutletTemplateTypeCS8164C captures enum value "CS8164C" 455 WritablePowerOutletTemplateTypeCS8164C string = "CS8164C" 456 457 // WritablePowerOutletTemplateTypeCS8264C captures enum value "CS8264C" 458 WritablePowerOutletTemplateTypeCS8264C string = "CS8264C" 459 460 // WritablePowerOutletTemplateTypeCS8364C captures enum value "CS8364C" 461 WritablePowerOutletTemplateTypeCS8364C string = "CS8364C" 462 463 // WritablePowerOutletTemplateTypeCS8464C captures enum value "CS8464C" 464 WritablePowerOutletTemplateTypeCS8464C string = "CS8464C" 465 466 // WritablePowerOutletTemplateTypeItaDashe captures enum value "ita-e" 467 WritablePowerOutletTemplateTypeItaDashe string = "ita-e" 468 469 // WritablePowerOutletTemplateTypeItaDashf captures enum value "ita-f" 470 WritablePowerOutletTemplateTypeItaDashf string = "ita-f" 471 472 // WritablePowerOutletTemplateTypeItaDashg captures enum value "ita-g" 473 WritablePowerOutletTemplateTypeItaDashg string = "ita-g" 474 475 // WritablePowerOutletTemplateTypeItaDashh captures enum value "ita-h" 476 WritablePowerOutletTemplateTypeItaDashh string = "ita-h" 477 478 // WritablePowerOutletTemplateTypeItaDashi captures enum value "ita-i" 479 WritablePowerOutletTemplateTypeItaDashi string = "ita-i" 480 481 // WritablePowerOutletTemplateTypeItaDashj captures enum value "ita-j" 482 WritablePowerOutletTemplateTypeItaDashj string = "ita-j" 483 484 // WritablePowerOutletTemplateTypeItaDashk captures enum value "ita-k" 485 WritablePowerOutletTemplateTypeItaDashk string = "ita-k" 486 487 // WritablePowerOutletTemplateTypeItaDashl captures enum value "ita-l" 488 WritablePowerOutletTemplateTypeItaDashl string = "ita-l" 489 490 // WritablePowerOutletTemplateTypeItaDashm captures enum value "ita-m" 491 WritablePowerOutletTemplateTypeItaDashm string = "ita-m" 492 493 // WritablePowerOutletTemplateTypeItaDashn captures enum value "ita-n" 494 WritablePowerOutletTemplateTypeItaDashn string = "ita-n" 495 496 // WritablePowerOutletTemplateTypeItaDasho captures enum value "ita-o" 497 WritablePowerOutletTemplateTypeItaDasho string = "ita-o" 498 499 // WritablePowerOutletTemplateTypeUsbDasha captures enum value "usb-a" 500 WritablePowerOutletTemplateTypeUsbDasha string = "usb-a" 501 502 // WritablePowerOutletTemplateTypeUsbDashMicroDashb captures enum value "usb-micro-b" 503 WritablePowerOutletTemplateTypeUsbDashMicroDashb string = "usb-micro-b" 504 505 // WritablePowerOutletTemplateTypeUsbDashc captures enum value "usb-c" 506 WritablePowerOutletTemplateTypeUsbDashc string = "usb-c" 507 508 // WritablePowerOutletTemplateTypeDcDashTerminal captures enum value "dc-terminal" 509 WritablePowerOutletTemplateTypeDcDashTerminal string = "dc-terminal" 510 511 // WritablePowerOutletTemplateTypeHdotDashCx captures enum value "hdot-cx" 512 WritablePowerOutletTemplateTypeHdotDashCx string = "hdot-cx" 513 514 // WritablePowerOutletTemplateTypeSafDashdDashGrid captures enum value "saf-d-grid" 515 WritablePowerOutletTemplateTypeSafDashdDashGrid string = "saf-d-grid" 516 ) 517 518 // prop value enum 519 func (m *WritablePowerOutletTemplate) validateTypeEnum(path, location string, value string) error { 520 if err := validate.EnumCase(path, location, value, writablePowerOutletTemplateTypeTypePropEnum, true); err != nil { 521 return err 522 } 523 return nil 524 } 525 526 func (m *WritablePowerOutletTemplate) validateType(formats strfmt.Registry) error { 527 if swag.IsZero(m.Type) { // not required 528 return nil 529 } 530 531 // value enum 532 if err := m.validateTypeEnum("type", "body", m.Type); err != nil { 533 return err 534 } 535 536 return nil 537 } 538 539 func (m *WritablePowerOutletTemplate) validateURL(formats strfmt.Registry) error { 540 if swag.IsZero(m.URL) { // not required 541 return nil 542 } 543 544 if err := validate.FormatOf("url", "body", "uri", m.URL.String(), formats); err != nil { 545 return err 546 } 547 548 return nil 549 } 550 551 // ContextValidate validate this writable power outlet template based on the context it is used 552 func (m *WritablePowerOutletTemplate) ContextValidate(ctx context.Context, formats strfmt.Registry) error { 553 var res []error 554 555 if err := m.contextValidateCreated(ctx, formats); err != nil { 556 res = append(res, err) 557 } 558 559 if err := m.contextValidateDisplay(ctx, formats); err != nil { 560 res = append(res, err) 561 } 562 563 if err := m.contextValidateID(ctx, formats); err != nil { 564 res = append(res, err) 565 } 566 567 if err := m.contextValidateLastUpdated(ctx, formats); err != nil { 568 res = append(res, err) 569 } 570 571 if err := m.contextValidateURL(ctx, formats); err != nil { 572 res = append(res, err) 573 } 574 575 if len(res) > 0 { 576 return errors.CompositeValidationError(res...) 577 } 578 return nil 579 } 580 581 func (m *WritablePowerOutletTemplate) contextValidateCreated(ctx context.Context, formats strfmt.Registry) error { 582 583 if err := validate.ReadOnly(ctx, "created", "body", strfmt.Date(m.Created)); err != nil { 584 return err 585 } 586 587 return nil 588 } 589 590 func (m *WritablePowerOutletTemplate) contextValidateDisplay(ctx context.Context, formats strfmt.Registry) error { 591 592 if err := validate.ReadOnly(ctx, "display", "body", string(m.Display)); err != nil { 593 return err 594 } 595 596 return nil 597 } 598 599 func (m *WritablePowerOutletTemplate) contextValidateID(ctx context.Context, formats strfmt.Registry) error { 600 601 if err := validate.ReadOnly(ctx, "id", "body", int64(m.ID)); err != nil { 602 return err 603 } 604 605 return nil 606 } 607 608 func (m *WritablePowerOutletTemplate) contextValidateLastUpdated(ctx context.Context, formats strfmt.Registry) error { 609 610 if err := validate.ReadOnly(ctx, "last_updated", "body", strfmt.DateTime(m.LastUpdated)); err != nil { 611 return err 612 } 613 614 return nil 615 } 616 617 func (m *WritablePowerOutletTemplate) contextValidateURL(ctx context.Context, formats strfmt.Registry) error { 618 619 if err := validate.ReadOnly(ctx, "url", "body", strfmt.URI(m.URL)); err != nil { 620 return err 621 } 622 623 return nil 624 } 625 626 // MarshalBinary interface implementation 627 func (m *WritablePowerOutletTemplate) MarshalBinary() ([]byte, error) { 628 if m == nil { 629 return nil, nil 630 } 631 return swag.WriteJSON(m) 632 } 633 634 // UnmarshalBinary interface implementation 635 func (m *WritablePowerOutletTemplate) UnmarshalBinary(b []byte) error { 636 var res WritablePowerOutletTemplate 637 if err := swag.ReadJSON(b, &res); err != nil { 638 return err 639 } 640 *m = res 641 return nil 642 }