func (s DeploymentReplicationSpec) ResetImmutableFields(target *DeploymentReplicationSpec) []string {
	var result []string
	if list := s.Source.ResetImmutableFields(&target.Source, "source."); len(list) > 0 {
		result = append(result, list...)
	}
	if list := s.Destination.ResetImmutableFields(&target.Destination, "destination."); len(list) > 0 {
		result = append(result, list...)
	}
	return result
}
ResetImmutableFields replaces all immutable fields in the given target with values from the source spec.
It returns a list of fields that have been reset.
Field names are relative to `spec.`.
package v2alpha1
import "github.com/arangodb/kube-arangodb/pkg/util/errors"
type DeploymentReplicationSpec struct {
	Source      EndpointSpec `json:"source"`
	Destination EndpointSpec `json:"destination"`
}
func (s DeploymentReplicationSpec) Validate() error {
	if err := s.Source.Validate(true); err != nil {
		return errors.WithStack(err)
	}
	if err := s.Destination.Validate(false); err != nil {
		return errors.WithStack(err)
	}
	return nil
}
func (s *DeploymentReplicationSpec) SetDefaults() {
	s.Source.SetDefaults()
	s.Destination.SetDefaults()
}
func (s *DeploymentReplicationSpec) SetDefaultsFrom(source DeploymentReplicationSpec) {
	s.Source.SetDefaultsFrom(source.Source)
	s.Destination.SetDefaultsFrom(source.Destination)
}