func autoConvert_v1_User_To_api_User(in *User, out *user_api.User, s conversion.Scope) error { if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { defaulting.(func(*User))(in) } if err := api.Convert_unversioned_TypeMeta_To_unversioned_TypeMeta(&in.TypeMeta, &out.TypeMeta, s); err != nil { return err } // TODO: Inefficient conversion - can we improve it? if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil { return err } out.FullName = in.FullName if in.Identities != nil { in, out := &in.Identities, &out.Identities *out = make([]string, len(*in)) copy(*out, *in) } else { out.Identities = nil } if in.Groups != nil { in, out := &in.Groups, &out.Groups *out = make([]string, len(*in)) copy(*out, *in) } else { out.Groups = nil } return nil }
// removeIdentityFromUser removes the given identity from the user's list of identities // returns true if the user's identity list was modified func removeIdentityFromUser(identity *api.Identity, user *api.User) bool { identities := sets.NewString(user.Identities...) if !identities.Has(identity.Name) { return false } identities.Delete(identity.Name) user.Identities = identities.List() return true }
// addIdentityToUser adds the given identity to the user's list of identities // returns true if the user's identity list was modified func addIdentityToUser(identity *api.Identity, user *api.User) bool { identities := sets.NewString(user.Identities...) if identities.Has(identity.Name) { return false } identities.Insert(identity.Name) user.Identities = identities.List() return true }
func autoConvert_v1_User_To_api_User(in *User, out *api.User, s conversion.Scope) error { if err := pkg_api.Convert_unversioned_TypeMeta_To_unversioned_TypeMeta(&in.TypeMeta, &out.TypeMeta, s); err != nil { return err } if err := api_v1.Convert_v1_ObjectMeta_To_api_ObjectMeta(&in.ObjectMeta, &out.ObjectMeta, s); err != nil { return err } out.FullName = in.FullName out.Identities = in.Identities out.Groups = in.Groups return nil }