func (in *PrometheusJmxExporterList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	} else {
		return nil
	}
}
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
package v1alpha1
import (
	runtime "k8s.io/apimachinery/pkg/runtime"
)
func (in *MetricsEndpoint) DeepCopyInto(out *MetricsEndpoint) {
	*out = *in
	return
}
func (in *MetricsEndpoint) DeepCopy() *MetricsEndpoint {
	if in == nil {
		return nil
	}
	out := new(MetricsEndpoint)
	in.DeepCopyInto(out)
	return out
}
func (in *PrometheusJmxExporter) DeepCopyInto(out *PrometheusJmxExporter) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *PrometheusJmxExporter) DeepCopy() *PrometheusJmxExporter {
	if in == nil {
		return nil
	}
	out := new(PrometheusJmxExporter)
	in.DeepCopyInto(out)
	return out
}
func (in *PrometheusJmxExporter) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	} else {
		return nil
	}
}
func (in *PrometheusJmxExporterConfig) DeepCopyInto(out *PrometheusJmxExporterConfig) {
	*out = *in
	if in.StartDelaySeconds != nil {
		in, out := &in.StartDelaySeconds, &out.StartDelaySeconds
		if *in == nil {
			*out = nil
		} else {
			*out = new(int)
			**out = **in
		}
	}
	if in.HostPort != nil {
		in, out := &in.HostPort, &out.HostPort
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.Username != nil {
		in, out := &in.Username, &out.Username
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.Password != nil {
		in, out := &in.Password, &out.Password
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.JmxUrl != nil {
		in, out := &in.JmxUrl, &out.JmxUrl
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.Ssl != nil {
		in, out := &in.Ssl, &out.Ssl
		if *in == nil {
			*out = nil
		} else {
			*out = new(bool)
			**out = **in
		}
	}
	if in.LowercaseOutputName != nil {
		in, out := &in.LowercaseOutputName, &out.LowercaseOutputName
		if *in == nil {
			*out = nil
		} else {
			*out = new(bool)
			**out = **in
		}
	}
	if in.LowercaseOutputLabelNames != nil {
		in, out := &in.LowercaseOutputLabelNames, &out.LowercaseOutputLabelNames
		if *in == nil {
			*out = nil
		} else {
			*out = new(bool)
			**out = **in
		}
	}
	if in.WhitelistObjectNames != nil {
		in, out := &in.WhitelistObjectNames, &out.WhitelistObjectNames
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.BlacklistObjectNames != nil {
		in, out := &in.BlacklistObjectNames, &out.BlacklistObjectNames
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]PrometheusJmxExporterConfigRules, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *PrometheusJmxExporterConfig) DeepCopy() *PrometheusJmxExporterConfig {
	if in == nil {
		return nil
	}
	out := new(PrometheusJmxExporterConfig)
	in.DeepCopyInto(out)
	return out
}
func (in *PrometheusJmxExporterConfigRules) DeepCopyInto(out *PrometheusJmxExporterConfigRules) {
	*out = *in
	if in.Pattern != nil {
		in, out := &in.Pattern, &out.Pattern
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.Value != nil {
		in, out := &in.Value, &out.Value
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.ValueFactor != nil {
		in, out := &in.ValueFactor, &out.ValueFactor
		if *in == nil {
			*out = nil
		} else {
			*out = new(float32)
			**out = **in
		}
	}
	if in.Labels != nil {
		in, out := &in.Labels, &out.Labels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Help != nil {
		in, out := &in.Help, &out.Help
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		if *in == nil {
			*out = nil
		} else {
			*out = new(string)
			**out = **in
		}
	}
	if in.AttrNameSnakeCase != nil {
		in, out := &in.AttrNameSnakeCase, &out.AttrNameSnakeCase
		if *in == nil {
			*out = nil
		} else {
			*out = new(bool)
			**out = **in
		}
	}
	return
}
func (in *PrometheusJmxExporterConfigRules) DeepCopy() *PrometheusJmxExporterConfigRules {
	if in == nil {
		return nil
	}
	out := new(PrometheusJmxExporterConfigRules)
	in.DeepCopyInto(out)
	return out
}
func (in *PrometheusJmxExporterList) DeepCopyInto(out *PrometheusJmxExporterList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]PrometheusJmxExporter, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *PrometheusJmxExporterList) DeepCopy() *PrometheusJmxExporterList {
	if in == nil {
		return nil
	}
	out := new(PrometheusJmxExporterList)
	in.DeepCopyInto(out)
	return out
}