Merge pull request #29102 from ping035627/ping035627-patch-0719

Automatic merge from submit-queue

Optimise getAPIGroupVersion function in genericapiserver.go

About the newAPIGroupVersion and the getAPIGroupVersion function  in genericapiserver.go, I think they can optimise.
This commit is contained in:
k8s-merge-robot 2016-07-20 23:31:17 -07:00 committed by GitHub
commit 1784e99a1d

View File

@ -864,30 +864,30 @@ func (s *GenericAPIServer) getAPIGroupVersion(apiGroupInfo *APIGroupInfo, groupV
for k, v := range apiGroupInfo.VersionedResourcesStorageMap[groupVersion.Version] { for k, v := range apiGroupInfo.VersionedResourcesStorageMap[groupVersion.Version] {
storage[strings.ToLower(k)] = v storage[strings.ToLower(k)] = v
} }
version, err := s.newAPIGroupVersion(apiGroupInfo.GroupMeta, groupVersion) version, err := s.newAPIGroupVersion(apiGroupInfo, groupVersion)
version.Root = apiPrefix version.Root = apiPrefix
version.Storage = storage version.Storage = storage
version.ParameterCodec = apiGroupInfo.ParameterCodec
version.Serializer = apiGroupInfo.NegotiatedSerializer
version.Creater = apiGroupInfo.Scheme
version.Convertor = apiGroupInfo.Scheme
version.Copier = apiGroupInfo.Scheme
version.Typer = apiGroupInfo.Scheme
version.SubresourceGroupVersionKind = apiGroupInfo.SubresourceGroupVersionKind
return version, err return version, err
} }
func (s *GenericAPIServer) newAPIGroupVersion(groupMeta apimachinery.GroupMeta, groupVersion unversioned.GroupVersion) (*apiserver.APIGroupVersion, error) { func (s *GenericAPIServer) newAPIGroupVersion(apiGroupInfo *APIGroupInfo, groupVersion unversioned.GroupVersion) (*apiserver.APIGroupVersion, error) {
return &apiserver.APIGroupVersion{ return &apiserver.APIGroupVersion{
RequestInfoResolver: s.NewRequestInfoResolver(), RequestInfoResolver: s.NewRequestInfoResolver(),
GroupVersion: groupVersion, GroupVersion: groupVersion,
Linker: groupMeta.SelfLinker,
Mapper: groupMeta.RESTMapper, ParameterCodec: apiGroupInfo.ParameterCodec,
Serializer: apiGroupInfo.NegotiatedSerializer,
Creater: apiGroupInfo.Scheme,
Convertor: apiGroupInfo.Scheme,
Copier: apiGroupInfo.Scheme,
Typer: apiGroupInfo.Scheme,
SubresourceGroupVersionKind: apiGroupInfo.SubresourceGroupVersionKind,
Linker: apiGroupInfo.GroupMeta.SelfLinker,
Mapper: apiGroupInfo.GroupMeta.RESTMapper,
Admit: s.AdmissionControl, Admit: s.AdmissionControl,
Context: s.RequestContextMapper, Context: s.RequestContextMapper,
MinRequestTimeout: s.MinRequestTimeout, MinRequestTimeout: s.MinRequestTimeout,
}, nil }, nil
} }