github.com/cloudwan/edgelq-sdk@v1.15.4/devices/resources/v1alpha2/os_image_profile/os_image_profile.pb.fieldpath.go (about)

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/devices/proto/v1alpha2/os_image_profile.proto
     3  // DO NOT EDIT!!!
     4  
     5  package os_image_profile
     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  	device_type "github.com/cloudwan/edgelq-sdk/devices/resources/v1alpha2/device_type"
    27  	project "github.com/cloudwan/edgelq-sdk/devices/resources/v1alpha2/project"
    28  	meta "github.com/cloudwan/goten-sdk/types/meta"
    29  )
    30  
    31  // ensure the imports are used
    32  var (
    33  	_ = new(json.Marshaler)
    34  	_ = new(fmt.Stringer)
    35  	_ = reflect.DeepEqual
    36  	_ = strings.Builder{}
    37  	_ = time.Second
    38  
    39  	_ = strcase.ToLowerCamel
    40  	_ = codes.NotFound
    41  	_ = status.Status{}
    42  	_ = protojson.UnmarshalOptions{}
    43  	_ = new(proto.Message)
    44  	_ = protoregistry.GlobalTypes
    45  
    46  	_ = new(gotenobject.FieldPath)
    47  )
    48  
    49  // make sure we're using proto imports
    50  var (
    51  	_ = &device_type.DeviceType{}
    52  	_ = &project.Project{}
    53  	_ = &meta.Meta{}
    54  )
    55  
    56  // FieldPath provides implementation to handle
    57  // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto
    58  type OsImageProfile_FieldPath interface {
    59  	gotenobject.FieldPath
    60  	Selector() OsImageProfile_FieldPathSelector
    61  	Get(source *OsImageProfile) []interface{}
    62  	GetSingle(source *OsImageProfile) (interface{}, bool)
    63  	ClearValue(item *OsImageProfile)
    64  
    65  	// Those methods build corresponding OsImageProfile_FieldPathValue
    66  	// (or array of values) and holds passed value. Panics if injected type is incorrect.
    67  	WithIValue(value interface{}) OsImageProfile_FieldPathValue
    68  	WithIArrayOfValues(values interface{}) OsImageProfile_FieldPathArrayOfValues
    69  	WithIArrayItemValue(value interface{}) OsImageProfile_FieldPathArrayItemValue
    70  }
    71  
    72  type OsImageProfile_FieldPathSelector int32
    73  
    74  const (
    75  	OsImageProfile_FieldPathSelectorName                 OsImageProfile_FieldPathSelector = 0
    76  	OsImageProfile_FieldPathSelectorMetadata             OsImageProfile_FieldPathSelector = 1
    77  	OsImageProfile_FieldPathSelectorDisplayName          OsImageProfile_FieldPathSelector = 2
    78  	OsImageProfile_FieldPathSelectorDeviceType           OsImageProfile_FieldPathSelector = 3
    79  	OsImageProfile_FieldPathSelectorInstallAiAccelerator OsImageProfile_FieldPathSelector = 4
    80  	OsImageProfile_FieldPathSelectorEncryption           OsImageProfile_FieldPathSelector = 5
    81  	OsImageProfile_FieldPathSelectorDiskMapping          OsImageProfile_FieldPathSelector = 6
    82  	OsImageProfile_FieldPathSelectorNetworkAgent         OsImageProfile_FieldPathSelector = 7
    83  	OsImageProfile_FieldPathSelectorNtp                  OsImageProfile_FieldPathSelector = 8
    84  	OsImageProfile_FieldPathSelectorHttpProxy            OsImageProfile_FieldPathSelector = 9
    85  	OsImageProfile_FieldPathSelectorHttpsProxy           OsImageProfile_FieldPathSelector = 10
    86  	OsImageProfile_FieldPathSelectorNoProxy              OsImageProfile_FieldPathSelector = 11
    87  )
    88  
    89  func (s OsImageProfile_FieldPathSelector) String() string {
    90  	switch s {
    91  	case OsImageProfile_FieldPathSelectorName:
    92  		return "name"
    93  	case OsImageProfile_FieldPathSelectorMetadata:
    94  		return "metadata"
    95  	case OsImageProfile_FieldPathSelectorDisplayName:
    96  		return "display_name"
    97  	case OsImageProfile_FieldPathSelectorDeviceType:
    98  		return "device_type"
    99  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   100  		return "install_ai_accelerator"
   101  	case OsImageProfile_FieldPathSelectorEncryption:
   102  		return "encryption"
   103  	case OsImageProfile_FieldPathSelectorDiskMapping:
   104  		return "disk_mapping"
   105  	case OsImageProfile_FieldPathSelectorNetworkAgent:
   106  		return "network_agent"
   107  	case OsImageProfile_FieldPathSelectorNtp:
   108  		return "ntp"
   109  	case OsImageProfile_FieldPathSelectorHttpProxy:
   110  		return "http_proxy"
   111  	case OsImageProfile_FieldPathSelectorHttpsProxy:
   112  		return "https_proxy"
   113  	case OsImageProfile_FieldPathSelectorNoProxy:
   114  		return "no_proxy"
   115  	default:
   116  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", s))
   117  	}
   118  }
   119  
   120  func BuildOsImageProfile_FieldPath(fp gotenobject.RawFieldPath) (OsImageProfile_FieldPath, error) {
   121  	if len(fp) == 0 {
   122  		return nil, status.Error(codes.InvalidArgument, "empty field path for object OsImageProfile")
   123  	}
   124  	if len(fp) == 1 {
   125  		switch fp[0] {
   126  		case "name":
   127  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorName}, nil
   128  		case "metadata":
   129  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorMetadata}, nil
   130  		case "display_name", "displayName", "display-name":
   131  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorDisplayName}, nil
   132  		case "device_type", "deviceType", "device-type":
   133  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorDeviceType}, nil
   134  		case "install_ai_accelerator", "installAiAccelerator", "install-ai-accelerator":
   135  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorInstallAiAccelerator}, nil
   136  		case "encryption":
   137  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorEncryption}, nil
   138  		case "disk_mapping", "diskMapping", "disk-mapping":
   139  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorDiskMapping}, nil
   140  		case "network_agent", "networkAgent", "network-agent":
   141  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorNetworkAgent}, nil
   142  		case "ntp":
   143  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorNtp}, nil
   144  		case "http_proxy", "httpProxy", "http-proxy":
   145  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorHttpProxy}, nil
   146  		case "https_proxy", "httpsProxy", "https-proxy":
   147  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorHttpsProxy}, nil
   148  		case "no_proxy", "noProxy", "no-proxy":
   149  			return &OsImageProfile_FieldTerminalPath{selector: OsImageProfile_FieldPathSelectorNoProxy}, nil
   150  		}
   151  	} else {
   152  		switch fp[0] {
   153  		case "metadata":
   154  			if subpath, err := meta.BuildMeta_FieldPath(fp[1:]); err != nil {
   155  				return nil, err
   156  			} else {
   157  				return &OsImageProfile_FieldSubPath{selector: OsImageProfile_FieldPathSelectorMetadata, subPath: subpath}, nil
   158  			}
   159  		}
   160  	}
   161  	return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object OsImageProfile", fp)
   162  }
   163  
   164  func ParseOsImageProfile_FieldPath(rawField string) (OsImageProfile_FieldPath, error) {
   165  	fp, err := gotenobject.ParseRawFieldPath(rawField)
   166  	if err != nil {
   167  		return nil, err
   168  	}
   169  	return BuildOsImageProfile_FieldPath(fp)
   170  }
   171  
   172  func MustParseOsImageProfile_FieldPath(rawField string) OsImageProfile_FieldPath {
   173  	fp, err := ParseOsImageProfile_FieldPath(rawField)
   174  	if err != nil {
   175  		panic(err)
   176  	}
   177  	return fp
   178  }
   179  
   180  type OsImageProfile_FieldTerminalPath struct {
   181  	selector OsImageProfile_FieldPathSelector
   182  }
   183  
   184  var _ OsImageProfile_FieldPath = (*OsImageProfile_FieldTerminalPath)(nil)
   185  
   186  func (fp *OsImageProfile_FieldTerminalPath) Selector() OsImageProfile_FieldPathSelector {
   187  	return fp.selector
   188  }
   189  
   190  // String returns path representation in proto convention
   191  func (fp *OsImageProfile_FieldTerminalPath) String() string {
   192  	return fp.selector.String()
   193  }
   194  
   195  // JSONString returns path representation is JSON convention
   196  func (fp *OsImageProfile_FieldTerminalPath) JSONString() string {
   197  	return strcase.ToLowerCamel(fp.String())
   198  }
   199  
   200  // Get returns all values pointed by specific field from source OsImageProfile
   201  func (fp *OsImageProfile_FieldTerminalPath) Get(source *OsImageProfile) (values []interface{}) {
   202  	if source != nil {
   203  		switch fp.selector {
   204  		case OsImageProfile_FieldPathSelectorName:
   205  			if source.Name != nil {
   206  				values = append(values, source.Name)
   207  			}
   208  		case OsImageProfile_FieldPathSelectorMetadata:
   209  			if source.Metadata != nil {
   210  				values = append(values, source.Metadata)
   211  			}
   212  		case OsImageProfile_FieldPathSelectorDisplayName:
   213  			values = append(values, source.DisplayName)
   214  		case OsImageProfile_FieldPathSelectorDeviceType:
   215  			if source.DeviceType != nil {
   216  				values = append(values, source.DeviceType)
   217  			}
   218  		case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   219  			values = append(values, source.InstallAiAccelerator)
   220  		case OsImageProfile_FieldPathSelectorEncryption:
   221  			values = append(values, source.Encryption)
   222  		case OsImageProfile_FieldPathSelectorDiskMapping:
   223  			values = append(values, source.DiskMapping)
   224  		case OsImageProfile_FieldPathSelectorNetworkAgent:
   225  			values = append(values, source.NetworkAgent)
   226  		case OsImageProfile_FieldPathSelectorNtp:
   227  			values = append(values, source.Ntp)
   228  		case OsImageProfile_FieldPathSelectorHttpProxy:
   229  			values = append(values, source.HttpProxy)
   230  		case OsImageProfile_FieldPathSelectorHttpsProxy:
   231  			values = append(values, source.HttpsProxy)
   232  		case OsImageProfile_FieldPathSelectorNoProxy:
   233  			values = append(values, source.NoProxy)
   234  		default:
   235  			panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fp.selector))
   236  		}
   237  	}
   238  	return
   239  }
   240  
   241  func (fp *OsImageProfile_FieldTerminalPath) GetRaw(source proto.Message) []interface{} {
   242  	return fp.Get(source.(*OsImageProfile))
   243  }
   244  
   245  // GetSingle returns value pointed by specific field of from source OsImageProfile
   246  func (fp *OsImageProfile_FieldTerminalPath) GetSingle(source *OsImageProfile) (interface{}, bool) {
   247  	switch fp.selector {
   248  	case OsImageProfile_FieldPathSelectorName:
   249  		res := source.GetName()
   250  		return res, res != nil
   251  	case OsImageProfile_FieldPathSelectorMetadata:
   252  		res := source.GetMetadata()
   253  		return res, res != nil
   254  	case OsImageProfile_FieldPathSelectorDisplayName:
   255  		return source.GetDisplayName(), source != nil
   256  	case OsImageProfile_FieldPathSelectorDeviceType:
   257  		res := source.GetDeviceType()
   258  		return res, res != nil
   259  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   260  		return source.GetInstallAiAccelerator(), source != nil
   261  	case OsImageProfile_FieldPathSelectorEncryption:
   262  		return source.GetEncryption(), source != nil
   263  	case OsImageProfile_FieldPathSelectorDiskMapping:
   264  		return source.GetDiskMapping(), source != nil
   265  	case OsImageProfile_FieldPathSelectorNetworkAgent:
   266  		return source.GetNetworkAgent(), source != nil
   267  	case OsImageProfile_FieldPathSelectorNtp:
   268  		return source.GetNtp(), source != nil
   269  	case OsImageProfile_FieldPathSelectorHttpProxy:
   270  		return source.GetHttpProxy(), source != nil
   271  	case OsImageProfile_FieldPathSelectorHttpsProxy:
   272  		return source.GetHttpsProxy(), source != nil
   273  	case OsImageProfile_FieldPathSelectorNoProxy:
   274  		return source.GetNoProxy(), source != nil
   275  	default:
   276  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fp.selector))
   277  	}
   278  }
   279  
   280  func (fp *OsImageProfile_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) {
   281  	return fp.GetSingle(source.(*OsImageProfile))
   282  }
   283  
   284  // GetDefault returns a default value of the field type
   285  func (fp *OsImageProfile_FieldTerminalPath) GetDefault() interface{} {
   286  	switch fp.selector {
   287  	case OsImageProfile_FieldPathSelectorName:
   288  		return (*Name)(nil)
   289  	case OsImageProfile_FieldPathSelectorMetadata:
   290  		return (*meta.Meta)(nil)
   291  	case OsImageProfile_FieldPathSelectorDisplayName:
   292  		return ""
   293  	case OsImageProfile_FieldPathSelectorDeviceType:
   294  		return (*device_type.Reference)(nil)
   295  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   296  		return false
   297  	case OsImageProfile_FieldPathSelectorEncryption:
   298  		return false
   299  	case OsImageProfile_FieldPathSelectorDiskMapping:
   300  		return ""
   301  	case OsImageProfile_FieldPathSelectorNetworkAgent:
   302  		return ""
   303  	case OsImageProfile_FieldPathSelectorNtp:
   304  		return ""
   305  	case OsImageProfile_FieldPathSelectorHttpProxy:
   306  		return ""
   307  	case OsImageProfile_FieldPathSelectorHttpsProxy:
   308  		return ""
   309  	case OsImageProfile_FieldPathSelectorNoProxy:
   310  		return ""
   311  	default:
   312  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fp.selector))
   313  	}
   314  }
   315  
   316  func (fp *OsImageProfile_FieldTerminalPath) ClearValue(item *OsImageProfile) {
   317  	if item != nil {
   318  		switch fp.selector {
   319  		case OsImageProfile_FieldPathSelectorName:
   320  			item.Name = nil
   321  		case OsImageProfile_FieldPathSelectorMetadata:
   322  			item.Metadata = nil
   323  		case OsImageProfile_FieldPathSelectorDisplayName:
   324  			item.DisplayName = ""
   325  		case OsImageProfile_FieldPathSelectorDeviceType:
   326  			item.DeviceType = nil
   327  		case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   328  			item.InstallAiAccelerator = false
   329  		case OsImageProfile_FieldPathSelectorEncryption:
   330  			item.Encryption = false
   331  		case OsImageProfile_FieldPathSelectorDiskMapping:
   332  			item.DiskMapping = ""
   333  		case OsImageProfile_FieldPathSelectorNetworkAgent:
   334  			item.NetworkAgent = ""
   335  		case OsImageProfile_FieldPathSelectorNtp:
   336  			item.Ntp = ""
   337  		case OsImageProfile_FieldPathSelectorHttpProxy:
   338  			item.HttpProxy = ""
   339  		case OsImageProfile_FieldPathSelectorHttpsProxy:
   340  			item.HttpsProxy = ""
   341  		case OsImageProfile_FieldPathSelectorNoProxy:
   342  			item.NoProxy = ""
   343  		default:
   344  			panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fp.selector))
   345  		}
   346  	}
   347  }
   348  
   349  func (fp *OsImageProfile_FieldTerminalPath) ClearValueRaw(item proto.Message) {
   350  	fp.ClearValue(item.(*OsImageProfile))
   351  }
   352  
   353  // IsLeaf - whether field path is holds simple value
   354  func (fp *OsImageProfile_FieldTerminalPath) IsLeaf() bool {
   355  	return fp.selector == OsImageProfile_FieldPathSelectorName ||
   356  		fp.selector == OsImageProfile_FieldPathSelectorDisplayName ||
   357  		fp.selector == OsImageProfile_FieldPathSelectorDeviceType ||
   358  		fp.selector == OsImageProfile_FieldPathSelectorInstallAiAccelerator ||
   359  		fp.selector == OsImageProfile_FieldPathSelectorEncryption ||
   360  		fp.selector == OsImageProfile_FieldPathSelectorDiskMapping ||
   361  		fp.selector == OsImageProfile_FieldPathSelectorNetworkAgent ||
   362  		fp.selector == OsImageProfile_FieldPathSelectorNtp ||
   363  		fp.selector == OsImageProfile_FieldPathSelectorHttpProxy ||
   364  		fp.selector == OsImageProfile_FieldPathSelectorHttpsProxy ||
   365  		fp.selector == OsImageProfile_FieldPathSelectorNoProxy
   366  }
   367  
   368  func (fp *OsImageProfile_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath {
   369  	return []gotenobject.FieldPath{fp}
   370  }
   371  
   372  func (fp *OsImageProfile_FieldTerminalPath) WithIValue(value interface{}) OsImageProfile_FieldPathValue {
   373  	switch fp.selector {
   374  	case OsImageProfile_FieldPathSelectorName:
   375  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(*Name)}
   376  	case OsImageProfile_FieldPathSelectorMetadata:
   377  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(*meta.Meta)}
   378  	case OsImageProfile_FieldPathSelectorDisplayName:
   379  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(string)}
   380  	case OsImageProfile_FieldPathSelectorDeviceType:
   381  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(*device_type.Reference)}
   382  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   383  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(bool)}
   384  	case OsImageProfile_FieldPathSelectorEncryption:
   385  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(bool)}
   386  	case OsImageProfile_FieldPathSelectorDiskMapping:
   387  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(string)}
   388  	case OsImageProfile_FieldPathSelectorNetworkAgent:
   389  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(string)}
   390  	case OsImageProfile_FieldPathSelectorNtp:
   391  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(string)}
   392  	case OsImageProfile_FieldPathSelectorHttpProxy:
   393  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(string)}
   394  	case OsImageProfile_FieldPathSelectorHttpsProxy:
   395  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(string)}
   396  	case OsImageProfile_FieldPathSelectorNoProxy:
   397  		return &OsImageProfile_FieldTerminalPathValue{OsImageProfile_FieldTerminalPath: *fp, value: value.(string)}
   398  	default:
   399  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fp.selector))
   400  	}
   401  }
   402  
   403  func (fp *OsImageProfile_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue {
   404  	return fp.WithIValue(value)
   405  }
   406  
   407  func (fp *OsImageProfile_FieldTerminalPath) WithIArrayOfValues(values interface{}) OsImageProfile_FieldPathArrayOfValues {
   408  	fpaov := &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp}
   409  	switch fp.selector {
   410  	case OsImageProfile_FieldPathSelectorName:
   411  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]*Name)}
   412  	case OsImageProfile_FieldPathSelectorMetadata:
   413  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]*meta.Meta)}
   414  	case OsImageProfile_FieldPathSelectorDisplayName:
   415  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]string)}
   416  	case OsImageProfile_FieldPathSelectorDeviceType:
   417  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]*device_type.Reference)}
   418  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   419  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]bool)}
   420  	case OsImageProfile_FieldPathSelectorEncryption:
   421  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]bool)}
   422  	case OsImageProfile_FieldPathSelectorDiskMapping:
   423  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]string)}
   424  	case OsImageProfile_FieldPathSelectorNetworkAgent:
   425  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]string)}
   426  	case OsImageProfile_FieldPathSelectorNtp:
   427  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]string)}
   428  	case OsImageProfile_FieldPathSelectorHttpProxy:
   429  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]string)}
   430  	case OsImageProfile_FieldPathSelectorHttpsProxy:
   431  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]string)}
   432  	case OsImageProfile_FieldPathSelectorNoProxy:
   433  		return &OsImageProfile_FieldTerminalPathArrayOfValues{OsImageProfile_FieldTerminalPath: *fp, values: values.([]string)}
   434  	default:
   435  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fp.selector))
   436  	}
   437  	return fpaov
   438  }
   439  
   440  func (fp *OsImageProfile_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues {
   441  	return fp.WithIArrayOfValues(values)
   442  }
   443  
   444  func (fp *OsImageProfile_FieldTerminalPath) WithIArrayItemValue(value interface{}) OsImageProfile_FieldPathArrayItemValue {
   445  	switch fp.selector {
   446  	default:
   447  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fp.selector))
   448  	}
   449  }
   450  
   451  func (fp *OsImageProfile_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue {
   452  	return fp.WithIArrayItemValue(value)
   453  }
   454  
   455  type OsImageProfile_FieldSubPath struct {
   456  	selector OsImageProfile_FieldPathSelector
   457  	subPath  gotenobject.FieldPath
   458  }
   459  
   460  var _ OsImageProfile_FieldPath = (*OsImageProfile_FieldSubPath)(nil)
   461  
   462  func (fps *OsImageProfile_FieldSubPath) Selector() OsImageProfile_FieldPathSelector {
   463  	return fps.selector
   464  }
   465  func (fps *OsImageProfile_FieldSubPath) AsMetadataSubPath() (meta.Meta_FieldPath, bool) {
   466  	res, ok := fps.subPath.(meta.Meta_FieldPath)
   467  	return res, ok
   468  }
   469  
   470  // String returns path representation in proto convention
   471  func (fps *OsImageProfile_FieldSubPath) String() string {
   472  	return fps.selector.String() + "." + fps.subPath.String()
   473  }
   474  
   475  // JSONString returns path representation is JSON convention
   476  func (fps *OsImageProfile_FieldSubPath) JSONString() string {
   477  	return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString()
   478  }
   479  
   480  // Get returns all values pointed by selected field from source OsImageProfile
   481  func (fps *OsImageProfile_FieldSubPath) Get(source *OsImageProfile) (values []interface{}) {
   482  	switch fps.selector {
   483  	case OsImageProfile_FieldPathSelectorMetadata:
   484  		values = append(values, fps.subPath.GetRaw(source.GetMetadata())...)
   485  	default:
   486  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fps.selector))
   487  	}
   488  	return
   489  }
   490  
   491  func (fps *OsImageProfile_FieldSubPath) GetRaw(source proto.Message) []interface{} {
   492  	return fps.Get(source.(*OsImageProfile))
   493  }
   494  
   495  // GetSingle returns value of selected field from source OsImageProfile
   496  func (fps *OsImageProfile_FieldSubPath) GetSingle(source *OsImageProfile) (interface{}, bool) {
   497  	switch fps.selector {
   498  	case OsImageProfile_FieldPathSelectorMetadata:
   499  		if source.GetMetadata() == nil {
   500  			return nil, false
   501  		}
   502  		return fps.subPath.GetSingleRaw(source.GetMetadata())
   503  	default:
   504  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fps.selector))
   505  	}
   506  }
   507  
   508  func (fps *OsImageProfile_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) {
   509  	return fps.GetSingle(source.(*OsImageProfile))
   510  }
   511  
   512  // GetDefault returns a default value of the field type
   513  func (fps *OsImageProfile_FieldSubPath) GetDefault() interface{} {
   514  	return fps.subPath.GetDefault()
   515  }
   516  
   517  func (fps *OsImageProfile_FieldSubPath) ClearValue(item *OsImageProfile) {
   518  	if item != nil {
   519  		switch fps.selector {
   520  		case OsImageProfile_FieldPathSelectorMetadata:
   521  			fps.subPath.ClearValueRaw(item.Metadata)
   522  		default:
   523  			panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fps.selector))
   524  		}
   525  	}
   526  }
   527  
   528  func (fps *OsImageProfile_FieldSubPath) ClearValueRaw(item proto.Message) {
   529  	fps.ClearValue(item.(*OsImageProfile))
   530  }
   531  
   532  // IsLeaf - whether field path is holds simple value
   533  func (fps *OsImageProfile_FieldSubPath) IsLeaf() bool {
   534  	return fps.subPath.IsLeaf()
   535  }
   536  
   537  func (fps *OsImageProfile_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath {
   538  	iPaths := []gotenobject.FieldPath{&OsImageProfile_FieldTerminalPath{selector: fps.selector}}
   539  	iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...)
   540  	return iPaths
   541  }
   542  
   543  func (fps *OsImageProfile_FieldSubPath) WithIValue(value interface{}) OsImageProfile_FieldPathValue {
   544  	return &OsImageProfile_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)}
   545  }
   546  
   547  func (fps *OsImageProfile_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue {
   548  	return fps.WithIValue(value)
   549  }
   550  
   551  func (fps *OsImageProfile_FieldSubPath) WithIArrayOfValues(values interface{}) OsImageProfile_FieldPathArrayOfValues {
   552  	return &OsImageProfile_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)}
   553  }
   554  
   555  func (fps *OsImageProfile_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues {
   556  	return fps.WithIArrayOfValues(values)
   557  }
   558  
   559  func (fps *OsImageProfile_FieldSubPath) WithIArrayItemValue(value interface{}) OsImageProfile_FieldPathArrayItemValue {
   560  	return &OsImageProfile_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)}
   561  }
   562  
   563  func (fps *OsImageProfile_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue {
   564  	return fps.WithIArrayItemValue(value)
   565  }
   566  
   567  // OsImageProfile_FieldPathValue allows storing values for OsImageProfile fields according to their type
   568  type OsImageProfile_FieldPathValue interface {
   569  	OsImageProfile_FieldPath
   570  	gotenobject.FieldPathValue
   571  	SetTo(target **OsImageProfile)
   572  	CompareWith(*OsImageProfile) (cmp int, comparable bool)
   573  }
   574  
   575  func ParseOsImageProfile_FieldPathValue(pathStr, valueStr string) (OsImageProfile_FieldPathValue, error) {
   576  	fp, err := ParseOsImageProfile_FieldPath(pathStr)
   577  	if err != nil {
   578  		return nil, err
   579  	}
   580  	fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr)
   581  	if err != nil {
   582  		return nil, status.Errorf(codes.InvalidArgument, "error parsing OsImageProfile field path value from %s: %v", valueStr, err)
   583  	}
   584  	return fpv.(OsImageProfile_FieldPathValue), nil
   585  }
   586  
   587  func MustParseOsImageProfile_FieldPathValue(pathStr, valueStr string) OsImageProfile_FieldPathValue {
   588  	fpv, err := ParseOsImageProfile_FieldPathValue(pathStr, valueStr)
   589  	if err != nil {
   590  		panic(err)
   591  	}
   592  	return fpv
   593  }
   594  
   595  type OsImageProfile_FieldTerminalPathValue struct {
   596  	OsImageProfile_FieldTerminalPath
   597  	value interface{}
   598  }
   599  
   600  var _ OsImageProfile_FieldPathValue = (*OsImageProfile_FieldTerminalPathValue)(nil)
   601  
   602  // GetRawValue returns raw value stored under selected path for 'OsImageProfile' as interface{}
   603  func (fpv *OsImageProfile_FieldTerminalPathValue) GetRawValue() interface{} {
   604  	return fpv.value
   605  }
   606  func (fpv *OsImageProfile_FieldTerminalPathValue) AsNameValue() (*Name, bool) {
   607  	res, ok := fpv.value.(*Name)
   608  	return res, ok
   609  }
   610  func (fpv *OsImageProfile_FieldTerminalPathValue) AsMetadataValue() (*meta.Meta, bool) {
   611  	res, ok := fpv.value.(*meta.Meta)
   612  	return res, ok
   613  }
   614  func (fpv *OsImageProfile_FieldTerminalPathValue) AsDisplayNameValue() (string, bool) {
   615  	res, ok := fpv.value.(string)
   616  	return res, ok
   617  }
   618  func (fpv *OsImageProfile_FieldTerminalPathValue) AsDeviceTypeValue() (*device_type.Reference, bool) {
   619  	res, ok := fpv.value.(*device_type.Reference)
   620  	return res, ok
   621  }
   622  func (fpv *OsImageProfile_FieldTerminalPathValue) AsInstallAiAcceleratorValue() (bool, bool) {
   623  	res, ok := fpv.value.(bool)
   624  	return res, ok
   625  }
   626  func (fpv *OsImageProfile_FieldTerminalPathValue) AsEncryptionValue() (bool, bool) {
   627  	res, ok := fpv.value.(bool)
   628  	return res, ok
   629  }
   630  func (fpv *OsImageProfile_FieldTerminalPathValue) AsDiskMappingValue() (string, bool) {
   631  	res, ok := fpv.value.(string)
   632  	return res, ok
   633  }
   634  func (fpv *OsImageProfile_FieldTerminalPathValue) AsNetworkAgentValue() (string, bool) {
   635  	res, ok := fpv.value.(string)
   636  	return res, ok
   637  }
   638  func (fpv *OsImageProfile_FieldTerminalPathValue) AsNtpValue() (string, bool) {
   639  	res, ok := fpv.value.(string)
   640  	return res, ok
   641  }
   642  func (fpv *OsImageProfile_FieldTerminalPathValue) AsHttpProxyValue() (string, bool) {
   643  	res, ok := fpv.value.(string)
   644  	return res, ok
   645  }
   646  func (fpv *OsImageProfile_FieldTerminalPathValue) AsHttpsProxyValue() (string, bool) {
   647  	res, ok := fpv.value.(string)
   648  	return res, ok
   649  }
   650  func (fpv *OsImageProfile_FieldTerminalPathValue) AsNoProxyValue() (string, bool) {
   651  	res, ok := fpv.value.(string)
   652  	return res, ok
   653  }
   654  
   655  // SetTo stores value for selected field for object OsImageProfile
   656  func (fpv *OsImageProfile_FieldTerminalPathValue) SetTo(target **OsImageProfile) {
   657  	if *target == nil {
   658  		*target = new(OsImageProfile)
   659  	}
   660  	switch fpv.selector {
   661  	case OsImageProfile_FieldPathSelectorName:
   662  		(*target).Name = fpv.value.(*Name)
   663  	case OsImageProfile_FieldPathSelectorMetadata:
   664  		(*target).Metadata = fpv.value.(*meta.Meta)
   665  	case OsImageProfile_FieldPathSelectorDisplayName:
   666  		(*target).DisplayName = fpv.value.(string)
   667  	case OsImageProfile_FieldPathSelectorDeviceType:
   668  		(*target).DeviceType = fpv.value.(*device_type.Reference)
   669  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   670  		(*target).InstallAiAccelerator = fpv.value.(bool)
   671  	case OsImageProfile_FieldPathSelectorEncryption:
   672  		(*target).Encryption = fpv.value.(bool)
   673  	case OsImageProfile_FieldPathSelectorDiskMapping:
   674  		(*target).DiskMapping = fpv.value.(string)
   675  	case OsImageProfile_FieldPathSelectorNetworkAgent:
   676  		(*target).NetworkAgent = fpv.value.(string)
   677  	case OsImageProfile_FieldPathSelectorNtp:
   678  		(*target).Ntp = fpv.value.(string)
   679  	case OsImageProfile_FieldPathSelectorHttpProxy:
   680  		(*target).HttpProxy = fpv.value.(string)
   681  	case OsImageProfile_FieldPathSelectorHttpsProxy:
   682  		(*target).HttpsProxy = fpv.value.(string)
   683  	case OsImageProfile_FieldPathSelectorNoProxy:
   684  		(*target).NoProxy = fpv.value.(string)
   685  	default:
   686  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fpv.selector))
   687  	}
   688  }
   689  
   690  func (fpv *OsImageProfile_FieldTerminalPathValue) SetToRaw(target proto.Message) {
   691  	typedObject := target.(*OsImageProfile)
   692  	fpv.SetTo(&typedObject)
   693  }
   694  
   695  // CompareWith compares value in the 'OsImageProfile_FieldTerminalPathValue' with the value under path in 'OsImageProfile'.
   696  func (fpv *OsImageProfile_FieldTerminalPathValue) CompareWith(source *OsImageProfile) (int, bool) {
   697  	switch fpv.selector {
   698  	case OsImageProfile_FieldPathSelectorName:
   699  		leftValue := fpv.value.(*Name)
   700  		rightValue := source.GetName()
   701  		if leftValue == nil {
   702  			if rightValue != nil {
   703  				return -1, true
   704  			}
   705  			return 0, true
   706  		}
   707  		if rightValue == nil {
   708  			return 1, true
   709  		}
   710  		if leftValue.String() == rightValue.String() {
   711  			return 0, true
   712  		} else if leftValue.String() < rightValue.String() {
   713  			return -1, true
   714  		} else {
   715  			return 1, true
   716  		}
   717  	case OsImageProfile_FieldPathSelectorMetadata:
   718  		return 0, false
   719  	case OsImageProfile_FieldPathSelectorDisplayName:
   720  		leftValue := fpv.value.(string)
   721  		rightValue := source.GetDisplayName()
   722  		if (leftValue) == (rightValue) {
   723  			return 0, true
   724  		} else if (leftValue) < (rightValue) {
   725  			return -1, true
   726  		} else {
   727  			return 1, true
   728  		}
   729  	case OsImageProfile_FieldPathSelectorDeviceType:
   730  		leftValue := fpv.value.(*device_type.Reference)
   731  		rightValue := source.GetDeviceType()
   732  		if leftValue == nil {
   733  			if rightValue != nil {
   734  				return -1, true
   735  			}
   736  			return 0, true
   737  		}
   738  		if rightValue == nil {
   739  			return 1, true
   740  		}
   741  		if leftValue.String() == rightValue.String() {
   742  			return 0, true
   743  		} else if leftValue.String() < rightValue.String() {
   744  			return -1, true
   745  		} else {
   746  			return 1, true
   747  		}
   748  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
   749  		leftValue := fpv.value.(bool)
   750  		rightValue := source.GetInstallAiAccelerator()
   751  		if (leftValue) == (rightValue) {
   752  			return 0, true
   753  		} else if !(leftValue) && (rightValue) {
   754  			return -1, true
   755  		} else {
   756  			return 1, true
   757  		}
   758  	case OsImageProfile_FieldPathSelectorEncryption:
   759  		leftValue := fpv.value.(bool)
   760  		rightValue := source.GetEncryption()
   761  		if (leftValue) == (rightValue) {
   762  			return 0, true
   763  		} else if !(leftValue) && (rightValue) {
   764  			return -1, true
   765  		} else {
   766  			return 1, true
   767  		}
   768  	case OsImageProfile_FieldPathSelectorDiskMapping:
   769  		leftValue := fpv.value.(string)
   770  		rightValue := source.GetDiskMapping()
   771  		if (leftValue) == (rightValue) {
   772  			return 0, true
   773  		} else if (leftValue) < (rightValue) {
   774  			return -1, true
   775  		} else {
   776  			return 1, true
   777  		}
   778  	case OsImageProfile_FieldPathSelectorNetworkAgent:
   779  		leftValue := fpv.value.(string)
   780  		rightValue := source.GetNetworkAgent()
   781  		if (leftValue) == (rightValue) {
   782  			return 0, true
   783  		} else if (leftValue) < (rightValue) {
   784  			return -1, true
   785  		} else {
   786  			return 1, true
   787  		}
   788  	case OsImageProfile_FieldPathSelectorNtp:
   789  		leftValue := fpv.value.(string)
   790  		rightValue := source.GetNtp()
   791  		if (leftValue) == (rightValue) {
   792  			return 0, true
   793  		} else if (leftValue) < (rightValue) {
   794  			return -1, true
   795  		} else {
   796  			return 1, true
   797  		}
   798  	case OsImageProfile_FieldPathSelectorHttpProxy:
   799  		leftValue := fpv.value.(string)
   800  		rightValue := source.GetHttpProxy()
   801  		if (leftValue) == (rightValue) {
   802  			return 0, true
   803  		} else if (leftValue) < (rightValue) {
   804  			return -1, true
   805  		} else {
   806  			return 1, true
   807  		}
   808  	case OsImageProfile_FieldPathSelectorHttpsProxy:
   809  		leftValue := fpv.value.(string)
   810  		rightValue := source.GetHttpsProxy()
   811  		if (leftValue) == (rightValue) {
   812  			return 0, true
   813  		} else if (leftValue) < (rightValue) {
   814  			return -1, true
   815  		} else {
   816  			return 1, true
   817  		}
   818  	case OsImageProfile_FieldPathSelectorNoProxy:
   819  		leftValue := fpv.value.(string)
   820  		rightValue := source.GetNoProxy()
   821  		if (leftValue) == (rightValue) {
   822  			return 0, true
   823  		} else if (leftValue) < (rightValue) {
   824  			return -1, true
   825  		} else {
   826  			return 1, true
   827  		}
   828  	default:
   829  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fpv.selector))
   830  	}
   831  }
   832  
   833  func (fpv *OsImageProfile_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) {
   834  	return fpv.CompareWith(source.(*OsImageProfile))
   835  }
   836  
   837  type OsImageProfile_FieldSubPathValue struct {
   838  	OsImageProfile_FieldPath
   839  	subPathValue gotenobject.FieldPathValue
   840  }
   841  
   842  var _ OsImageProfile_FieldPathValue = (*OsImageProfile_FieldSubPathValue)(nil)
   843  
   844  func (fpvs *OsImageProfile_FieldSubPathValue) AsMetadataPathValue() (meta.Meta_FieldPathValue, bool) {
   845  	res, ok := fpvs.subPathValue.(meta.Meta_FieldPathValue)
   846  	return res, ok
   847  }
   848  
   849  func (fpvs *OsImageProfile_FieldSubPathValue) SetTo(target **OsImageProfile) {
   850  	if *target == nil {
   851  		*target = new(OsImageProfile)
   852  	}
   853  	switch fpvs.Selector() {
   854  	case OsImageProfile_FieldPathSelectorMetadata:
   855  		fpvs.subPathValue.(meta.Meta_FieldPathValue).SetTo(&(*target).Metadata)
   856  	default:
   857  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fpvs.Selector()))
   858  	}
   859  }
   860  
   861  func (fpvs *OsImageProfile_FieldSubPathValue) SetToRaw(target proto.Message) {
   862  	typedObject := target.(*OsImageProfile)
   863  	fpvs.SetTo(&typedObject)
   864  }
   865  
   866  func (fpvs *OsImageProfile_FieldSubPathValue) GetRawValue() interface{} {
   867  	return fpvs.subPathValue.GetRawValue()
   868  }
   869  
   870  func (fpvs *OsImageProfile_FieldSubPathValue) CompareWith(source *OsImageProfile) (int, bool) {
   871  	switch fpvs.Selector() {
   872  	case OsImageProfile_FieldPathSelectorMetadata:
   873  		return fpvs.subPathValue.(meta.Meta_FieldPathValue).CompareWith(source.GetMetadata())
   874  	default:
   875  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fpvs.Selector()))
   876  	}
   877  }
   878  
   879  func (fpvs *OsImageProfile_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) {
   880  	return fpvs.CompareWith(source.(*OsImageProfile))
   881  }
   882  
   883  // OsImageProfile_FieldPathArrayItemValue allows storing single item in Path-specific values for OsImageProfile according to their type
   884  // Present only for array (repeated) types.
   885  type OsImageProfile_FieldPathArrayItemValue interface {
   886  	gotenobject.FieldPathArrayItemValue
   887  	OsImageProfile_FieldPath
   888  	ContainsValue(*OsImageProfile) bool
   889  }
   890  
   891  // ParseOsImageProfile_FieldPathArrayItemValue parses string and JSON-encoded value to its Value
   892  func ParseOsImageProfile_FieldPathArrayItemValue(pathStr, valueStr string) (OsImageProfile_FieldPathArrayItemValue, error) {
   893  	fp, err := ParseOsImageProfile_FieldPath(pathStr)
   894  	if err != nil {
   895  		return nil, err
   896  	}
   897  	fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr)
   898  	if err != nil {
   899  		return nil, status.Errorf(codes.InvalidArgument, "error parsing OsImageProfile field path array item value from %s: %v", valueStr, err)
   900  	}
   901  	return fpaiv.(OsImageProfile_FieldPathArrayItemValue), nil
   902  }
   903  
   904  func MustParseOsImageProfile_FieldPathArrayItemValue(pathStr, valueStr string) OsImageProfile_FieldPathArrayItemValue {
   905  	fpaiv, err := ParseOsImageProfile_FieldPathArrayItemValue(pathStr, valueStr)
   906  	if err != nil {
   907  		panic(err)
   908  	}
   909  	return fpaiv
   910  }
   911  
   912  type OsImageProfile_FieldTerminalPathArrayItemValue struct {
   913  	OsImageProfile_FieldTerminalPath
   914  	value interface{}
   915  }
   916  
   917  var _ OsImageProfile_FieldPathArrayItemValue = (*OsImageProfile_FieldTerminalPathArrayItemValue)(nil)
   918  
   919  // GetRawValue returns stored element value for array in object OsImageProfile as interface{}
   920  func (fpaiv *OsImageProfile_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} {
   921  	return fpaiv.value
   922  }
   923  
   924  func (fpaiv *OsImageProfile_FieldTerminalPathArrayItemValue) GetSingle(source *OsImageProfile) (interface{}, bool) {
   925  	return nil, false
   926  }
   927  
   928  func (fpaiv *OsImageProfile_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) {
   929  	return fpaiv.GetSingle(source.(*OsImageProfile))
   930  }
   931  
   932  // Contains returns a boolean indicating if value that is being held is present in given 'OsImageProfile'
   933  func (fpaiv *OsImageProfile_FieldTerminalPathArrayItemValue) ContainsValue(source *OsImageProfile) bool {
   934  	slice := fpaiv.OsImageProfile_FieldTerminalPath.Get(source)
   935  	for _, v := range slice {
   936  		if asProtoMsg, ok := fpaiv.value.(proto.Message); ok {
   937  			if proto.Equal(asProtoMsg, v.(proto.Message)) {
   938  				return true
   939  			}
   940  		} else if reflect.DeepEqual(v, fpaiv.value) {
   941  			return true
   942  		}
   943  	}
   944  	return false
   945  }
   946  
   947  type OsImageProfile_FieldSubPathArrayItemValue struct {
   948  	OsImageProfile_FieldPath
   949  	subPathItemValue gotenobject.FieldPathArrayItemValue
   950  }
   951  
   952  // GetRawValue returns stored array item value
   953  func (fpaivs *OsImageProfile_FieldSubPathArrayItemValue) GetRawItemValue() interface{} {
   954  	return fpaivs.subPathItemValue.GetRawItemValue()
   955  }
   956  func (fpaivs *OsImageProfile_FieldSubPathArrayItemValue) AsMetadataPathItemValue() (meta.Meta_FieldPathArrayItemValue, bool) {
   957  	res, ok := fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue)
   958  	return res, ok
   959  }
   960  
   961  // Contains returns a boolean indicating if value that is being held is present in given 'OsImageProfile'
   962  func (fpaivs *OsImageProfile_FieldSubPathArrayItemValue) ContainsValue(source *OsImageProfile) bool {
   963  	switch fpaivs.Selector() {
   964  	case OsImageProfile_FieldPathSelectorMetadata:
   965  		return fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue).ContainsValue(source.GetMetadata())
   966  	default:
   967  		panic(fmt.Sprintf("Invalid selector for OsImageProfile: %d", fpaivs.Selector()))
   968  	}
   969  }
   970  
   971  // OsImageProfile_FieldPathArrayOfValues allows storing slice of values for OsImageProfile fields according to their type
   972  type OsImageProfile_FieldPathArrayOfValues interface {
   973  	gotenobject.FieldPathArrayOfValues
   974  	OsImageProfile_FieldPath
   975  }
   976  
   977  func ParseOsImageProfile_FieldPathArrayOfValues(pathStr, valuesStr string) (OsImageProfile_FieldPathArrayOfValues, error) {
   978  	fp, err := ParseOsImageProfile_FieldPath(pathStr)
   979  	if err != nil {
   980  		return nil, err
   981  	}
   982  	fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr)
   983  	if err != nil {
   984  		return nil, status.Errorf(codes.InvalidArgument, "error parsing OsImageProfile field path array of values from %s: %v", valuesStr, err)
   985  	}
   986  	return fpaov.(OsImageProfile_FieldPathArrayOfValues), nil
   987  }
   988  
   989  func MustParseOsImageProfile_FieldPathArrayOfValues(pathStr, valuesStr string) OsImageProfile_FieldPathArrayOfValues {
   990  	fpaov, err := ParseOsImageProfile_FieldPathArrayOfValues(pathStr, valuesStr)
   991  	if err != nil {
   992  		panic(err)
   993  	}
   994  	return fpaov
   995  }
   996  
   997  type OsImageProfile_FieldTerminalPathArrayOfValues struct {
   998  	OsImageProfile_FieldTerminalPath
   999  	values interface{}
  1000  }
  1001  
  1002  var _ OsImageProfile_FieldPathArrayOfValues = (*OsImageProfile_FieldTerminalPathArrayOfValues)(nil)
  1003  
  1004  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) {
  1005  	switch fpaov.selector {
  1006  	case OsImageProfile_FieldPathSelectorName:
  1007  		for _, v := range fpaov.values.([]*Name) {
  1008  			values = append(values, v)
  1009  		}
  1010  	case OsImageProfile_FieldPathSelectorMetadata:
  1011  		for _, v := range fpaov.values.([]*meta.Meta) {
  1012  			values = append(values, v)
  1013  		}
  1014  	case OsImageProfile_FieldPathSelectorDisplayName:
  1015  		for _, v := range fpaov.values.([]string) {
  1016  			values = append(values, v)
  1017  		}
  1018  	case OsImageProfile_FieldPathSelectorDeviceType:
  1019  		for _, v := range fpaov.values.([]*device_type.Reference) {
  1020  			values = append(values, v)
  1021  		}
  1022  	case OsImageProfile_FieldPathSelectorInstallAiAccelerator:
  1023  		for _, v := range fpaov.values.([]bool) {
  1024  			values = append(values, v)
  1025  		}
  1026  	case OsImageProfile_FieldPathSelectorEncryption:
  1027  		for _, v := range fpaov.values.([]bool) {
  1028  			values = append(values, v)
  1029  		}
  1030  	case OsImageProfile_FieldPathSelectorDiskMapping:
  1031  		for _, v := range fpaov.values.([]string) {
  1032  			values = append(values, v)
  1033  		}
  1034  	case OsImageProfile_FieldPathSelectorNetworkAgent:
  1035  		for _, v := range fpaov.values.([]string) {
  1036  			values = append(values, v)
  1037  		}
  1038  	case OsImageProfile_FieldPathSelectorNtp:
  1039  		for _, v := range fpaov.values.([]string) {
  1040  			values = append(values, v)
  1041  		}
  1042  	case OsImageProfile_FieldPathSelectorHttpProxy:
  1043  		for _, v := range fpaov.values.([]string) {
  1044  			values = append(values, v)
  1045  		}
  1046  	case OsImageProfile_FieldPathSelectorHttpsProxy:
  1047  		for _, v := range fpaov.values.([]string) {
  1048  			values = append(values, v)
  1049  		}
  1050  	case OsImageProfile_FieldPathSelectorNoProxy:
  1051  		for _, v := range fpaov.values.([]string) {
  1052  			values = append(values, v)
  1053  		}
  1054  	}
  1055  	return
  1056  }
  1057  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) {
  1058  	res, ok := fpaov.values.([]*Name)
  1059  	return res, ok
  1060  }
  1061  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsMetadataArrayOfValues() ([]*meta.Meta, bool) {
  1062  	res, ok := fpaov.values.([]*meta.Meta)
  1063  	return res, ok
  1064  }
  1065  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsDisplayNameArrayOfValues() ([]string, bool) {
  1066  	res, ok := fpaov.values.([]string)
  1067  	return res, ok
  1068  }
  1069  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsDeviceTypeArrayOfValues() ([]*device_type.Reference, bool) {
  1070  	res, ok := fpaov.values.([]*device_type.Reference)
  1071  	return res, ok
  1072  }
  1073  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsInstallAiAcceleratorArrayOfValues() ([]bool, bool) {
  1074  	res, ok := fpaov.values.([]bool)
  1075  	return res, ok
  1076  }
  1077  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsEncryptionArrayOfValues() ([]bool, bool) {
  1078  	res, ok := fpaov.values.([]bool)
  1079  	return res, ok
  1080  }
  1081  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsDiskMappingArrayOfValues() ([]string, bool) {
  1082  	res, ok := fpaov.values.([]string)
  1083  	return res, ok
  1084  }
  1085  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsNetworkAgentArrayOfValues() ([]string, bool) {
  1086  	res, ok := fpaov.values.([]string)
  1087  	return res, ok
  1088  }
  1089  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsNtpArrayOfValues() ([]string, bool) {
  1090  	res, ok := fpaov.values.([]string)
  1091  	return res, ok
  1092  }
  1093  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsHttpProxyArrayOfValues() ([]string, bool) {
  1094  	res, ok := fpaov.values.([]string)
  1095  	return res, ok
  1096  }
  1097  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsHttpsProxyArrayOfValues() ([]string, bool) {
  1098  	res, ok := fpaov.values.([]string)
  1099  	return res, ok
  1100  }
  1101  func (fpaov *OsImageProfile_FieldTerminalPathArrayOfValues) AsNoProxyArrayOfValues() ([]string, bool) {
  1102  	res, ok := fpaov.values.([]string)
  1103  	return res, ok
  1104  }
  1105  
  1106  type OsImageProfile_FieldSubPathArrayOfValues struct {
  1107  	OsImageProfile_FieldPath
  1108  	subPathArrayOfValues gotenobject.FieldPathArrayOfValues
  1109  }
  1110  
  1111  var _ OsImageProfile_FieldPathArrayOfValues = (*OsImageProfile_FieldSubPathArrayOfValues)(nil)
  1112  
  1113  func (fpsaov *OsImageProfile_FieldSubPathArrayOfValues) GetRawValues() []interface{} {
  1114  	return fpsaov.subPathArrayOfValues.GetRawValues()
  1115  }
  1116  func (fpsaov *OsImageProfile_FieldSubPathArrayOfValues) AsMetadataPathArrayOfValues() (meta.Meta_FieldPathArrayOfValues, bool) {
  1117  	res, ok := fpsaov.subPathArrayOfValues.(meta.Meta_FieldPathArrayOfValues)
  1118  	return res, ok
  1119  }