Documentation ¶
Index ¶
- type Conflict
- type Conflicts
- type Converter
- type Updater
- func (s *Updater) Apply(liveObject, configObject *typed.TypedValue, version fieldpath.APIVersion, ...) (*typed.TypedValue, fieldpath.ManagedFields, error)
- func (s *Updater) EnableUnionFeature()
- func (s *Updater) Update(liveObject, newObject *typed.TypedValue, version fieldpath.APIVersion, ...) (*typed.TypedValue, fieldpath.ManagedFields, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Conflict ¶
Conflict is a conflict on a specific field with the current manager of that field. It does implement the error interface so that it can be used as an error.
type Conflicts ¶
type Conflicts []Conflict
Conflicts accumulates multiple conflicts and aggregates them by managers.
func ConflictsFromManagers ¶
func ConflictsFromManagers(sets fieldpath.ManagedFields) Conflicts
ConflictsFromManagers creates a list of conflicts given Managers sets.
func (Conflicts) Equals ¶
Equals returns true if the lists of conflicts are the same.
type Converter ¶
type Converter interface { Convert(object *typed.TypedValue, version fieldpath.APIVersion) (*typed.TypedValue, error) IsMissingVersionError(error) bool }
Converter is an interface to the conversion logic. The converter needs to be able to convert objects from one version to another.
type Updater ¶
type Updater struct { Converter Converter // contains filtered or unexported fields }
Updater is the object used to compute updated FieldSets and also merge the object on Apply.
func (*Updater) Apply ¶
func (s *Updater) Apply(liveObject, configObject *typed.TypedValue, version fieldpath.APIVersion, managers fieldpath.ManagedFields, manager string, force bool) (*typed.TypedValue, fieldpath.ManagedFields, error)
Apply should be called when Apply is run, given the current object as well as the configuration that is applied. This will merge the object and return it.
func (*Updater) EnableUnionFeature ¶
func (s *Updater) EnableUnionFeature()
EnableUnionFeature turns on union handling. It is disabled by default until the feature is complete.
func (*Updater) Update ¶
func (s *Updater) Update(liveObject, newObject *typed.TypedValue, version fieldpath.APIVersion, managers fieldpath.ManagedFields, manager string) (*typed.TypedValue, fieldpath.ManagedFields, error)
Update is the method you should call once you've merged your final object on CREATE/UPDATE/PATCH verbs. newObject must be the object that you intend to persist (after applying the patch if this is for a PATCH call), and liveObject must be the original object (empty if this is a CREATE call).