...
1
16
17 package framework
18
19 import (
20 "k8s.io/apimachinery/pkg/runtime"
21 "k8s.io/apimachinery/pkg/runtime/serializer/versioning"
22 )
23
24 type wrappedSerializer struct {
25 scheme *runtime.Scheme
26 info runtime.SerializerInfo
27 }
28
29 var _ runtime.StorageSerializer = &wrappedSerializer{}
30
31 func (s *wrappedSerializer) SupportedMediaTypes() []runtime.SerializerInfo {
32 return []runtime.SerializerInfo{s.info}
33 }
34
35 func (s *wrappedSerializer) UniversalDeserializer() runtime.Decoder {
36 return s.info.Serializer
37 }
38
39 func (s *wrappedSerializer) EncoderForVersion(encoder runtime.Encoder, gv runtime.GroupVersioner) runtime.Encoder {
40 return versioning.NewCodec(encoder, nil, s.scheme, s.scheme, s.scheme, s.scheme, gv, nil, s.scheme.Name())
41 }
42
43 func (s *wrappedSerializer) DecoderToVersion(decoder runtime.Decoder, gv runtime.GroupVersioner) runtime.Decoder {
44 return versioning.NewCodec(nil, decoder, s.scheme, s.scheme, s.scheme, s.scheme, nil, gv, s.scheme.Name())
45 }
46
View as plain text