func (b *JobApplyConfiguration) WithSelfLink(value string) *JobApplyConfiguration {
	b.ensureObjectMetaApplyConfigurationExists()
	b.SelfLink = &value
	return b
}
WithSelfLink sets the SelfLink field in the declarative configuration to the given value
and returns the receiver, so that objects can be built by chaining "With" function invocations.
If called multiple times, the SelfLink field is set to the value of the last call.
package v1
import (
	apibatchv1 "k8s.io/api/batch/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	types "k8s.io/apimachinery/pkg/types"
	managedfields "k8s.io/apimachinery/pkg/util/managedfields"
	internal "k8s.io/client-go/applyconfigurations/internal"
	v1 "k8s.io/client-go/applyconfigurations/meta/v1"
)
type JobApplyConfiguration struct {
	v1.TypeMetaApplyConfiguration    `json:",inline"`
	*v1.ObjectMetaApplyConfiguration `json:"metadata,omitempty"`
	Spec                             *JobSpecApplyConfiguration   `json:"spec,omitempty"`
	Status                           *JobStatusApplyConfiguration `json:"status,omitempty"`
}
func Job(name, namespace string) *JobApplyConfiguration {
	b := &JobApplyConfiguration{}
	b.WithName(name)
	b.WithNamespace(namespace)
	b.WithKind("Job")
	b.WithAPIVersion("batch/v1")
	return b
}
func ExtractJob(job *apibatchv1.Job, fieldManager string) (*JobApplyConfiguration, error) {
	return extractJob(job, fieldManager, "")
}
func ExtractJobStatus(job *apibatchv1.Job, fieldManager string) (*JobApplyConfiguration, error) {
	return extractJob(job, fieldManager, "status")
}
func extractJob(job *apibatchv1.Job, fieldManager string, subresource string) (*JobApplyConfiguration, error) {
	b := &JobApplyConfiguration{}
	err := managedfields.ExtractInto(job, internal.Parser().Type("io.k8s.api.batch.v1.Job"), fieldManager, b, subresource)
	if err != nil {
		return nil, err
	}
	b.WithName(job.Name)
	b.WithNamespace(job.Namespace)
	b.WithKind("Job")
	b.WithAPIVersion("batch/v1")
	return b, nil
}
func (b *JobApplyConfiguration) WithKind(value string) *JobApplyConfiguration {
	b.Kind = &value
	return b
}
func (b *JobApplyConfiguration) WithAPIVersion(value string) *JobApplyConfiguration {
	b.APIVersion = &value
	return b
}
func (b *JobApplyConfiguration) WithName(value string) *JobApplyConfiguration {
	b.ensureObjectMetaApplyConfigurationExists()
	b.Name = &value
	return b
}
func (b *JobApplyConfiguration) WithGenerateName(value string) *JobApplyConfiguration {
	b.ensureObjectMetaApplyConfigurationExists()
	b.GenerateName = &value
	return b
}
func (b *JobApplyConfiguration) WithNamespace(value string) *JobApplyConfiguration {
	b.ensureObjectMetaApplyConfigurationExists()
	b.Namespace = &value
	return b
}