github.com/cloudwan/edgelq-sdk@v1.15.4/devices/resources/v1/device_hardware/device_hardware.pb.fieldpath.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/devices/proto/v1/device_hardware.proto 3 // DO NOT EDIT!!! 4 5 package device_hardware 6 7 import ( 8 "encoding/json" 9 "fmt" 10 "reflect" 11 "strings" 12 "time" 13 14 "google.golang.org/grpc/codes" 15 "google.golang.org/grpc/status" 16 "google.golang.org/protobuf/encoding/protojson" 17 "google.golang.org/protobuf/proto" 18 "google.golang.org/protobuf/reflect/protoregistry" 19 20 gotenobject "github.com/cloudwan/goten-sdk/runtime/object" 21 "github.com/cloudwan/goten-sdk/runtime/strcase" 22 ) 23 24 // proto imports 25 import ( 26 cellular_api_sim_card "github.com/cloudwan/edgelq-sdk/cellular-api/resources/v1/sim_card" 27 device "github.com/cloudwan/edgelq-sdk/devices/resources/v1/device" 28 project "github.com/cloudwan/edgelq-sdk/devices/resources/v1/project" 29 provisioning_policy "github.com/cloudwan/edgelq-sdk/devices/resources/v1/provisioning_policy" 30 meta "github.com/cloudwan/goten-sdk/types/meta" 31 ) 32 33 // ensure the imports are used 34 var ( 35 _ = new(json.Marshaler) 36 _ = new(fmt.Stringer) 37 _ = reflect.DeepEqual 38 _ = strings.Builder{} 39 _ = time.Second 40 41 _ = strcase.ToLowerCamel 42 _ = codes.NotFound 43 _ = status.Status{} 44 _ = protojson.UnmarshalOptions{} 45 _ = new(proto.Message) 46 _ = protoregistry.GlobalTypes 47 48 _ = new(gotenobject.FieldPath) 49 ) 50 51 // make sure we're using proto imports 52 var ( 53 _ = &cellular_api_sim_card.SimCard{} 54 _ = &device.Device{} 55 _ = &project.Project{} 56 _ = &provisioning_policy.ProvisioningPolicy{} 57 _ = &meta.Meta{} 58 ) 59 60 // FieldPath provides implementation to handle 61 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 62 type DeviceHardware_FieldPath interface { 63 gotenobject.FieldPath 64 Selector() DeviceHardware_FieldPathSelector 65 Get(source *DeviceHardware) []interface{} 66 GetSingle(source *DeviceHardware) (interface{}, bool) 67 ClearValue(item *DeviceHardware) 68 69 // Those methods build corresponding DeviceHardware_FieldPathValue 70 // (or array of values) and holds passed value. Panics if injected type is incorrect. 71 WithIValue(value interface{}) DeviceHardware_FieldPathValue 72 WithIArrayOfValues(values interface{}) DeviceHardware_FieldPathArrayOfValues 73 WithIArrayItemValue(value interface{}) DeviceHardware_FieldPathArrayItemValue 74 } 75 76 type DeviceHardware_FieldPathSelector int32 77 78 const ( 79 DeviceHardware_FieldPathSelectorName DeviceHardware_FieldPathSelector = 0 80 DeviceHardware_FieldPathSelectorMetadata DeviceHardware_FieldPathSelector = 1 81 DeviceHardware_FieldPathSelectorDisplayName DeviceHardware_FieldPathSelector = 2 82 DeviceHardware_FieldPathSelectorSerialNumber DeviceHardware_FieldPathSelector = 3 83 DeviceHardware_FieldPathSelectorManufacturer DeviceHardware_FieldPathSelector = 4 84 DeviceHardware_FieldPathSelectorProductName DeviceHardware_FieldPathSelector = 5 85 DeviceHardware_FieldPathSelectorMacAddress DeviceHardware_FieldPathSelector = 6 86 DeviceHardware_FieldPathSelectorSimIccid DeviceHardware_FieldPathSelector = 7 87 DeviceHardware_FieldPathSelectorImei DeviceHardware_FieldPathSelector = 8 88 DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName DeviceHardware_FieldPathSelector = 9 89 DeviceHardware_FieldPathSelectorAssociatedDevice DeviceHardware_FieldPathSelector = 10 90 DeviceHardware_FieldPathSelectorAssociatedSimCard DeviceHardware_FieldPathSelector = 11 91 DeviceHardware_FieldPathSelectorStatus DeviceHardware_FieldPathSelector = 12 92 ) 93 94 func (s DeviceHardware_FieldPathSelector) String() string { 95 switch s { 96 case DeviceHardware_FieldPathSelectorName: 97 return "name" 98 case DeviceHardware_FieldPathSelectorMetadata: 99 return "metadata" 100 case DeviceHardware_FieldPathSelectorDisplayName: 101 return "display_name" 102 case DeviceHardware_FieldPathSelectorSerialNumber: 103 return "serial_number" 104 case DeviceHardware_FieldPathSelectorManufacturer: 105 return "manufacturer" 106 case DeviceHardware_FieldPathSelectorProductName: 107 return "product_name" 108 case DeviceHardware_FieldPathSelectorMacAddress: 109 return "mac_address" 110 case DeviceHardware_FieldPathSelectorSimIccid: 111 return "sim_iccid" 112 case DeviceHardware_FieldPathSelectorImei: 113 return "imei" 114 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 115 return "associated_provisioning_policy_name" 116 case DeviceHardware_FieldPathSelectorAssociatedDevice: 117 return "associated_device" 118 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 119 return "associated_sim_card" 120 case DeviceHardware_FieldPathSelectorStatus: 121 return "status" 122 default: 123 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", s)) 124 } 125 } 126 127 func BuildDeviceHardware_FieldPath(fp gotenobject.RawFieldPath) (DeviceHardware_FieldPath, error) { 128 if len(fp) == 0 { 129 return nil, status.Error(codes.InvalidArgument, "empty field path for object DeviceHardware") 130 } 131 if len(fp) == 1 { 132 switch fp[0] { 133 case "name": 134 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorName}, nil 135 case "metadata": 136 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorMetadata}, nil 137 case "display_name", "displayName", "display-name": 138 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorDisplayName}, nil 139 case "serial_number", "serialNumber", "serial-number": 140 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorSerialNumber}, nil 141 case "manufacturer": 142 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorManufacturer}, nil 143 case "product_name", "productName", "product-name": 144 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorProductName}, nil 145 case "mac_address", "macAddress", "mac-address": 146 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorMacAddress}, nil 147 case "sim_iccid", "simIccid", "sim-iccid": 148 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorSimIccid}, nil 149 case "imei": 150 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorImei}, nil 151 case "associated_provisioning_policy_name", "associatedProvisioningPolicyName", "associated-provisioning-policy-name": 152 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName}, nil 153 case "associated_device", "associatedDevice", "associated-device": 154 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorAssociatedDevice}, nil 155 case "associated_sim_card", "associatedSimCard", "associated-sim-card": 156 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorAssociatedSimCard}, nil 157 case "status": 158 return &DeviceHardware_FieldTerminalPath{selector: DeviceHardware_FieldPathSelectorStatus}, nil 159 } 160 } else { 161 switch fp[0] { 162 case "metadata": 163 if subpath, err := meta.BuildMeta_FieldPath(fp[1:]); err != nil { 164 return nil, err 165 } else { 166 return &DeviceHardware_FieldSubPath{selector: DeviceHardware_FieldPathSelectorMetadata, subPath: subpath}, nil 167 } 168 case "status": 169 if subpath, err := BuildDeviceHardwareStatus_FieldPath(fp[1:]); err != nil { 170 return nil, err 171 } else { 172 return &DeviceHardware_FieldSubPath{selector: DeviceHardware_FieldPathSelectorStatus, subPath: subpath}, nil 173 } 174 } 175 } 176 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object DeviceHardware", fp) 177 } 178 179 func ParseDeviceHardware_FieldPath(rawField string) (DeviceHardware_FieldPath, error) { 180 fp, err := gotenobject.ParseRawFieldPath(rawField) 181 if err != nil { 182 return nil, err 183 } 184 return BuildDeviceHardware_FieldPath(fp) 185 } 186 187 func MustParseDeviceHardware_FieldPath(rawField string) DeviceHardware_FieldPath { 188 fp, err := ParseDeviceHardware_FieldPath(rawField) 189 if err != nil { 190 panic(err) 191 } 192 return fp 193 } 194 195 type DeviceHardware_FieldTerminalPath struct { 196 selector DeviceHardware_FieldPathSelector 197 } 198 199 var _ DeviceHardware_FieldPath = (*DeviceHardware_FieldTerminalPath)(nil) 200 201 func (fp *DeviceHardware_FieldTerminalPath) Selector() DeviceHardware_FieldPathSelector { 202 return fp.selector 203 } 204 205 // String returns path representation in proto convention 206 func (fp *DeviceHardware_FieldTerminalPath) String() string { 207 return fp.selector.String() 208 } 209 210 // JSONString returns path representation is JSON convention 211 func (fp *DeviceHardware_FieldTerminalPath) JSONString() string { 212 return strcase.ToLowerCamel(fp.String()) 213 } 214 215 // Get returns all values pointed by specific field from source DeviceHardware 216 func (fp *DeviceHardware_FieldTerminalPath) Get(source *DeviceHardware) (values []interface{}) { 217 if source != nil { 218 switch fp.selector { 219 case DeviceHardware_FieldPathSelectorName: 220 if source.Name != nil { 221 values = append(values, source.Name) 222 } 223 case DeviceHardware_FieldPathSelectorMetadata: 224 if source.Metadata != nil { 225 values = append(values, source.Metadata) 226 } 227 case DeviceHardware_FieldPathSelectorDisplayName: 228 values = append(values, source.DisplayName) 229 case DeviceHardware_FieldPathSelectorSerialNumber: 230 values = append(values, source.SerialNumber) 231 case DeviceHardware_FieldPathSelectorManufacturer: 232 values = append(values, source.Manufacturer) 233 case DeviceHardware_FieldPathSelectorProductName: 234 values = append(values, source.ProductName) 235 case DeviceHardware_FieldPathSelectorMacAddress: 236 for _, value := range source.GetMacAddress() { 237 values = append(values, value) 238 } 239 case DeviceHardware_FieldPathSelectorSimIccid: 240 values = append(values, source.SimIccid) 241 case DeviceHardware_FieldPathSelectorImei: 242 values = append(values, source.Imei) 243 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 244 if source.AssociatedProvisioningPolicyName != nil { 245 values = append(values, source.AssociatedProvisioningPolicyName) 246 } 247 case DeviceHardware_FieldPathSelectorAssociatedDevice: 248 if source.AssociatedDevice != nil { 249 values = append(values, source.AssociatedDevice) 250 } 251 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 252 if source.AssociatedSimCard != nil { 253 values = append(values, source.AssociatedSimCard) 254 } 255 case DeviceHardware_FieldPathSelectorStatus: 256 if source.Status != nil { 257 values = append(values, source.Status) 258 } 259 default: 260 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fp.selector)) 261 } 262 } 263 return 264 } 265 266 func (fp *DeviceHardware_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 267 return fp.Get(source.(*DeviceHardware)) 268 } 269 270 // GetSingle returns value pointed by specific field of from source DeviceHardware 271 func (fp *DeviceHardware_FieldTerminalPath) GetSingle(source *DeviceHardware) (interface{}, bool) { 272 switch fp.selector { 273 case DeviceHardware_FieldPathSelectorName: 274 res := source.GetName() 275 return res, res != nil 276 case DeviceHardware_FieldPathSelectorMetadata: 277 res := source.GetMetadata() 278 return res, res != nil 279 case DeviceHardware_FieldPathSelectorDisplayName: 280 return source.GetDisplayName(), source != nil 281 case DeviceHardware_FieldPathSelectorSerialNumber: 282 return source.GetSerialNumber(), source != nil 283 case DeviceHardware_FieldPathSelectorManufacturer: 284 return source.GetManufacturer(), source != nil 285 case DeviceHardware_FieldPathSelectorProductName: 286 return source.GetProductName(), source != nil 287 case DeviceHardware_FieldPathSelectorMacAddress: 288 res := source.GetMacAddress() 289 return res, res != nil 290 case DeviceHardware_FieldPathSelectorSimIccid: 291 return source.GetSimIccid(), source != nil 292 case DeviceHardware_FieldPathSelectorImei: 293 return source.GetImei(), source != nil 294 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 295 res := source.GetAssociatedProvisioningPolicyName() 296 return res, res != nil 297 case DeviceHardware_FieldPathSelectorAssociatedDevice: 298 res := source.GetAssociatedDevice() 299 return res, res != nil 300 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 301 res := source.GetAssociatedSimCard() 302 return res, res != nil 303 case DeviceHardware_FieldPathSelectorStatus: 304 res := source.GetStatus() 305 return res, res != nil 306 default: 307 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fp.selector)) 308 } 309 } 310 311 func (fp *DeviceHardware_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 312 return fp.GetSingle(source.(*DeviceHardware)) 313 } 314 315 // GetDefault returns a default value of the field type 316 func (fp *DeviceHardware_FieldTerminalPath) GetDefault() interface{} { 317 switch fp.selector { 318 case DeviceHardware_FieldPathSelectorName: 319 return (*Name)(nil) 320 case DeviceHardware_FieldPathSelectorMetadata: 321 return (*meta.Meta)(nil) 322 case DeviceHardware_FieldPathSelectorDisplayName: 323 return "" 324 case DeviceHardware_FieldPathSelectorSerialNumber: 325 return "" 326 case DeviceHardware_FieldPathSelectorManufacturer: 327 return "" 328 case DeviceHardware_FieldPathSelectorProductName: 329 return "" 330 case DeviceHardware_FieldPathSelectorMacAddress: 331 return ([]string)(nil) 332 case DeviceHardware_FieldPathSelectorSimIccid: 333 return "" 334 case DeviceHardware_FieldPathSelectorImei: 335 return "" 336 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 337 return (*provisioning_policy.Reference)(nil) 338 case DeviceHardware_FieldPathSelectorAssociatedDevice: 339 return (*device.Reference)(nil) 340 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 341 return (*cellular_api_sim_card.Reference)(nil) 342 case DeviceHardware_FieldPathSelectorStatus: 343 return (*DeviceHardware_Status)(nil) 344 default: 345 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fp.selector)) 346 } 347 } 348 349 func (fp *DeviceHardware_FieldTerminalPath) ClearValue(item *DeviceHardware) { 350 if item != nil { 351 switch fp.selector { 352 case DeviceHardware_FieldPathSelectorName: 353 item.Name = nil 354 case DeviceHardware_FieldPathSelectorMetadata: 355 item.Metadata = nil 356 case DeviceHardware_FieldPathSelectorDisplayName: 357 item.DisplayName = "" 358 case DeviceHardware_FieldPathSelectorSerialNumber: 359 item.SerialNumber = "" 360 case DeviceHardware_FieldPathSelectorManufacturer: 361 item.Manufacturer = "" 362 case DeviceHardware_FieldPathSelectorProductName: 363 item.ProductName = "" 364 case DeviceHardware_FieldPathSelectorMacAddress: 365 item.MacAddress = nil 366 case DeviceHardware_FieldPathSelectorSimIccid: 367 item.SimIccid = "" 368 case DeviceHardware_FieldPathSelectorImei: 369 item.Imei = "" 370 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 371 item.AssociatedProvisioningPolicyName = nil 372 case DeviceHardware_FieldPathSelectorAssociatedDevice: 373 item.AssociatedDevice = nil 374 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 375 item.AssociatedSimCard = nil 376 case DeviceHardware_FieldPathSelectorStatus: 377 item.Status = nil 378 default: 379 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fp.selector)) 380 } 381 } 382 } 383 384 func (fp *DeviceHardware_FieldTerminalPath) ClearValueRaw(item proto.Message) { 385 fp.ClearValue(item.(*DeviceHardware)) 386 } 387 388 // IsLeaf - whether field path is holds simple value 389 func (fp *DeviceHardware_FieldTerminalPath) IsLeaf() bool { 390 return fp.selector == DeviceHardware_FieldPathSelectorName || 391 fp.selector == DeviceHardware_FieldPathSelectorDisplayName || 392 fp.selector == DeviceHardware_FieldPathSelectorSerialNumber || 393 fp.selector == DeviceHardware_FieldPathSelectorManufacturer || 394 fp.selector == DeviceHardware_FieldPathSelectorProductName || 395 fp.selector == DeviceHardware_FieldPathSelectorMacAddress || 396 fp.selector == DeviceHardware_FieldPathSelectorSimIccid || 397 fp.selector == DeviceHardware_FieldPathSelectorImei || 398 fp.selector == DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName || 399 fp.selector == DeviceHardware_FieldPathSelectorAssociatedDevice || 400 fp.selector == DeviceHardware_FieldPathSelectorAssociatedSimCard 401 } 402 403 func (fp *DeviceHardware_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 404 return []gotenobject.FieldPath{fp} 405 } 406 407 func (fp *DeviceHardware_FieldTerminalPath) WithIValue(value interface{}) DeviceHardware_FieldPathValue { 408 switch fp.selector { 409 case DeviceHardware_FieldPathSelectorName: 410 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(*Name)} 411 case DeviceHardware_FieldPathSelectorMetadata: 412 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(*meta.Meta)} 413 case DeviceHardware_FieldPathSelectorDisplayName: 414 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(string)} 415 case DeviceHardware_FieldPathSelectorSerialNumber: 416 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(string)} 417 case DeviceHardware_FieldPathSelectorManufacturer: 418 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(string)} 419 case DeviceHardware_FieldPathSelectorProductName: 420 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(string)} 421 case DeviceHardware_FieldPathSelectorMacAddress: 422 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.([]string)} 423 case DeviceHardware_FieldPathSelectorSimIccid: 424 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(string)} 425 case DeviceHardware_FieldPathSelectorImei: 426 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(string)} 427 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 428 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(*provisioning_policy.Reference)} 429 case DeviceHardware_FieldPathSelectorAssociatedDevice: 430 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(*device.Reference)} 431 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 432 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(*cellular_api_sim_card.Reference)} 433 case DeviceHardware_FieldPathSelectorStatus: 434 return &DeviceHardware_FieldTerminalPathValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(*DeviceHardware_Status)} 435 default: 436 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fp.selector)) 437 } 438 } 439 440 func (fp *DeviceHardware_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 441 return fp.WithIValue(value) 442 } 443 444 func (fp *DeviceHardware_FieldTerminalPath) WithIArrayOfValues(values interface{}) DeviceHardware_FieldPathArrayOfValues { 445 fpaov := &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp} 446 switch fp.selector { 447 case DeviceHardware_FieldPathSelectorName: 448 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]*Name)} 449 case DeviceHardware_FieldPathSelectorMetadata: 450 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]*meta.Meta)} 451 case DeviceHardware_FieldPathSelectorDisplayName: 452 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]string)} 453 case DeviceHardware_FieldPathSelectorSerialNumber: 454 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]string)} 455 case DeviceHardware_FieldPathSelectorManufacturer: 456 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]string)} 457 case DeviceHardware_FieldPathSelectorProductName: 458 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]string)} 459 case DeviceHardware_FieldPathSelectorMacAddress: 460 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([][]string)} 461 case DeviceHardware_FieldPathSelectorSimIccid: 462 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]string)} 463 case DeviceHardware_FieldPathSelectorImei: 464 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]string)} 465 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 466 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]*provisioning_policy.Reference)} 467 case DeviceHardware_FieldPathSelectorAssociatedDevice: 468 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]*device.Reference)} 469 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 470 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]*cellular_api_sim_card.Reference)} 471 case DeviceHardware_FieldPathSelectorStatus: 472 return &DeviceHardware_FieldTerminalPathArrayOfValues{DeviceHardware_FieldTerminalPath: *fp, values: values.([]*DeviceHardware_Status)} 473 default: 474 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fp.selector)) 475 } 476 return fpaov 477 } 478 479 func (fp *DeviceHardware_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 480 return fp.WithIArrayOfValues(values) 481 } 482 483 func (fp *DeviceHardware_FieldTerminalPath) WithIArrayItemValue(value interface{}) DeviceHardware_FieldPathArrayItemValue { 484 switch fp.selector { 485 case DeviceHardware_FieldPathSelectorMacAddress: 486 return &DeviceHardware_FieldTerminalPathArrayItemValue{DeviceHardware_FieldTerminalPath: *fp, value: value.(string)} 487 default: 488 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fp.selector)) 489 } 490 } 491 492 func (fp *DeviceHardware_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 493 return fp.WithIArrayItemValue(value) 494 } 495 496 type DeviceHardware_FieldSubPath struct { 497 selector DeviceHardware_FieldPathSelector 498 subPath gotenobject.FieldPath 499 } 500 501 var _ DeviceHardware_FieldPath = (*DeviceHardware_FieldSubPath)(nil) 502 503 func (fps *DeviceHardware_FieldSubPath) Selector() DeviceHardware_FieldPathSelector { 504 return fps.selector 505 } 506 func (fps *DeviceHardware_FieldSubPath) AsMetadataSubPath() (meta.Meta_FieldPath, bool) { 507 res, ok := fps.subPath.(meta.Meta_FieldPath) 508 return res, ok 509 } 510 func (fps *DeviceHardware_FieldSubPath) AsStatusSubPath() (DeviceHardwareStatus_FieldPath, bool) { 511 res, ok := fps.subPath.(DeviceHardwareStatus_FieldPath) 512 return res, ok 513 } 514 515 // String returns path representation in proto convention 516 func (fps *DeviceHardware_FieldSubPath) String() string { 517 return fps.selector.String() + "." + fps.subPath.String() 518 } 519 520 // JSONString returns path representation is JSON convention 521 func (fps *DeviceHardware_FieldSubPath) JSONString() string { 522 return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString() 523 } 524 525 // Get returns all values pointed by selected field from source DeviceHardware 526 func (fps *DeviceHardware_FieldSubPath) Get(source *DeviceHardware) (values []interface{}) { 527 switch fps.selector { 528 case DeviceHardware_FieldPathSelectorMetadata: 529 values = append(values, fps.subPath.GetRaw(source.GetMetadata())...) 530 case DeviceHardware_FieldPathSelectorStatus: 531 values = append(values, fps.subPath.GetRaw(source.GetStatus())...) 532 default: 533 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fps.selector)) 534 } 535 return 536 } 537 538 func (fps *DeviceHardware_FieldSubPath) GetRaw(source proto.Message) []interface{} { 539 return fps.Get(source.(*DeviceHardware)) 540 } 541 542 // GetSingle returns value of selected field from source DeviceHardware 543 func (fps *DeviceHardware_FieldSubPath) GetSingle(source *DeviceHardware) (interface{}, bool) { 544 switch fps.selector { 545 case DeviceHardware_FieldPathSelectorMetadata: 546 if source.GetMetadata() == nil { 547 return nil, false 548 } 549 return fps.subPath.GetSingleRaw(source.GetMetadata()) 550 case DeviceHardware_FieldPathSelectorStatus: 551 if source.GetStatus() == nil { 552 return nil, false 553 } 554 return fps.subPath.GetSingleRaw(source.GetStatus()) 555 default: 556 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fps.selector)) 557 } 558 } 559 560 func (fps *DeviceHardware_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 561 return fps.GetSingle(source.(*DeviceHardware)) 562 } 563 564 // GetDefault returns a default value of the field type 565 func (fps *DeviceHardware_FieldSubPath) GetDefault() interface{} { 566 return fps.subPath.GetDefault() 567 } 568 569 func (fps *DeviceHardware_FieldSubPath) ClearValue(item *DeviceHardware) { 570 if item != nil { 571 switch fps.selector { 572 case DeviceHardware_FieldPathSelectorMetadata: 573 fps.subPath.ClearValueRaw(item.Metadata) 574 case DeviceHardware_FieldPathSelectorStatus: 575 fps.subPath.ClearValueRaw(item.Status) 576 default: 577 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fps.selector)) 578 } 579 } 580 } 581 582 func (fps *DeviceHardware_FieldSubPath) ClearValueRaw(item proto.Message) { 583 fps.ClearValue(item.(*DeviceHardware)) 584 } 585 586 // IsLeaf - whether field path is holds simple value 587 func (fps *DeviceHardware_FieldSubPath) IsLeaf() bool { 588 return fps.subPath.IsLeaf() 589 } 590 591 func (fps *DeviceHardware_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 592 iPaths := []gotenobject.FieldPath{&DeviceHardware_FieldTerminalPath{selector: fps.selector}} 593 iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...) 594 return iPaths 595 } 596 597 func (fps *DeviceHardware_FieldSubPath) WithIValue(value interface{}) DeviceHardware_FieldPathValue { 598 return &DeviceHardware_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)} 599 } 600 601 func (fps *DeviceHardware_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 602 return fps.WithIValue(value) 603 } 604 605 func (fps *DeviceHardware_FieldSubPath) WithIArrayOfValues(values interface{}) DeviceHardware_FieldPathArrayOfValues { 606 return &DeviceHardware_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)} 607 } 608 609 func (fps *DeviceHardware_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 610 return fps.WithIArrayOfValues(values) 611 } 612 613 func (fps *DeviceHardware_FieldSubPath) WithIArrayItemValue(value interface{}) DeviceHardware_FieldPathArrayItemValue { 614 return &DeviceHardware_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)} 615 } 616 617 func (fps *DeviceHardware_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 618 return fps.WithIArrayItemValue(value) 619 } 620 621 // DeviceHardware_FieldPathValue allows storing values for DeviceHardware fields according to their type 622 type DeviceHardware_FieldPathValue interface { 623 DeviceHardware_FieldPath 624 gotenobject.FieldPathValue 625 SetTo(target **DeviceHardware) 626 CompareWith(*DeviceHardware) (cmp int, comparable bool) 627 } 628 629 func ParseDeviceHardware_FieldPathValue(pathStr, valueStr string) (DeviceHardware_FieldPathValue, error) { 630 fp, err := ParseDeviceHardware_FieldPath(pathStr) 631 if err != nil { 632 return nil, err 633 } 634 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 635 if err != nil { 636 return nil, status.Errorf(codes.InvalidArgument, "error parsing DeviceHardware field path value from %s: %v", valueStr, err) 637 } 638 return fpv.(DeviceHardware_FieldPathValue), nil 639 } 640 641 func MustParseDeviceHardware_FieldPathValue(pathStr, valueStr string) DeviceHardware_FieldPathValue { 642 fpv, err := ParseDeviceHardware_FieldPathValue(pathStr, valueStr) 643 if err != nil { 644 panic(err) 645 } 646 return fpv 647 } 648 649 type DeviceHardware_FieldTerminalPathValue struct { 650 DeviceHardware_FieldTerminalPath 651 value interface{} 652 } 653 654 var _ DeviceHardware_FieldPathValue = (*DeviceHardware_FieldTerminalPathValue)(nil) 655 656 // GetRawValue returns raw value stored under selected path for 'DeviceHardware' as interface{} 657 func (fpv *DeviceHardware_FieldTerminalPathValue) GetRawValue() interface{} { 658 return fpv.value 659 } 660 func (fpv *DeviceHardware_FieldTerminalPathValue) AsNameValue() (*Name, bool) { 661 res, ok := fpv.value.(*Name) 662 return res, ok 663 } 664 func (fpv *DeviceHardware_FieldTerminalPathValue) AsMetadataValue() (*meta.Meta, bool) { 665 res, ok := fpv.value.(*meta.Meta) 666 return res, ok 667 } 668 func (fpv *DeviceHardware_FieldTerminalPathValue) AsDisplayNameValue() (string, bool) { 669 res, ok := fpv.value.(string) 670 return res, ok 671 } 672 func (fpv *DeviceHardware_FieldTerminalPathValue) AsSerialNumberValue() (string, bool) { 673 res, ok := fpv.value.(string) 674 return res, ok 675 } 676 func (fpv *DeviceHardware_FieldTerminalPathValue) AsManufacturerValue() (string, bool) { 677 res, ok := fpv.value.(string) 678 return res, ok 679 } 680 func (fpv *DeviceHardware_FieldTerminalPathValue) AsProductNameValue() (string, bool) { 681 res, ok := fpv.value.(string) 682 return res, ok 683 } 684 func (fpv *DeviceHardware_FieldTerminalPathValue) AsMacAddressValue() ([]string, bool) { 685 res, ok := fpv.value.([]string) 686 return res, ok 687 } 688 func (fpv *DeviceHardware_FieldTerminalPathValue) AsSimIccidValue() (string, bool) { 689 res, ok := fpv.value.(string) 690 return res, ok 691 } 692 func (fpv *DeviceHardware_FieldTerminalPathValue) AsImeiValue() (string, bool) { 693 res, ok := fpv.value.(string) 694 return res, ok 695 } 696 func (fpv *DeviceHardware_FieldTerminalPathValue) AsAssociatedProvisioningPolicyNameValue() (*provisioning_policy.Reference, bool) { 697 res, ok := fpv.value.(*provisioning_policy.Reference) 698 return res, ok 699 } 700 func (fpv *DeviceHardware_FieldTerminalPathValue) AsAssociatedDeviceValue() (*device.Reference, bool) { 701 res, ok := fpv.value.(*device.Reference) 702 return res, ok 703 } 704 func (fpv *DeviceHardware_FieldTerminalPathValue) AsAssociatedSimCardValue() (*cellular_api_sim_card.Reference, bool) { 705 res, ok := fpv.value.(*cellular_api_sim_card.Reference) 706 return res, ok 707 } 708 func (fpv *DeviceHardware_FieldTerminalPathValue) AsStatusValue() (*DeviceHardware_Status, bool) { 709 res, ok := fpv.value.(*DeviceHardware_Status) 710 return res, ok 711 } 712 713 // SetTo stores value for selected field for object DeviceHardware 714 func (fpv *DeviceHardware_FieldTerminalPathValue) SetTo(target **DeviceHardware) { 715 if *target == nil { 716 *target = new(DeviceHardware) 717 } 718 switch fpv.selector { 719 case DeviceHardware_FieldPathSelectorName: 720 (*target).Name = fpv.value.(*Name) 721 case DeviceHardware_FieldPathSelectorMetadata: 722 (*target).Metadata = fpv.value.(*meta.Meta) 723 case DeviceHardware_FieldPathSelectorDisplayName: 724 (*target).DisplayName = fpv.value.(string) 725 case DeviceHardware_FieldPathSelectorSerialNumber: 726 (*target).SerialNumber = fpv.value.(string) 727 case DeviceHardware_FieldPathSelectorManufacturer: 728 (*target).Manufacturer = fpv.value.(string) 729 case DeviceHardware_FieldPathSelectorProductName: 730 (*target).ProductName = fpv.value.(string) 731 case DeviceHardware_FieldPathSelectorMacAddress: 732 (*target).MacAddress = fpv.value.([]string) 733 case DeviceHardware_FieldPathSelectorSimIccid: 734 (*target).SimIccid = fpv.value.(string) 735 case DeviceHardware_FieldPathSelectorImei: 736 (*target).Imei = fpv.value.(string) 737 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 738 (*target).AssociatedProvisioningPolicyName = fpv.value.(*provisioning_policy.Reference) 739 case DeviceHardware_FieldPathSelectorAssociatedDevice: 740 (*target).AssociatedDevice = fpv.value.(*device.Reference) 741 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 742 (*target).AssociatedSimCard = fpv.value.(*cellular_api_sim_card.Reference) 743 case DeviceHardware_FieldPathSelectorStatus: 744 (*target).Status = fpv.value.(*DeviceHardware_Status) 745 default: 746 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fpv.selector)) 747 } 748 } 749 750 func (fpv *DeviceHardware_FieldTerminalPathValue) SetToRaw(target proto.Message) { 751 typedObject := target.(*DeviceHardware) 752 fpv.SetTo(&typedObject) 753 } 754 755 // CompareWith compares value in the 'DeviceHardware_FieldTerminalPathValue' with the value under path in 'DeviceHardware'. 756 func (fpv *DeviceHardware_FieldTerminalPathValue) CompareWith(source *DeviceHardware) (int, bool) { 757 switch fpv.selector { 758 case DeviceHardware_FieldPathSelectorName: 759 leftValue := fpv.value.(*Name) 760 rightValue := source.GetName() 761 if leftValue == nil { 762 if rightValue != nil { 763 return -1, true 764 } 765 return 0, true 766 } 767 if rightValue == nil { 768 return 1, true 769 } 770 if leftValue.String() == rightValue.String() { 771 return 0, true 772 } else if leftValue.String() < rightValue.String() { 773 return -1, true 774 } else { 775 return 1, true 776 } 777 case DeviceHardware_FieldPathSelectorMetadata: 778 return 0, false 779 case DeviceHardware_FieldPathSelectorDisplayName: 780 leftValue := fpv.value.(string) 781 rightValue := source.GetDisplayName() 782 if (leftValue) == (rightValue) { 783 return 0, true 784 } else if (leftValue) < (rightValue) { 785 return -1, true 786 } else { 787 return 1, true 788 } 789 case DeviceHardware_FieldPathSelectorSerialNumber: 790 leftValue := fpv.value.(string) 791 rightValue := source.GetSerialNumber() 792 if (leftValue) == (rightValue) { 793 return 0, true 794 } else if (leftValue) < (rightValue) { 795 return -1, true 796 } else { 797 return 1, true 798 } 799 case DeviceHardware_FieldPathSelectorManufacturer: 800 leftValue := fpv.value.(string) 801 rightValue := source.GetManufacturer() 802 if (leftValue) == (rightValue) { 803 return 0, true 804 } else if (leftValue) < (rightValue) { 805 return -1, true 806 } else { 807 return 1, true 808 } 809 case DeviceHardware_FieldPathSelectorProductName: 810 leftValue := fpv.value.(string) 811 rightValue := source.GetProductName() 812 if (leftValue) == (rightValue) { 813 return 0, true 814 } else if (leftValue) < (rightValue) { 815 return -1, true 816 } else { 817 return 1, true 818 } 819 case DeviceHardware_FieldPathSelectorMacAddress: 820 return 0, false 821 case DeviceHardware_FieldPathSelectorSimIccid: 822 leftValue := fpv.value.(string) 823 rightValue := source.GetSimIccid() 824 if (leftValue) == (rightValue) { 825 return 0, true 826 } else if (leftValue) < (rightValue) { 827 return -1, true 828 } else { 829 return 1, true 830 } 831 case DeviceHardware_FieldPathSelectorImei: 832 leftValue := fpv.value.(string) 833 rightValue := source.GetImei() 834 if (leftValue) == (rightValue) { 835 return 0, true 836 } else if (leftValue) < (rightValue) { 837 return -1, true 838 } else { 839 return 1, true 840 } 841 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 842 leftValue := fpv.value.(*provisioning_policy.Reference) 843 rightValue := source.GetAssociatedProvisioningPolicyName() 844 if leftValue == nil { 845 if rightValue != nil { 846 return -1, true 847 } 848 return 0, true 849 } 850 if rightValue == nil { 851 return 1, true 852 } 853 if leftValue.String() == rightValue.String() { 854 return 0, true 855 } else if leftValue.String() < rightValue.String() { 856 return -1, true 857 } else { 858 return 1, true 859 } 860 case DeviceHardware_FieldPathSelectorAssociatedDevice: 861 leftValue := fpv.value.(*device.Reference) 862 rightValue := source.GetAssociatedDevice() 863 if leftValue == nil { 864 if rightValue != nil { 865 return -1, true 866 } 867 return 0, true 868 } 869 if rightValue == nil { 870 return 1, true 871 } 872 if leftValue.String() == rightValue.String() { 873 return 0, true 874 } else if leftValue.String() < rightValue.String() { 875 return -1, true 876 } else { 877 return 1, true 878 } 879 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 880 leftValue := fpv.value.(*cellular_api_sim_card.Reference) 881 rightValue := source.GetAssociatedSimCard() 882 if leftValue == nil { 883 if rightValue != nil { 884 return -1, true 885 } 886 return 0, true 887 } 888 if rightValue == nil { 889 return 1, true 890 } 891 if leftValue.String() == rightValue.String() { 892 return 0, true 893 } else if leftValue.String() < rightValue.String() { 894 return -1, true 895 } else { 896 return 1, true 897 } 898 case DeviceHardware_FieldPathSelectorStatus: 899 return 0, false 900 default: 901 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fpv.selector)) 902 } 903 } 904 905 func (fpv *DeviceHardware_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 906 return fpv.CompareWith(source.(*DeviceHardware)) 907 } 908 909 type DeviceHardware_FieldSubPathValue struct { 910 DeviceHardware_FieldPath 911 subPathValue gotenobject.FieldPathValue 912 } 913 914 var _ DeviceHardware_FieldPathValue = (*DeviceHardware_FieldSubPathValue)(nil) 915 916 func (fpvs *DeviceHardware_FieldSubPathValue) AsMetadataPathValue() (meta.Meta_FieldPathValue, bool) { 917 res, ok := fpvs.subPathValue.(meta.Meta_FieldPathValue) 918 return res, ok 919 } 920 func (fpvs *DeviceHardware_FieldSubPathValue) AsStatusPathValue() (DeviceHardwareStatus_FieldPathValue, bool) { 921 res, ok := fpvs.subPathValue.(DeviceHardwareStatus_FieldPathValue) 922 return res, ok 923 } 924 925 func (fpvs *DeviceHardware_FieldSubPathValue) SetTo(target **DeviceHardware) { 926 if *target == nil { 927 *target = new(DeviceHardware) 928 } 929 switch fpvs.Selector() { 930 case DeviceHardware_FieldPathSelectorMetadata: 931 fpvs.subPathValue.(meta.Meta_FieldPathValue).SetTo(&(*target).Metadata) 932 case DeviceHardware_FieldPathSelectorStatus: 933 fpvs.subPathValue.(DeviceHardwareStatus_FieldPathValue).SetTo(&(*target).Status) 934 default: 935 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fpvs.Selector())) 936 } 937 } 938 939 func (fpvs *DeviceHardware_FieldSubPathValue) SetToRaw(target proto.Message) { 940 typedObject := target.(*DeviceHardware) 941 fpvs.SetTo(&typedObject) 942 } 943 944 func (fpvs *DeviceHardware_FieldSubPathValue) GetRawValue() interface{} { 945 return fpvs.subPathValue.GetRawValue() 946 } 947 948 func (fpvs *DeviceHardware_FieldSubPathValue) CompareWith(source *DeviceHardware) (int, bool) { 949 switch fpvs.Selector() { 950 case DeviceHardware_FieldPathSelectorMetadata: 951 return fpvs.subPathValue.(meta.Meta_FieldPathValue).CompareWith(source.GetMetadata()) 952 case DeviceHardware_FieldPathSelectorStatus: 953 return fpvs.subPathValue.(DeviceHardwareStatus_FieldPathValue).CompareWith(source.GetStatus()) 954 default: 955 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fpvs.Selector())) 956 } 957 } 958 959 func (fpvs *DeviceHardware_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) { 960 return fpvs.CompareWith(source.(*DeviceHardware)) 961 } 962 963 // DeviceHardware_FieldPathArrayItemValue allows storing single item in Path-specific values for DeviceHardware according to their type 964 // Present only for array (repeated) types. 965 type DeviceHardware_FieldPathArrayItemValue interface { 966 gotenobject.FieldPathArrayItemValue 967 DeviceHardware_FieldPath 968 ContainsValue(*DeviceHardware) bool 969 } 970 971 // ParseDeviceHardware_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 972 func ParseDeviceHardware_FieldPathArrayItemValue(pathStr, valueStr string) (DeviceHardware_FieldPathArrayItemValue, error) { 973 fp, err := ParseDeviceHardware_FieldPath(pathStr) 974 if err != nil { 975 return nil, err 976 } 977 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 978 if err != nil { 979 return nil, status.Errorf(codes.InvalidArgument, "error parsing DeviceHardware field path array item value from %s: %v", valueStr, err) 980 } 981 return fpaiv.(DeviceHardware_FieldPathArrayItemValue), nil 982 } 983 984 func MustParseDeviceHardware_FieldPathArrayItemValue(pathStr, valueStr string) DeviceHardware_FieldPathArrayItemValue { 985 fpaiv, err := ParseDeviceHardware_FieldPathArrayItemValue(pathStr, valueStr) 986 if err != nil { 987 panic(err) 988 } 989 return fpaiv 990 } 991 992 type DeviceHardware_FieldTerminalPathArrayItemValue struct { 993 DeviceHardware_FieldTerminalPath 994 value interface{} 995 } 996 997 var _ DeviceHardware_FieldPathArrayItemValue = (*DeviceHardware_FieldTerminalPathArrayItemValue)(nil) 998 999 // GetRawValue returns stored element value for array in object DeviceHardware as interface{} 1000 func (fpaiv *DeviceHardware_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 1001 return fpaiv.value 1002 } 1003 func (fpaiv *DeviceHardware_FieldTerminalPathArrayItemValue) AsMacAddressItemValue() (string, bool) { 1004 res, ok := fpaiv.value.(string) 1005 return res, ok 1006 } 1007 1008 func (fpaiv *DeviceHardware_FieldTerminalPathArrayItemValue) GetSingle(source *DeviceHardware) (interface{}, bool) { 1009 return nil, false 1010 } 1011 1012 func (fpaiv *DeviceHardware_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 1013 return fpaiv.GetSingle(source.(*DeviceHardware)) 1014 } 1015 1016 // Contains returns a boolean indicating if value that is being held is present in given 'DeviceHardware' 1017 func (fpaiv *DeviceHardware_FieldTerminalPathArrayItemValue) ContainsValue(source *DeviceHardware) bool { 1018 slice := fpaiv.DeviceHardware_FieldTerminalPath.Get(source) 1019 for _, v := range slice { 1020 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 1021 if proto.Equal(asProtoMsg, v.(proto.Message)) { 1022 return true 1023 } 1024 } else if reflect.DeepEqual(v, fpaiv.value) { 1025 return true 1026 } 1027 } 1028 return false 1029 } 1030 1031 type DeviceHardware_FieldSubPathArrayItemValue struct { 1032 DeviceHardware_FieldPath 1033 subPathItemValue gotenobject.FieldPathArrayItemValue 1034 } 1035 1036 // GetRawValue returns stored array item value 1037 func (fpaivs *DeviceHardware_FieldSubPathArrayItemValue) GetRawItemValue() interface{} { 1038 return fpaivs.subPathItemValue.GetRawItemValue() 1039 } 1040 func (fpaivs *DeviceHardware_FieldSubPathArrayItemValue) AsMetadataPathItemValue() (meta.Meta_FieldPathArrayItemValue, bool) { 1041 res, ok := fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue) 1042 return res, ok 1043 } 1044 func (fpaivs *DeviceHardware_FieldSubPathArrayItemValue) AsStatusPathItemValue() (DeviceHardwareStatus_FieldPathArrayItemValue, bool) { 1045 res, ok := fpaivs.subPathItemValue.(DeviceHardwareStatus_FieldPathArrayItemValue) 1046 return res, ok 1047 } 1048 1049 // Contains returns a boolean indicating if value that is being held is present in given 'DeviceHardware' 1050 func (fpaivs *DeviceHardware_FieldSubPathArrayItemValue) ContainsValue(source *DeviceHardware) bool { 1051 switch fpaivs.Selector() { 1052 case DeviceHardware_FieldPathSelectorMetadata: 1053 return fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue).ContainsValue(source.GetMetadata()) 1054 case DeviceHardware_FieldPathSelectorStatus: 1055 return fpaivs.subPathItemValue.(DeviceHardwareStatus_FieldPathArrayItemValue).ContainsValue(source.GetStatus()) 1056 default: 1057 panic(fmt.Sprintf("Invalid selector for DeviceHardware: %d", fpaivs.Selector())) 1058 } 1059 } 1060 1061 // DeviceHardware_FieldPathArrayOfValues allows storing slice of values for DeviceHardware fields according to their type 1062 type DeviceHardware_FieldPathArrayOfValues interface { 1063 gotenobject.FieldPathArrayOfValues 1064 DeviceHardware_FieldPath 1065 } 1066 1067 func ParseDeviceHardware_FieldPathArrayOfValues(pathStr, valuesStr string) (DeviceHardware_FieldPathArrayOfValues, error) { 1068 fp, err := ParseDeviceHardware_FieldPath(pathStr) 1069 if err != nil { 1070 return nil, err 1071 } 1072 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 1073 if err != nil { 1074 return nil, status.Errorf(codes.InvalidArgument, "error parsing DeviceHardware field path array of values from %s: %v", valuesStr, err) 1075 } 1076 return fpaov.(DeviceHardware_FieldPathArrayOfValues), nil 1077 } 1078 1079 func MustParseDeviceHardware_FieldPathArrayOfValues(pathStr, valuesStr string) DeviceHardware_FieldPathArrayOfValues { 1080 fpaov, err := ParseDeviceHardware_FieldPathArrayOfValues(pathStr, valuesStr) 1081 if err != nil { 1082 panic(err) 1083 } 1084 return fpaov 1085 } 1086 1087 type DeviceHardware_FieldTerminalPathArrayOfValues struct { 1088 DeviceHardware_FieldTerminalPath 1089 values interface{} 1090 } 1091 1092 var _ DeviceHardware_FieldPathArrayOfValues = (*DeviceHardware_FieldTerminalPathArrayOfValues)(nil) 1093 1094 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 1095 switch fpaov.selector { 1096 case DeviceHardware_FieldPathSelectorName: 1097 for _, v := range fpaov.values.([]*Name) { 1098 values = append(values, v) 1099 } 1100 case DeviceHardware_FieldPathSelectorMetadata: 1101 for _, v := range fpaov.values.([]*meta.Meta) { 1102 values = append(values, v) 1103 } 1104 case DeviceHardware_FieldPathSelectorDisplayName: 1105 for _, v := range fpaov.values.([]string) { 1106 values = append(values, v) 1107 } 1108 case DeviceHardware_FieldPathSelectorSerialNumber: 1109 for _, v := range fpaov.values.([]string) { 1110 values = append(values, v) 1111 } 1112 case DeviceHardware_FieldPathSelectorManufacturer: 1113 for _, v := range fpaov.values.([]string) { 1114 values = append(values, v) 1115 } 1116 case DeviceHardware_FieldPathSelectorProductName: 1117 for _, v := range fpaov.values.([]string) { 1118 values = append(values, v) 1119 } 1120 case DeviceHardware_FieldPathSelectorMacAddress: 1121 for _, v := range fpaov.values.([][]string) { 1122 values = append(values, v) 1123 } 1124 case DeviceHardware_FieldPathSelectorSimIccid: 1125 for _, v := range fpaov.values.([]string) { 1126 values = append(values, v) 1127 } 1128 case DeviceHardware_FieldPathSelectorImei: 1129 for _, v := range fpaov.values.([]string) { 1130 values = append(values, v) 1131 } 1132 case DeviceHardware_FieldPathSelectorAssociatedProvisioningPolicyName: 1133 for _, v := range fpaov.values.([]*provisioning_policy.Reference) { 1134 values = append(values, v) 1135 } 1136 case DeviceHardware_FieldPathSelectorAssociatedDevice: 1137 for _, v := range fpaov.values.([]*device.Reference) { 1138 values = append(values, v) 1139 } 1140 case DeviceHardware_FieldPathSelectorAssociatedSimCard: 1141 for _, v := range fpaov.values.([]*cellular_api_sim_card.Reference) { 1142 values = append(values, v) 1143 } 1144 case DeviceHardware_FieldPathSelectorStatus: 1145 for _, v := range fpaov.values.([]*DeviceHardware_Status) { 1146 values = append(values, v) 1147 } 1148 } 1149 return 1150 } 1151 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) { 1152 res, ok := fpaov.values.([]*Name) 1153 return res, ok 1154 } 1155 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsMetadataArrayOfValues() ([]*meta.Meta, bool) { 1156 res, ok := fpaov.values.([]*meta.Meta) 1157 return res, ok 1158 } 1159 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsDisplayNameArrayOfValues() ([]string, bool) { 1160 res, ok := fpaov.values.([]string) 1161 return res, ok 1162 } 1163 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsSerialNumberArrayOfValues() ([]string, bool) { 1164 res, ok := fpaov.values.([]string) 1165 return res, ok 1166 } 1167 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsManufacturerArrayOfValues() ([]string, bool) { 1168 res, ok := fpaov.values.([]string) 1169 return res, ok 1170 } 1171 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsProductNameArrayOfValues() ([]string, bool) { 1172 res, ok := fpaov.values.([]string) 1173 return res, ok 1174 } 1175 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsMacAddressArrayOfValues() ([][]string, bool) { 1176 res, ok := fpaov.values.([][]string) 1177 return res, ok 1178 } 1179 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsSimIccidArrayOfValues() ([]string, bool) { 1180 res, ok := fpaov.values.([]string) 1181 return res, ok 1182 } 1183 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsImeiArrayOfValues() ([]string, bool) { 1184 res, ok := fpaov.values.([]string) 1185 return res, ok 1186 } 1187 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsAssociatedProvisioningPolicyNameArrayOfValues() ([]*provisioning_policy.Reference, bool) { 1188 res, ok := fpaov.values.([]*provisioning_policy.Reference) 1189 return res, ok 1190 } 1191 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsAssociatedDeviceArrayOfValues() ([]*device.Reference, bool) { 1192 res, ok := fpaov.values.([]*device.Reference) 1193 return res, ok 1194 } 1195 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsAssociatedSimCardArrayOfValues() ([]*cellular_api_sim_card.Reference, bool) { 1196 res, ok := fpaov.values.([]*cellular_api_sim_card.Reference) 1197 return res, ok 1198 } 1199 func (fpaov *DeviceHardware_FieldTerminalPathArrayOfValues) AsStatusArrayOfValues() ([]*DeviceHardware_Status, bool) { 1200 res, ok := fpaov.values.([]*DeviceHardware_Status) 1201 return res, ok 1202 } 1203 1204 type DeviceHardware_FieldSubPathArrayOfValues struct { 1205 DeviceHardware_FieldPath 1206 subPathArrayOfValues gotenobject.FieldPathArrayOfValues 1207 } 1208 1209 var _ DeviceHardware_FieldPathArrayOfValues = (*DeviceHardware_FieldSubPathArrayOfValues)(nil) 1210 1211 func (fpsaov *DeviceHardware_FieldSubPathArrayOfValues) GetRawValues() []interface{} { 1212 return fpsaov.subPathArrayOfValues.GetRawValues() 1213 } 1214 func (fpsaov *DeviceHardware_FieldSubPathArrayOfValues) AsMetadataPathArrayOfValues() (meta.Meta_FieldPathArrayOfValues, bool) { 1215 res, ok := fpsaov.subPathArrayOfValues.(meta.Meta_FieldPathArrayOfValues) 1216 return res, ok 1217 } 1218 func (fpsaov *DeviceHardware_FieldSubPathArrayOfValues) AsStatusPathArrayOfValues() (DeviceHardwareStatus_FieldPathArrayOfValues, bool) { 1219 res, ok := fpsaov.subPathArrayOfValues.(DeviceHardwareStatus_FieldPathArrayOfValues) 1220 return res, ok 1221 } 1222 1223 // FieldPath provides implementation to handle 1224 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 1225 type DeviceHardwareStatus_FieldPath interface { 1226 gotenobject.FieldPath 1227 Selector() DeviceHardwareStatus_FieldPathSelector 1228 Get(source *DeviceHardware_Status) []interface{} 1229 GetSingle(source *DeviceHardware_Status) (interface{}, bool) 1230 ClearValue(item *DeviceHardware_Status) 1231 1232 // Those methods build corresponding DeviceHardwareStatus_FieldPathValue 1233 // (or array of values) and holds passed value. Panics if injected type is incorrect. 1234 WithIValue(value interface{}) DeviceHardwareStatus_FieldPathValue 1235 WithIArrayOfValues(values interface{}) DeviceHardwareStatus_FieldPathArrayOfValues 1236 WithIArrayItemValue(value interface{}) DeviceHardwareStatus_FieldPathArrayItemValue 1237 } 1238 1239 type DeviceHardwareStatus_FieldPathSelector int32 1240 1241 const ( 1242 DeviceHardwareStatus_FieldPathSelectorProvisioningState DeviceHardwareStatus_FieldPathSelector = 0 1243 ) 1244 1245 func (s DeviceHardwareStatus_FieldPathSelector) String() string { 1246 switch s { 1247 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1248 return "provisioning_state" 1249 default: 1250 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", s)) 1251 } 1252 } 1253 1254 func BuildDeviceHardwareStatus_FieldPath(fp gotenobject.RawFieldPath) (DeviceHardwareStatus_FieldPath, error) { 1255 if len(fp) == 0 { 1256 return nil, status.Error(codes.InvalidArgument, "empty field path for object DeviceHardware_Status") 1257 } 1258 if len(fp) == 1 { 1259 switch fp[0] { 1260 case "provisioning_state", "provisioningState", "provisioning-state": 1261 return &DeviceHardwareStatus_FieldTerminalPath{selector: DeviceHardwareStatus_FieldPathSelectorProvisioningState}, nil 1262 } 1263 } 1264 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object DeviceHardware_Status", fp) 1265 } 1266 1267 func ParseDeviceHardwareStatus_FieldPath(rawField string) (DeviceHardwareStatus_FieldPath, error) { 1268 fp, err := gotenobject.ParseRawFieldPath(rawField) 1269 if err != nil { 1270 return nil, err 1271 } 1272 return BuildDeviceHardwareStatus_FieldPath(fp) 1273 } 1274 1275 func MustParseDeviceHardwareStatus_FieldPath(rawField string) DeviceHardwareStatus_FieldPath { 1276 fp, err := ParseDeviceHardwareStatus_FieldPath(rawField) 1277 if err != nil { 1278 panic(err) 1279 } 1280 return fp 1281 } 1282 1283 type DeviceHardwareStatus_FieldTerminalPath struct { 1284 selector DeviceHardwareStatus_FieldPathSelector 1285 } 1286 1287 var _ DeviceHardwareStatus_FieldPath = (*DeviceHardwareStatus_FieldTerminalPath)(nil) 1288 1289 func (fp *DeviceHardwareStatus_FieldTerminalPath) Selector() DeviceHardwareStatus_FieldPathSelector { 1290 return fp.selector 1291 } 1292 1293 // String returns path representation in proto convention 1294 func (fp *DeviceHardwareStatus_FieldTerminalPath) String() string { 1295 return fp.selector.String() 1296 } 1297 1298 // JSONString returns path representation is JSON convention 1299 func (fp *DeviceHardwareStatus_FieldTerminalPath) JSONString() string { 1300 return strcase.ToLowerCamel(fp.String()) 1301 } 1302 1303 // Get returns all values pointed by specific field from source DeviceHardware_Status 1304 func (fp *DeviceHardwareStatus_FieldTerminalPath) Get(source *DeviceHardware_Status) (values []interface{}) { 1305 if source != nil { 1306 switch fp.selector { 1307 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1308 values = append(values, source.ProvisioningState) 1309 default: 1310 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fp.selector)) 1311 } 1312 } 1313 return 1314 } 1315 1316 func (fp *DeviceHardwareStatus_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 1317 return fp.Get(source.(*DeviceHardware_Status)) 1318 } 1319 1320 // GetSingle returns value pointed by specific field of from source DeviceHardware_Status 1321 func (fp *DeviceHardwareStatus_FieldTerminalPath) GetSingle(source *DeviceHardware_Status) (interface{}, bool) { 1322 switch fp.selector { 1323 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1324 return source.GetProvisioningState(), source != nil 1325 default: 1326 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fp.selector)) 1327 } 1328 } 1329 1330 func (fp *DeviceHardwareStatus_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 1331 return fp.GetSingle(source.(*DeviceHardware_Status)) 1332 } 1333 1334 // GetDefault returns a default value of the field type 1335 func (fp *DeviceHardwareStatus_FieldTerminalPath) GetDefault() interface{} { 1336 switch fp.selector { 1337 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1338 return DeviceHardware_Status_UNKNOWN 1339 default: 1340 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fp.selector)) 1341 } 1342 } 1343 1344 func (fp *DeviceHardwareStatus_FieldTerminalPath) ClearValue(item *DeviceHardware_Status) { 1345 if item != nil { 1346 switch fp.selector { 1347 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1348 item.ProvisioningState = DeviceHardware_Status_UNKNOWN 1349 default: 1350 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fp.selector)) 1351 } 1352 } 1353 } 1354 1355 func (fp *DeviceHardwareStatus_FieldTerminalPath) ClearValueRaw(item proto.Message) { 1356 fp.ClearValue(item.(*DeviceHardware_Status)) 1357 } 1358 1359 // IsLeaf - whether field path is holds simple value 1360 func (fp *DeviceHardwareStatus_FieldTerminalPath) IsLeaf() bool { 1361 return fp.selector == DeviceHardwareStatus_FieldPathSelectorProvisioningState 1362 } 1363 1364 func (fp *DeviceHardwareStatus_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 1365 return []gotenobject.FieldPath{fp} 1366 } 1367 1368 func (fp *DeviceHardwareStatus_FieldTerminalPath) WithIValue(value interface{}) DeviceHardwareStatus_FieldPathValue { 1369 switch fp.selector { 1370 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1371 return &DeviceHardwareStatus_FieldTerminalPathValue{DeviceHardwareStatus_FieldTerminalPath: *fp, value: value.(DeviceHardware_Status_PROVISIONING_STATE)} 1372 default: 1373 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fp.selector)) 1374 } 1375 } 1376 1377 func (fp *DeviceHardwareStatus_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 1378 return fp.WithIValue(value) 1379 } 1380 1381 func (fp *DeviceHardwareStatus_FieldTerminalPath) WithIArrayOfValues(values interface{}) DeviceHardwareStatus_FieldPathArrayOfValues { 1382 fpaov := &DeviceHardwareStatus_FieldTerminalPathArrayOfValues{DeviceHardwareStatus_FieldTerminalPath: *fp} 1383 switch fp.selector { 1384 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1385 return &DeviceHardwareStatus_FieldTerminalPathArrayOfValues{DeviceHardwareStatus_FieldTerminalPath: *fp, values: values.([]DeviceHardware_Status_PROVISIONING_STATE)} 1386 default: 1387 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fp.selector)) 1388 } 1389 return fpaov 1390 } 1391 1392 func (fp *DeviceHardwareStatus_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 1393 return fp.WithIArrayOfValues(values) 1394 } 1395 1396 func (fp *DeviceHardwareStatus_FieldTerminalPath) WithIArrayItemValue(value interface{}) DeviceHardwareStatus_FieldPathArrayItemValue { 1397 switch fp.selector { 1398 default: 1399 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fp.selector)) 1400 } 1401 } 1402 1403 func (fp *DeviceHardwareStatus_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 1404 return fp.WithIArrayItemValue(value) 1405 } 1406 1407 // DeviceHardwareStatus_FieldPathValue allows storing values for Status fields according to their type 1408 type DeviceHardwareStatus_FieldPathValue interface { 1409 DeviceHardwareStatus_FieldPath 1410 gotenobject.FieldPathValue 1411 SetTo(target **DeviceHardware_Status) 1412 CompareWith(*DeviceHardware_Status) (cmp int, comparable bool) 1413 } 1414 1415 func ParseDeviceHardwareStatus_FieldPathValue(pathStr, valueStr string) (DeviceHardwareStatus_FieldPathValue, error) { 1416 fp, err := ParseDeviceHardwareStatus_FieldPath(pathStr) 1417 if err != nil { 1418 return nil, err 1419 } 1420 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 1421 if err != nil { 1422 return nil, status.Errorf(codes.InvalidArgument, "error parsing Status field path value from %s: %v", valueStr, err) 1423 } 1424 return fpv.(DeviceHardwareStatus_FieldPathValue), nil 1425 } 1426 1427 func MustParseDeviceHardwareStatus_FieldPathValue(pathStr, valueStr string) DeviceHardwareStatus_FieldPathValue { 1428 fpv, err := ParseDeviceHardwareStatus_FieldPathValue(pathStr, valueStr) 1429 if err != nil { 1430 panic(err) 1431 } 1432 return fpv 1433 } 1434 1435 type DeviceHardwareStatus_FieldTerminalPathValue struct { 1436 DeviceHardwareStatus_FieldTerminalPath 1437 value interface{} 1438 } 1439 1440 var _ DeviceHardwareStatus_FieldPathValue = (*DeviceHardwareStatus_FieldTerminalPathValue)(nil) 1441 1442 // GetRawValue returns raw value stored under selected path for 'Status' as interface{} 1443 func (fpv *DeviceHardwareStatus_FieldTerminalPathValue) GetRawValue() interface{} { 1444 return fpv.value 1445 } 1446 func (fpv *DeviceHardwareStatus_FieldTerminalPathValue) AsProvisioningStateValue() (DeviceHardware_Status_PROVISIONING_STATE, bool) { 1447 res, ok := fpv.value.(DeviceHardware_Status_PROVISIONING_STATE) 1448 return res, ok 1449 } 1450 1451 // SetTo stores value for selected field for object Status 1452 func (fpv *DeviceHardwareStatus_FieldTerminalPathValue) SetTo(target **DeviceHardware_Status) { 1453 if *target == nil { 1454 *target = new(DeviceHardware_Status) 1455 } 1456 switch fpv.selector { 1457 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1458 (*target).ProvisioningState = fpv.value.(DeviceHardware_Status_PROVISIONING_STATE) 1459 default: 1460 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fpv.selector)) 1461 } 1462 } 1463 1464 func (fpv *DeviceHardwareStatus_FieldTerminalPathValue) SetToRaw(target proto.Message) { 1465 typedObject := target.(*DeviceHardware_Status) 1466 fpv.SetTo(&typedObject) 1467 } 1468 1469 // CompareWith compares value in the 'DeviceHardwareStatus_FieldTerminalPathValue' with the value under path in 'DeviceHardware_Status'. 1470 func (fpv *DeviceHardwareStatus_FieldTerminalPathValue) CompareWith(source *DeviceHardware_Status) (int, bool) { 1471 switch fpv.selector { 1472 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1473 leftValue := fpv.value.(DeviceHardware_Status_PROVISIONING_STATE) 1474 rightValue := source.GetProvisioningState() 1475 if (leftValue) == (rightValue) { 1476 return 0, true 1477 } else if (leftValue) < (rightValue) { 1478 return -1, true 1479 } else { 1480 return 1, true 1481 } 1482 default: 1483 panic(fmt.Sprintf("Invalid selector for DeviceHardware_Status: %d", fpv.selector)) 1484 } 1485 } 1486 1487 func (fpv *DeviceHardwareStatus_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 1488 return fpv.CompareWith(source.(*DeviceHardware_Status)) 1489 } 1490 1491 // DeviceHardwareStatus_FieldPathArrayItemValue allows storing single item in Path-specific values for Status according to their type 1492 // Present only for array (repeated) types. 1493 type DeviceHardwareStatus_FieldPathArrayItemValue interface { 1494 gotenobject.FieldPathArrayItemValue 1495 DeviceHardwareStatus_FieldPath 1496 ContainsValue(*DeviceHardware_Status) bool 1497 } 1498 1499 // ParseDeviceHardwareStatus_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 1500 func ParseDeviceHardwareStatus_FieldPathArrayItemValue(pathStr, valueStr string) (DeviceHardwareStatus_FieldPathArrayItemValue, error) { 1501 fp, err := ParseDeviceHardwareStatus_FieldPath(pathStr) 1502 if err != nil { 1503 return nil, err 1504 } 1505 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 1506 if err != nil { 1507 return nil, status.Errorf(codes.InvalidArgument, "error parsing Status field path array item value from %s: %v", valueStr, err) 1508 } 1509 return fpaiv.(DeviceHardwareStatus_FieldPathArrayItemValue), nil 1510 } 1511 1512 func MustParseDeviceHardwareStatus_FieldPathArrayItemValue(pathStr, valueStr string) DeviceHardwareStatus_FieldPathArrayItemValue { 1513 fpaiv, err := ParseDeviceHardwareStatus_FieldPathArrayItemValue(pathStr, valueStr) 1514 if err != nil { 1515 panic(err) 1516 } 1517 return fpaiv 1518 } 1519 1520 type DeviceHardwareStatus_FieldTerminalPathArrayItemValue struct { 1521 DeviceHardwareStatus_FieldTerminalPath 1522 value interface{} 1523 } 1524 1525 var _ DeviceHardwareStatus_FieldPathArrayItemValue = (*DeviceHardwareStatus_FieldTerminalPathArrayItemValue)(nil) 1526 1527 // GetRawValue returns stored element value for array in object DeviceHardware_Status as interface{} 1528 func (fpaiv *DeviceHardwareStatus_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 1529 return fpaiv.value 1530 } 1531 1532 func (fpaiv *DeviceHardwareStatus_FieldTerminalPathArrayItemValue) GetSingle(source *DeviceHardware_Status) (interface{}, bool) { 1533 return nil, false 1534 } 1535 1536 func (fpaiv *DeviceHardwareStatus_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 1537 return fpaiv.GetSingle(source.(*DeviceHardware_Status)) 1538 } 1539 1540 // Contains returns a boolean indicating if value that is being held is present in given 'Status' 1541 func (fpaiv *DeviceHardwareStatus_FieldTerminalPathArrayItemValue) ContainsValue(source *DeviceHardware_Status) bool { 1542 slice := fpaiv.DeviceHardwareStatus_FieldTerminalPath.Get(source) 1543 for _, v := range slice { 1544 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 1545 if proto.Equal(asProtoMsg, v.(proto.Message)) { 1546 return true 1547 } 1548 } else if reflect.DeepEqual(v, fpaiv.value) { 1549 return true 1550 } 1551 } 1552 return false 1553 } 1554 1555 // DeviceHardwareStatus_FieldPathArrayOfValues allows storing slice of values for Status fields according to their type 1556 type DeviceHardwareStatus_FieldPathArrayOfValues interface { 1557 gotenobject.FieldPathArrayOfValues 1558 DeviceHardwareStatus_FieldPath 1559 } 1560 1561 func ParseDeviceHardwareStatus_FieldPathArrayOfValues(pathStr, valuesStr string) (DeviceHardwareStatus_FieldPathArrayOfValues, error) { 1562 fp, err := ParseDeviceHardwareStatus_FieldPath(pathStr) 1563 if err != nil { 1564 return nil, err 1565 } 1566 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 1567 if err != nil { 1568 return nil, status.Errorf(codes.InvalidArgument, "error parsing Status field path array of values from %s: %v", valuesStr, err) 1569 } 1570 return fpaov.(DeviceHardwareStatus_FieldPathArrayOfValues), nil 1571 } 1572 1573 func MustParseDeviceHardwareStatus_FieldPathArrayOfValues(pathStr, valuesStr string) DeviceHardwareStatus_FieldPathArrayOfValues { 1574 fpaov, err := ParseDeviceHardwareStatus_FieldPathArrayOfValues(pathStr, valuesStr) 1575 if err != nil { 1576 panic(err) 1577 } 1578 return fpaov 1579 } 1580 1581 type DeviceHardwareStatus_FieldTerminalPathArrayOfValues struct { 1582 DeviceHardwareStatus_FieldTerminalPath 1583 values interface{} 1584 } 1585 1586 var _ DeviceHardwareStatus_FieldPathArrayOfValues = (*DeviceHardwareStatus_FieldTerminalPathArrayOfValues)(nil) 1587 1588 func (fpaov *DeviceHardwareStatus_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 1589 switch fpaov.selector { 1590 case DeviceHardwareStatus_FieldPathSelectorProvisioningState: 1591 for _, v := range fpaov.values.([]DeviceHardware_Status_PROVISIONING_STATE) { 1592 values = append(values, v) 1593 } 1594 } 1595 return 1596 } 1597 func (fpaov *DeviceHardwareStatus_FieldTerminalPathArrayOfValues) AsProvisioningStateArrayOfValues() ([]DeviceHardware_Status_PROVISIONING_STATE, bool) { 1598 res, ok := fpaov.values.([]DeviceHardware_Status_PROVISIONING_STATE) 1599 return res, ok 1600 }