// +build !ignore_autogenerated_openshift

// This file was autogenerated by deepcopy-gen. Do not edit it manually!

package v1

import (
	api_v1 "k8s.io/kubernetes/pkg/api/v1"
	conversion "k8s.io/kubernetes/pkg/conversion"
	runtime "k8s.io/kubernetes/pkg/runtime"
	reflect "reflect"
)

func init() {
	SchemeBuilder.Register(RegisterDeepCopies)
}

// RegisterDeepCopies adds deep-copy functions to the given scheme. Public
// to allow building arbitrary schemes.
func RegisterDeepCopies(scheme *runtime.Scheme) error {
	return scheme.AddGeneratedDeepCopyFuncs(
		conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Parameter, InType: reflect.TypeOf(&Parameter{})},
		conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Template, InType: reflect.TypeOf(&Template{})},
		conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_TemplateList, InType: reflect.TypeOf(&TemplateList{})},
	)
}

func DeepCopy_v1_Parameter(in interface{}, out interface{}, c *conversion.Cloner) error {
	{
		in := in.(*Parameter)
		out := out.(*Parameter)
		out.Name = in.Name
		out.DisplayName = in.DisplayName
		out.Description = in.Description
		out.Value = in.Value
		out.Generate = in.Generate
		out.From = in.From
		out.Required = in.Required
		return nil
	}
}

func DeepCopy_v1_Template(in interface{}, out interface{}, c *conversion.Cloner) error {
	{
		in := in.(*Template)
		out := out.(*Template)
		out.TypeMeta = in.TypeMeta
		if err := api_v1.DeepCopy_v1_ObjectMeta(&in.ObjectMeta, &out.ObjectMeta, c); err != nil {
			return err
		}
		out.Message = in.Message
		if in.Objects != nil {
			in, out := &in.Objects, &out.Objects
			*out = make([]runtime.RawExtension, len(*in))
			for i := range *in {
				if err := runtime.DeepCopy_runtime_RawExtension(&(*in)[i], &(*out)[i], c); err != nil {
					return err
				}
			}
		} else {
			out.Objects = nil
		}
		if in.Parameters != nil {
			in, out := &in.Parameters, &out.Parameters
			*out = make([]Parameter, len(*in))
			for i := range *in {
				(*out)[i] = (*in)[i]
			}
		} else {
			out.Parameters = nil
		}
		if in.ObjectLabels != nil {
			in, out := &in.ObjectLabels, &out.ObjectLabels
			*out = make(map[string]string)
			for key, val := range *in {
				(*out)[key] = val
			}
		} else {
			out.ObjectLabels = nil
		}
		return nil
	}
}

func DeepCopy_v1_TemplateList(in interface{}, out interface{}, c *conversion.Cloner) error {
	{
		in := in.(*TemplateList)
		out := out.(*TemplateList)
		out.TypeMeta = in.TypeMeta
		out.ListMeta = in.ListMeta
		if in.Items != nil {
			in, out := &in.Items, &out.Items
			*out = make([]Template, len(*in))
			for i := range *in {
				if err := DeepCopy_v1_Template(&(*in)[i], &(*out)[i], c); err != nil {
					return err
				}
			}
		} else {
			out.Items = nil
		}
		return nil
	}
}
