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

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/iam/proto/v1alpha2/organization_invitation.proto
     3  // DO NOT EDIT!!!
     4  
     5  package organization_invitation
     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  	iam_invitation "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/invitation"
    27  	organization "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/organization"
    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  	_ = &iam_invitation.Actor{}
    52  	_ = &organization.Organization{}
    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 OrganizationInvitation_FieldPath interface {
    59  	gotenobject.FieldPath
    60  	Selector() OrganizationInvitation_FieldPathSelector
    61  	Get(source *OrganizationInvitation) []interface{}
    62  	GetSingle(source *OrganizationInvitation) (interface{}, bool)
    63  	ClearValue(item *OrganizationInvitation)
    64  
    65  	// Those methods build corresponding OrganizationInvitation_FieldPathValue
    66  	// (or array of values) and holds passed value. Panics if injected type is incorrect.
    67  	WithIValue(value interface{}) OrganizationInvitation_FieldPathValue
    68  	WithIArrayOfValues(values interface{}) OrganizationInvitation_FieldPathArrayOfValues
    69  	WithIArrayItemValue(value interface{}) OrganizationInvitation_FieldPathArrayItemValue
    70  }
    71  
    72  type OrganizationInvitation_FieldPathSelector int32
    73  
    74  const (
    75  	OrganizationInvitation_FieldPathSelectorName       OrganizationInvitation_FieldPathSelector = 0
    76  	OrganizationInvitation_FieldPathSelectorInvitation OrganizationInvitation_FieldPathSelector = 1
    77  	OrganizationInvitation_FieldPathSelectorMetadata   OrganizationInvitation_FieldPathSelector = 2
    78  )
    79  
    80  func (s OrganizationInvitation_FieldPathSelector) String() string {
    81  	switch s {
    82  	case OrganizationInvitation_FieldPathSelectorName:
    83  		return "name"
    84  	case OrganizationInvitation_FieldPathSelectorInvitation:
    85  		return "invitation"
    86  	case OrganizationInvitation_FieldPathSelectorMetadata:
    87  		return "metadata"
    88  	default:
    89  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", s))
    90  	}
    91  }
    92  
    93  func BuildOrganizationInvitation_FieldPath(fp gotenobject.RawFieldPath) (OrganizationInvitation_FieldPath, error) {
    94  	if len(fp) == 0 {
    95  		return nil, status.Error(codes.InvalidArgument, "empty field path for object OrganizationInvitation")
    96  	}
    97  	if len(fp) == 1 {
    98  		switch fp[0] {
    99  		case "name":
   100  			return &OrganizationInvitation_FieldTerminalPath{selector: OrganizationInvitation_FieldPathSelectorName}, nil
   101  		case "invitation":
   102  			return &OrganizationInvitation_FieldTerminalPath{selector: OrganizationInvitation_FieldPathSelectorInvitation}, nil
   103  		case "metadata":
   104  			return &OrganizationInvitation_FieldTerminalPath{selector: OrganizationInvitation_FieldPathSelectorMetadata}, nil
   105  		}
   106  	} else {
   107  		switch fp[0] {
   108  		case "invitation":
   109  			if subpath, err := iam_invitation.BuildInvitation_FieldPath(fp[1:]); err != nil {
   110  				return nil, err
   111  			} else {
   112  				return &OrganizationInvitation_FieldSubPath{selector: OrganizationInvitation_FieldPathSelectorInvitation, subPath: subpath}, nil
   113  			}
   114  		case "metadata":
   115  			if subpath, err := meta.BuildMeta_FieldPath(fp[1:]); err != nil {
   116  				return nil, err
   117  			} else {
   118  				return &OrganizationInvitation_FieldSubPath{selector: OrganizationInvitation_FieldPathSelectorMetadata, subPath: subpath}, nil
   119  			}
   120  		}
   121  	}
   122  	return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object OrganizationInvitation", fp)
   123  }
   124  
   125  func ParseOrganizationInvitation_FieldPath(rawField string) (OrganizationInvitation_FieldPath, error) {
   126  	fp, err := gotenobject.ParseRawFieldPath(rawField)
   127  	if err != nil {
   128  		return nil, err
   129  	}
   130  	return BuildOrganizationInvitation_FieldPath(fp)
   131  }
   132  
   133  func MustParseOrganizationInvitation_FieldPath(rawField string) OrganizationInvitation_FieldPath {
   134  	fp, err := ParseOrganizationInvitation_FieldPath(rawField)
   135  	if err != nil {
   136  		panic(err)
   137  	}
   138  	return fp
   139  }
   140  
   141  type OrganizationInvitation_FieldTerminalPath struct {
   142  	selector OrganizationInvitation_FieldPathSelector
   143  }
   144  
   145  var _ OrganizationInvitation_FieldPath = (*OrganizationInvitation_FieldTerminalPath)(nil)
   146  
   147  func (fp *OrganizationInvitation_FieldTerminalPath) Selector() OrganizationInvitation_FieldPathSelector {
   148  	return fp.selector
   149  }
   150  
   151  // String returns path representation in proto convention
   152  func (fp *OrganizationInvitation_FieldTerminalPath) String() string {
   153  	return fp.selector.String()
   154  }
   155  
   156  // JSONString returns path representation is JSON convention
   157  func (fp *OrganizationInvitation_FieldTerminalPath) JSONString() string {
   158  	return strcase.ToLowerCamel(fp.String())
   159  }
   160  
   161  // Get returns all values pointed by specific field from source OrganizationInvitation
   162  func (fp *OrganizationInvitation_FieldTerminalPath) Get(source *OrganizationInvitation) (values []interface{}) {
   163  	if source != nil {
   164  		switch fp.selector {
   165  		case OrganizationInvitation_FieldPathSelectorName:
   166  			if source.Name != nil {
   167  				values = append(values, source.Name)
   168  			}
   169  		case OrganizationInvitation_FieldPathSelectorInvitation:
   170  			if source.Invitation != nil {
   171  				values = append(values, source.Invitation)
   172  			}
   173  		case OrganizationInvitation_FieldPathSelectorMetadata:
   174  			if source.Metadata != nil {
   175  				values = append(values, source.Metadata)
   176  			}
   177  		default:
   178  			panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fp.selector))
   179  		}
   180  	}
   181  	return
   182  }
   183  
   184  func (fp *OrganizationInvitation_FieldTerminalPath) GetRaw(source proto.Message) []interface{} {
   185  	return fp.Get(source.(*OrganizationInvitation))
   186  }
   187  
   188  // GetSingle returns value pointed by specific field of from source OrganizationInvitation
   189  func (fp *OrganizationInvitation_FieldTerminalPath) GetSingle(source *OrganizationInvitation) (interface{}, bool) {
   190  	switch fp.selector {
   191  	case OrganizationInvitation_FieldPathSelectorName:
   192  		res := source.GetName()
   193  		return res, res != nil
   194  	case OrganizationInvitation_FieldPathSelectorInvitation:
   195  		res := source.GetInvitation()
   196  		return res, res != nil
   197  	case OrganizationInvitation_FieldPathSelectorMetadata:
   198  		res := source.GetMetadata()
   199  		return res, res != nil
   200  	default:
   201  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fp.selector))
   202  	}
   203  }
   204  
   205  func (fp *OrganizationInvitation_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) {
   206  	return fp.GetSingle(source.(*OrganizationInvitation))
   207  }
   208  
   209  // GetDefault returns a default value of the field type
   210  func (fp *OrganizationInvitation_FieldTerminalPath) GetDefault() interface{} {
   211  	switch fp.selector {
   212  	case OrganizationInvitation_FieldPathSelectorName:
   213  		return (*Name)(nil)
   214  	case OrganizationInvitation_FieldPathSelectorInvitation:
   215  		return (*iam_invitation.Invitation)(nil)
   216  	case OrganizationInvitation_FieldPathSelectorMetadata:
   217  		return (*meta.Meta)(nil)
   218  	default:
   219  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fp.selector))
   220  	}
   221  }
   222  
   223  func (fp *OrganizationInvitation_FieldTerminalPath) ClearValue(item *OrganizationInvitation) {
   224  	if item != nil {
   225  		switch fp.selector {
   226  		case OrganizationInvitation_FieldPathSelectorName:
   227  			item.Name = nil
   228  		case OrganizationInvitation_FieldPathSelectorInvitation:
   229  			item.Invitation = nil
   230  		case OrganizationInvitation_FieldPathSelectorMetadata:
   231  			item.Metadata = nil
   232  		default:
   233  			panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fp.selector))
   234  		}
   235  	}
   236  }
   237  
   238  func (fp *OrganizationInvitation_FieldTerminalPath) ClearValueRaw(item proto.Message) {
   239  	fp.ClearValue(item.(*OrganizationInvitation))
   240  }
   241  
   242  // IsLeaf - whether field path is holds simple value
   243  func (fp *OrganizationInvitation_FieldTerminalPath) IsLeaf() bool {
   244  	return fp.selector == OrganizationInvitation_FieldPathSelectorName
   245  }
   246  
   247  func (fp *OrganizationInvitation_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath {
   248  	return []gotenobject.FieldPath{fp}
   249  }
   250  
   251  func (fp *OrganizationInvitation_FieldTerminalPath) WithIValue(value interface{}) OrganizationInvitation_FieldPathValue {
   252  	switch fp.selector {
   253  	case OrganizationInvitation_FieldPathSelectorName:
   254  		return &OrganizationInvitation_FieldTerminalPathValue{OrganizationInvitation_FieldTerminalPath: *fp, value: value.(*Name)}
   255  	case OrganizationInvitation_FieldPathSelectorInvitation:
   256  		return &OrganizationInvitation_FieldTerminalPathValue{OrganizationInvitation_FieldTerminalPath: *fp, value: value.(*iam_invitation.Invitation)}
   257  	case OrganizationInvitation_FieldPathSelectorMetadata:
   258  		return &OrganizationInvitation_FieldTerminalPathValue{OrganizationInvitation_FieldTerminalPath: *fp, value: value.(*meta.Meta)}
   259  	default:
   260  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fp.selector))
   261  	}
   262  }
   263  
   264  func (fp *OrganizationInvitation_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue {
   265  	return fp.WithIValue(value)
   266  }
   267  
   268  func (fp *OrganizationInvitation_FieldTerminalPath) WithIArrayOfValues(values interface{}) OrganizationInvitation_FieldPathArrayOfValues {
   269  	fpaov := &OrganizationInvitation_FieldTerminalPathArrayOfValues{OrganizationInvitation_FieldTerminalPath: *fp}
   270  	switch fp.selector {
   271  	case OrganizationInvitation_FieldPathSelectorName:
   272  		return &OrganizationInvitation_FieldTerminalPathArrayOfValues{OrganizationInvitation_FieldTerminalPath: *fp, values: values.([]*Name)}
   273  	case OrganizationInvitation_FieldPathSelectorInvitation:
   274  		return &OrganizationInvitation_FieldTerminalPathArrayOfValues{OrganizationInvitation_FieldTerminalPath: *fp, values: values.([]*iam_invitation.Invitation)}
   275  	case OrganizationInvitation_FieldPathSelectorMetadata:
   276  		return &OrganizationInvitation_FieldTerminalPathArrayOfValues{OrganizationInvitation_FieldTerminalPath: *fp, values: values.([]*meta.Meta)}
   277  	default:
   278  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fp.selector))
   279  	}
   280  	return fpaov
   281  }
   282  
   283  func (fp *OrganizationInvitation_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues {
   284  	return fp.WithIArrayOfValues(values)
   285  }
   286  
   287  func (fp *OrganizationInvitation_FieldTerminalPath) WithIArrayItemValue(value interface{}) OrganizationInvitation_FieldPathArrayItemValue {
   288  	switch fp.selector {
   289  	default:
   290  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fp.selector))
   291  	}
   292  }
   293  
   294  func (fp *OrganizationInvitation_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue {
   295  	return fp.WithIArrayItemValue(value)
   296  }
   297  
   298  type OrganizationInvitation_FieldSubPath struct {
   299  	selector OrganizationInvitation_FieldPathSelector
   300  	subPath  gotenobject.FieldPath
   301  }
   302  
   303  var _ OrganizationInvitation_FieldPath = (*OrganizationInvitation_FieldSubPath)(nil)
   304  
   305  func (fps *OrganizationInvitation_FieldSubPath) Selector() OrganizationInvitation_FieldPathSelector {
   306  	return fps.selector
   307  }
   308  func (fps *OrganizationInvitation_FieldSubPath) AsInvitationSubPath() (iam_invitation.Invitation_FieldPath, bool) {
   309  	res, ok := fps.subPath.(iam_invitation.Invitation_FieldPath)
   310  	return res, ok
   311  }
   312  func (fps *OrganizationInvitation_FieldSubPath) AsMetadataSubPath() (meta.Meta_FieldPath, bool) {
   313  	res, ok := fps.subPath.(meta.Meta_FieldPath)
   314  	return res, ok
   315  }
   316  
   317  // String returns path representation in proto convention
   318  func (fps *OrganizationInvitation_FieldSubPath) String() string {
   319  	return fps.selector.String() + "." + fps.subPath.String()
   320  }
   321  
   322  // JSONString returns path representation is JSON convention
   323  func (fps *OrganizationInvitation_FieldSubPath) JSONString() string {
   324  	return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString()
   325  }
   326  
   327  // Get returns all values pointed by selected field from source OrganizationInvitation
   328  func (fps *OrganizationInvitation_FieldSubPath) Get(source *OrganizationInvitation) (values []interface{}) {
   329  	switch fps.selector {
   330  	case OrganizationInvitation_FieldPathSelectorInvitation:
   331  		values = append(values, fps.subPath.GetRaw(source.GetInvitation())...)
   332  	case OrganizationInvitation_FieldPathSelectorMetadata:
   333  		values = append(values, fps.subPath.GetRaw(source.GetMetadata())...)
   334  	default:
   335  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fps.selector))
   336  	}
   337  	return
   338  }
   339  
   340  func (fps *OrganizationInvitation_FieldSubPath) GetRaw(source proto.Message) []interface{} {
   341  	return fps.Get(source.(*OrganizationInvitation))
   342  }
   343  
   344  // GetSingle returns value of selected field from source OrganizationInvitation
   345  func (fps *OrganizationInvitation_FieldSubPath) GetSingle(source *OrganizationInvitation) (interface{}, bool) {
   346  	switch fps.selector {
   347  	case OrganizationInvitation_FieldPathSelectorInvitation:
   348  		if source.GetInvitation() == nil {
   349  			return nil, false
   350  		}
   351  		return fps.subPath.GetSingleRaw(source.GetInvitation())
   352  	case OrganizationInvitation_FieldPathSelectorMetadata:
   353  		if source.GetMetadata() == nil {
   354  			return nil, false
   355  		}
   356  		return fps.subPath.GetSingleRaw(source.GetMetadata())
   357  	default:
   358  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fps.selector))
   359  	}
   360  }
   361  
   362  func (fps *OrganizationInvitation_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) {
   363  	return fps.GetSingle(source.(*OrganizationInvitation))
   364  }
   365  
   366  // GetDefault returns a default value of the field type
   367  func (fps *OrganizationInvitation_FieldSubPath) GetDefault() interface{} {
   368  	return fps.subPath.GetDefault()
   369  }
   370  
   371  func (fps *OrganizationInvitation_FieldSubPath) ClearValue(item *OrganizationInvitation) {
   372  	if item != nil {
   373  		switch fps.selector {
   374  		case OrganizationInvitation_FieldPathSelectorInvitation:
   375  			fps.subPath.ClearValueRaw(item.Invitation)
   376  		case OrganizationInvitation_FieldPathSelectorMetadata:
   377  			fps.subPath.ClearValueRaw(item.Metadata)
   378  		default:
   379  			panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fps.selector))
   380  		}
   381  	}
   382  }
   383  
   384  func (fps *OrganizationInvitation_FieldSubPath) ClearValueRaw(item proto.Message) {
   385  	fps.ClearValue(item.(*OrganizationInvitation))
   386  }
   387  
   388  // IsLeaf - whether field path is holds simple value
   389  func (fps *OrganizationInvitation_FieldSubPath) IsLeaf() bool {
   390  	return fps.subPath.IsLeaf()
   391  }
   392  
   393  func (fps *OrganizationInvitation_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath {
   394  	iPaths := []gotenobject.FieldPath{&OrganizationInvitation_FieldTerminalPath{selector: fps.selector}}
   395  	iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...)
   396  	return iPaths
   397  }
   398  
   399  func (fps *OrganizationInvitation_FieldSubPath) WithIValue(value interface{}) OrganizationInvitation_FieldPathValue {
   400  	return &OrganizationInvitation_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)}
   401  }
   402  
   403  func (fps *OrganizationInvitation_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue {
   404  	return fps.WithIValue(value)
   405  }
   406  
   407  func (fps *OrganizationInvitation_FieldSubPath) WithIArrayOfValues(values interface{}) OrganizationInvitation_FieldPathArrayOfValues {
   408  	return &OrganizationInvitation_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)}
   409  }
   410  
   411  func (fps *OrganizationInvitation_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues {
   412  	return fps.WithIArrayOfValues(values)
   413  }
   414  
   415  func (fps *OrganizationInvitation_FieldSubPath) WithIArrayItemValue(value interface{}) OrganizationInvitation_FieldPathArrayItemValue {
   416  	return &OrganizationInvitation_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)}
   417  }
   418  
   419  func (fps *OrganizationInvitation_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue {
   420  	return fps.WithIArrayItemValue(value)
   421  }
   422  
   423  // OrganizationInvitation_FieldPathValue allows storing values for OrganizationInvitation fields according to their type
   424  type OrganizationInvitation_FieldPathValue interface {
   425  	OrganizationInvitation_FieldPath
   426  	gotenobject.FieldPathValue
   427  	SetTo(target **OrganizationInvitation)
   428  	CompareWith(*OrganizationInvitation) (cmp int, comparable bool)
   429  }
   430  
   431  func ParseOrganizationInvitation_FieldPathValue(pathStr, valueStr string) (OrganizationInvitation_FieldPathValue, error) {
   432  	fp, err := ParseOrganizationInvitation_FieldPath(pathStr)
   433  	if err != nil {
   434  		return nil, err
   435  	}
   436  	fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr)
   437  	if err != nil {
   438  		return nil, status.Errorf(codes.InvalidArgument, "error parsing OrganizationInvitation field path value from %s: %v", valueStr, err)
   439  	}
   440  	return fpv.(OrganizationInvitation_FieldPathValue), nil
   441  }
   442  
   443  func MustParseOrganizationInvitation_FieldPathValue(pathStr, valueStr string) OrganizationInvitation_FieldPathValue {
   444  	fpv, err := ParseOrganizationInvitation_FieldPathValue(pathStr, valueStr)
   445  	if err != nil {
   446  		panic(err)
   447  	}
   448  	return fpv
   449  }
   450  
   451  type OrganizationInvitation_FieldTerminalPathValue struct {
   452  	OrganizationInvitation_FieldTerminalPath
   453  	value interface{}
   454  }
   455  
   456  var _ OrganizationInvitation_FieldPathValue = (*OrganizationInvitation_FieldTerminalPathValue)(nil)
   457  
   458  // GetRawValue returns raw value stored under selected path for 'OrganizationInvitation' as interface{}
   459  func (fpv *OrganizationInvitation_FieldTerminalPathValue) GetRawValue() interface{} {
   460  	return fpv.value
   461  }
   462  func (fpv *OrganizationInvitation_FieldTerminalPathValue) AsNameValue() (*Name, bool) {
   463  	res, ok := fpv.value.(*Name)
   464  	return res, ok
   465  }
   466  func (fpv *OrganizationInvitation_FieldTerminalPathValue) AsInvitationValue() (*iam_invitation.Invitation, bool) {
   467  	res, ok := fpv.value.(*iam_invitation.Invitation)
   468  	return res, ok
   469  }
   470  func (fpv *OrganizationInvitation_FieldTerminalPathValue) AsMetadataValue() (*meta.Meta, bool) {
   471  	res, ok := fpv.value.(*meta.Meta)
   472  	return res, ok
   473  }
   474  
   475  // SetTo stores value for selected field for object OrganizationInvitation
   476  func (fpv *OrganizationInvitation_FieldTerminalPathValue) SetTo(target **OrganizationInvitation) {
   477  	if *target == nil {
   478  		*target = new(OrganizationInvitation)
   479  	}
   480  	switch fpv.selector {
   481  	case OrganizationInvitation_FieldPathSelectorName:
   482  		(*target).Name = fpv.value.(*Name)
   483  	case OrganizationInvitation_FieldPathSelectorInvitation:
   484  		(*target).Invitation = fpv.value.(*iam_invitation.Invitation)
   485  	case OrganizationInvitation_FieldPathSelectorMetadata:
   486  		(*target).Metadata = fpv.value.(*meta.Meta)
   487  	default:
   488  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fpv.selector))
   489  	}
   490  }
   491  
   492  func (fpv *OrganizationInvitation_FieldTerminalPathValue) SetToRaw(target proto.Message) {
   493  	typedObject := target.(*OrganizationInvitation)
   494  	fpv.SetTo(&typedObject)
   495  }
   496  
   497  // CompareWith compares value in the 'OrganizationInvitation_FieldTerminalPathValue' with the value under path in 'OrganizationInvitation'.
   498  func (fpv *OrganizationInvitation_FieldTerminalPathValue) CompareWith(source *OrganizationInvitation) (int, bool) {
   499  	switch fpv.selector {
   500  	case OrganizationInvitation_FieldPathSelectorName:
   501  		leftValue := fpv.value.(*Name)
   502  		rightValue := source.GetName()
   503  		if leftValue == nil {
   504  			if rightValue != nil {
   505  				return -1, true
   506  			}
   507  			return 0, true
   508  		}
   509  		if rightValue == nil {
   510  			return 1, true
   511  		}
   512  		if leftValue.String() == rightValue.String() {
   513  			return 0, true
   514  		} else if leftValue.String() < rightValue.String() {
   515  			return -1, true
   516  		} else {
   517  			return 1, true
   518  		}
   519  	case OrganizationInvitation_FieldPathSelectorInvitation:
   520  		return 0, false
   521  	case OrganizationInvitation_FieldPathSelectorMetadata:
   522  		return 0, false
   523  	default:
   524  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fpv.selector))
   525  	}
   526  }
   527  
   528  func (fpv *OrganizationInvitation_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) {
   529  	return fpv.CompareWith(source.(*OrganizationInvitation))
   530  }
   531  
   532  type OrganizationInvitation_FieldSubPathValue struct {
   533  	OrganizationInvitation_FieldPath
   534  	subPathValue gotenobject.FieldPathValue
   535  }
   536  
   537  var _ OrganizationInvitation_FieldPathValue = (*OrganizationInvitation_FieldSubPathValue)(nil)
   538  
   539  func (fpvs *OrganizationInvitation_FieldSubPathValue) AsInvitationPathValue() (iam_invitation.Invitation_FieldPathValue, bool) {
   540  	res, ok := fpvs.subPathValue.(iam_invitation.Invitation_FieldPathValue)
   541  	return res, ok
   542  }
   543  func (fpvs *OrganizationInvitation_FieldSubPathValue) AsMetadataPathValue() (meta.Meta_FieldPathValue, bool) {
   544  	res, ok := fpvs.subPathValue.(meta.Meta_FieldPathValue)
   545  	return res, ok
   546  }
   547  
   548  func (fpvs *OrganizationInvitation_FieldSubPathValue) SetTo(target **OrganizationInvitation) {
   549  	if *target == nil {
   550  		*target = new(OrganizationInvitation)
   551  	}
   552  	switch fpvs.Selector() {
   553  	case OrganizationInvitation_FieldPathSelectorInvitation:
   554  		fpvs.subPathValue.(iam_invitation.Invitation_FieldPathValue).SetTo(&(*target).Invitation)
   555  	case OrganizationInvitation_FieldPathSelectorMetadata:
   556  		fpvs.subPathValue.(meta.Meta_FieldPathValue).SetTo(&(*target).Metadata)
   557  	default:
   558  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fpvs.Selector()))
   559  	}
   560  }
   561  
   562  func (fpvs *OrganizationInvitation_FieldSubPathValue) SetToRaw(target proto.Message) {
   563  	typedObject := target.(*OrganizationInvitation)
   564  	fpvs.SetTo(&typedObject)
   565  }
   566  
   567  func (fpvs *OrganizationInvitation_FieldSubPathValue) GetRawValue() interface{} {
   568  	return fpvs.subPathValue.GetRawValue()
   569  }
   570  
   571  func (fpvs *OrganizationInvitation_FieldSubPathValue) CompareWith(source *OrganizationInvitation) (int, bool) {
   572  	switch fpvs.Selector() {
   573  	case OrganizationInvitation_FieldPathSelectorInvitation:
   574  		return fpvs.subPathValue.(iam_invitation.Invitation_FieldPathValue).CompareWith(source.GetInvitation())
   575  	case OrganizationInvitation_FieldPathSelectorMetadata:
   576  		return fpvs.subPathValue.(meta.Meta_FieldPathValue).CompareWith(source.GetMetadata())
   577  	default:
   578  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fpvs.Selector()))
   579  	}
   580  }
   581  
   582  func (fpvs *OrganizationInvitation_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) {
   583  	return fpvs.CompareWith(source.(*OrganizationInvitation))
   584  }
   585  
   586  // OrganizationInvitation_FieldPathArrayItemValue allows storing single item in Path-specific values for OrganizationInvitation according to their type
   587  // Present only for array (repeated) types.
   588  type OrganizationInvitation_FieldPathArrayItemValue interface {
   589  	gotenobject.FieldPathArrayItemValue
   590  	OrganizationInvitation_FieldPath
   591  	ContainsValue(*OrganizationInvitation) bool
   592  }
   593  
   594  // ParseOrganizationInvitation_FieldPathArrayItemValue parses string and JSON-encoded value to its Value
   595  func ParseOrganizationInvitation_FieldPathArrayItemValue(pathStr, valueStr string) (OrganizationInvitation_FieldPathArrayItemValue, error) {
   596  	fp, err := ParseOrganizationInvitation_FieldPath(pathStr)
   597  	if err != nil {
   598  		return nil, err
   599  	}
   600  	fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr)
   601  	if err != nil {
   602  		return nil, status.Errorf(codes.InvalidArgument, "error parsing OrganizationInvitation field path array item value from %s: %v", valueStr, err)
   603  	}
   604  	return fpaiv.(OrganizationInvitation_FieldPathArrayItemValue), nil
   605  }
   606  
   607  func MustParseOrganizationInvitation_FieldPathArrayItemValue(pathStr, valueStr string) OrganizationInvitation_FieldPathArrayItemValue {
   608  	fpaiv, err := ParseOrganizationInvitation_FieldPathArrayItemValue(pathStr, valueStr)
   609  	if err != nil {
   610  		panic(err)
   611  	}
   612  	return fpaiv
   613  }
   614  
   615  type OrganizationInvitation_FieldTerminalPathArrayItemValue struct {
   616  	OrganizationInvitation_FieldTerminalPath
   617  	value interface{}
   618  }
   619  
   620  var _ OrganizationInvitation_FieldPathArrayItemValue = (*OrganizationInvitation_FieldTerminalPathArrayItemValue)(nil)
   621  
   622  // GetRawValue returns stored element value for array in object OrganizationInvitation as interface{}
   623  func (fpaiv *OrganizationInvitation_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} {
   624  	return fpaiv.value
   625  }
   626  
   627  func (fpaiv *OrganizationInvitation_FieldTerminalPathArrayItemValue) GetSingle(source *OrganizationInvitation) (interface{}, bool) {
   628  	return nil, false
   629  }
   630  
   631  func (fpaiv *OrganizationInvitation_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) {
   632  	return fpaiv.GetSingle(source.(*OrganizationInvitation))
   633  }
   634  
   635  // Contains returns a boolean indicating if value that is being held is present in given 'OrganizationInvitation'
   636  func (fpaiv *OrganizationInvitation_FieldTerminalPathArrayItemValue) ContainsValue(source *OrganizationInvitation) bool {
   637  	slice := fpaiv.OrganizationInvitation_FieldTerminalPath.Get(source)
   638  	for _, v := range slice {
   639  		if asProtoMsg, ok := fpaiv.value.(proto.Message); ok {
   640  			if proto.Equal(asProtoMsg, v.(proto.Message)) {
   641  				return true
   642  			}
   643  		} else if reflect.DeepEqual(v, fpaiv.value) {
   644  			return true
   645  		}
   646  	}
   647  	return false
   648  }
   649  
   650  type OrganizationInvitation_FieldSubPathArrayItemValue struct {
   651  	OrganizationInvitation_FieldPath
   652  	subPathItemValue gotenobject.FieldPathArrayItemValue
   653  }
   654  
   655  // GetRawValue returns stored array item value
   656  func (fpaivs *OrganizationInvitation_FieldSubPathArrayItemValue) GetRawItemValue() interface{} {
   657  	return fpaivs.subPathItemValue.GetRawItemValue()
   658  }
   659  func (fpaivs *OrganizationInvitation_FieldSubPathArrayItemValue) AsInvitationPathItemValue() (iam_invitation.Invitation_FieldPathArrayItemValue, bool) {
   660  	res, ok := fpaivs.subPathItemValue.(iam_invitation.Invitation_FieldPathArrayItemValue)
   661  	return res, ok
   662  }
   663  func (fpaivs *OrganizationInvitation_FieldSubPathArrayItemValue) AsMetadataPathItemValue() (meta.Meta_FieldPathArrayItemValue, bool) {
   664  	res, ok := fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue)
   665  	return res, ok
   666  }
   667  
   668  // Contains returns a boolean indicating if value that is being held is present in given 'OrganizationInvitation'
   669  func (fpaivs *OrganizationInvitation_FieldSubPathArrayItemValue) ContainsValue(source *OrganizationInvitation) bool {
   670  	switch fpaivs.Selector() {
   671  	case OrganizationInvitation_FieldPathSelectorInvitation:
   672  		return fpaivs.subPathItemValue.(iam_invitation.Invitation_FieldPathArrayItemValue).ContainsValue(source.GetInvitation())
   673  	case OrganizationInvitation_FieldPathSelectorMetadata:
   674  		return fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue).ContainsValue(source.GetMetadata())
   675  	default:
   676  		panic(fmt.Sprintf("Invalid selector for OrganizationInvitation: %d", fpaivs.Selector()))
   677  	}
   678  }
   679  
   680  // OrganizationInvitation_FieldPathArrayOfValues allows storing slice of values for OrganizationInvitation fields according to their type
   681  type OrganizationInvitation_FieldPathArrayOfValues interface {
   682  	gotenobject.FieldPathArrayOfValues
   683  	OrganizationInvitation_FieldPath
   684  }
   685  
   686  func ParseOrganizationInvitation_FieldPathArrayOfValues(pathStr, valuesStr string) (OrganizationInvitation_FieldPathArrayOfValues, error) {
   687  	fp, err := ParseOrganizationInvitation_FieldPath(pathStr)
   688  	if err != nil {
   689  		return nil, err
   690  	}
   691  	fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr)
   692  	if err != nil {
   693  		return nil, status.Errorf(codes.InvalidArgument, "error parsing OrganizationInvitation field path array of values from %s: %v", valuesStr, err)
   694  	}
   695  	return fpaov.(OrganizationInvitation_FieldPathArrayOfValues), nil
   696  }
   697  
   698  func MustParseOrganizationInvitation_FieldPathArrayOfValues(pathStr, valuesStr string) OrganizationInvitation_FieldPathArrayOfValues {
   699  	fpaov, err := ParseOrganizationInvitation_FieldPathArrayOfValues(pathStr, valuesStr)
   700  	if err != nil {
   701  		panic(err)
   702  	}
   703  	return fpaov
   704  }
   705  
   706  type OrganizationInvitation_FieldTerminalPathArrayOfValues struct {
   707  	OrganizationInvitation_FieldTerminalPath
   708  	values interface{}
   709  }
   710  
   711  var _ OrganizationInvitation_FieldPathArrayOfValues = (*OrganizationInvitation_FieldTerminalPathArrayOfValues)(nil)
   712  
   713  func (fpaov *OrganizationInvitation_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) {
   714  	switch fpaov.selector {
   715  	case OrganizationInvitation_FieldPathSelectorName:
   716  		for _, v := range fpaov.values.([]*Name) {
   717  			values = append(values, v)
   718  		}
   719  	case OrganizationInvitation_FieldPathSelectorInvitation:
   720  		for _, v := range fpaov.values.([]*iam_invitation.Invitation) {
   721  			values = append(values, v)
   722  		}
   723  	case OrganizationInvitation_FieldPathSelectorMetadata:
   724  		for _, v := range fpaov.values.([]*meta.Meta) {
   725  			values = append(values, v)
   726  		}
   727  	}
   728  	return
   729  }
   730  func (fpaov *OrganizationInvitation_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) {
   731  	res, ok := fpaov.values.([]*Name)
   732  	return res, ok
   733  }
   734  func (fpaov *OrganizationInvitation_FieldTerminalPathArrayOfValues) AsInvitationArrayOfValues() ([]*iam_invitation.Invitation, bool) {
   735  	res, ok := fpaov.values.([]*iam_invitation.Invitation)
   736  	return res, ok
   737  }
   738  func (fpaov *OrganizationInvitation_FieldTerminalPathArrayOfValues) AsMetadataArrayOfValues() ([]*meta.Meta, bool) {
   739  	res, ok := fpaov.values.([]*meta.Meta)
   740  	return res, ok
   741  }
   742  
   743  type OrganizationInvitation_FieldSubPathArrayOfValues struct {
   744  	OrganizationInvitation_FieldPath
   745  	subPathArrayOfValues gotenobject.FieldPathArrayOfValues
   746  }
   747  
   748  var _ OrganizationInvitation_FieldPathArrayOfValues = (*OrganizationInvitation_FieldSubPathArrayOfValues)(nil)
   749  
   750  func (fpsaov *OrganizationInvitation_FieldSubPathArrayOfValues) GetRawValues() []interface{} {
   751  	return fpsaov.subPathArrayOfValues.GetRawValues()
   752  }
   753  func (fpsaov *OrganizationInvitation_FieldSubPathArrayOfValues) AsInvitationPathArrayOfValues() (iam_invitation.Invitation_FieldPathArrayOfValues, bool) {
   754  	res, ok := fpsaov.subPathArrayOfValues.(iam_invitation.Invitation_FieldPathArrayOfValues)
   755  	return res, ok
   756  }
   757  func (fpsaov *OrganizationInvitation_FieldSubPathArrayOfValues) AsMetadataPathArrayOfValues() (meta.Meta_FieldPathArrayOfValues, bool) {
   758  	res, ok := fpsaov.subPathArrayOfValues.(meta.Meta_FieldPathArrayOfValues)
   759  	return res, ok
   760  }