// +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_Project, InType: reflect.TypeOf(&Project{})},
		conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ProjectList, InType: reflect.TypeOf(&ProjectList{})},
		conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ProjectRequest, InType: reflect.TypeOf(&ProjectRequest{})},
		conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ProjectSpec, InType: reflect.TypeOf(&ProjectSpec{})},
		conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ProjectStatus, InType: reflect.TypeOf(&ProjectStatus{})},
	)
}

func DeepCopy_v1_Project(in interface{}, out interface{}, c *conversion.Cloner) error {
	{
		in := in.(*Project)
		out := out.(*Project)
		out.TypeMeta = in.TypeMeta
		if err := api_v1.DeepCopy_v1_ObjectMeta(&in.ObjectMeta, &out.ObjectMeta, c); err != nil {
			return err
		}
		if err := DeepCopy_v1_ProjectSpec(&in.Spec, &out.Spec, c); err != nil {
			return err
		}
		out.Status = in.Status
		return nil
	}
}

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

func DeepCopy_v1_ProjectRequest(in interface{}, out interface{}, c *conversion.Cloner) error {
	{
		in := in.(*ProjectRequest)
		out := out.(*ProjectRequest)
		out.TypeMeta = in.TypeMeta
		if err := api_v1.DeepCopy_v1_ObjectMeta(&in.ObjectMeta, &out.ObjectMeta, c); err != nil {
			return err
		}
		out.DisplayName = in.DisplayName
		out.Description = in.Description
		return nil
	}
}

func DeepCopy_v1_ProjectSpec(in interface{}, out interface{}, c *conversion.Cloner) error {
	{
		in := in.(*ProjectSpec)
		out := out.(*ProjectSpec)
		if in.Finalizers != nil {
			in, out := &in.Finalizers, &out.Finalizers
			*out = make([]api_v1.FinalizerName, len(*in))
			for i := range *in {
				(*out)[i] = (*in)[i]
			}
		} else {
			out.Finalizers = nil
		}
		return nil
	}
}

func DeepCopy_v1_ProjectStatus(in interface{}, out interface{}, c *conversion.Cloner) error {
	{
		in := in.(*ProjectStatus)
		out := out.(*ProjectStatus)
		out.Phase = in.Phase
		return nil
	}
}