package api import ( kapi "k8s.io/kubernetes/pkg/api" ) // policies func ToPolicyList(in *ClusterPolicyList) *PolicyList { ret := &PolicyList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToPolicy(&curr)) } return ret } func ToPolicy(in *ClusterPolicy) *Policy { if in == nil { return nil } ret := &Policy{} ret.ObjectMeta = in.ObjectMeta ret.LastModified = in.LastModified ret.Roles = ToRoleMap(in.Roles) return ret } func ToRoleMap(in map[string]*ClusterRole) map[string]*Role { ret := map[string]*Role{} for key, role := range in { ret[key] = ToRole(role) } return ret } func ToRoleList(in *ClusterRoleList) *RoleList { ret := &RoleList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToRole(&curr)) } return ret } func ToRole(in *ClusterRole) *Role { if in == nil { return nil } ret := &Role{} ret.ObjectMeta = in.ObjectMeta ret.Rules = in.Rules return ret } func ToClusterPolicyList(in *PolicyList) *ClusterPolicyList { ret := &ClusterPolicyList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToClusterPolicy(&curr)) } return ret } func ToClusterPolicy(in *Policy) *ClusterPolicy { if in == nil { return nil } ret := &ClusterPolicy{} ret.ObjectMeta = in.ObjectMeta ret.LastModified = in.LastModified ret.Roles = ToClusterRoleMap(in.Roles) return ret } func ToClusterRoleMap(in map[string]*Role) map[string]*ClusterRole { ret := map[string]*ClusterRole{} for key, role := range in { ret[key] = ToClusterRole(role) } return ret } func ToClusterRoleList(in *RoleList) *ClusterRoleList { ret := &ClusterRoleList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToClusterRole(&curr)) } return ret } func ToClusterRole(in *Role) *ClusterRole { if in == nil { return nil } ret := &ClusterRole{} ret.ObjectMeta = in.ObjectMeta ret.Rules = in.Rules return ret } // policy bindings func ToPolicyBindingList(in *ClusterPolicyBindingList) *PolicyBindingList { ret := &PolicyBindingList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToPolicyBinding(&curr)) } return ret } func ToPolicyBinding(in *ClusterPolicyBinding) *PolicyBinding { if in == nil { return nil } ret := &PolicyBinding{} ret.ObjectMeta = in.ObjectMeta ret.LastModified = in.LastModified ret.PolicyRef = ToPolicyRef(in.PolicyRef) ret.RoleBindings = ToRoleBindingMap(in.RoleBindings) return ret } func ToPolicyRef(in kapi.ObjectReference) kapi.ObjectReference { ret := kapi.ObjectReference{} ret.Name = in.Name return ret } func ToRoleBindingMap(in map[string]*ClusterRoleBinding) map[string]*RoleBinding { ret := map[string]*RoleBinding{} for key, RoleBinding := range in { ret[key] = ToRoleBinding(RoleBinding) } return ret } func ToRoleBindingList(in *ClusterRoleBindingList) *RoleBindingList { ret := &RoleBindingList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToRoleBinding(&curr)) } return ret } func ToRoleBinding(in *ClusterRoleBinding) *RoleBinding { if in == nil { return nil } ret := &RoleBinding{} ret.ObjectMeta = in.ObjectMeta ret.Subjects = in.Subjects ret.RoleRef = ToRoleRef(in.RoleRef) return ret } func ToRoleRef(in kapi.ObjectReference) kapi.ObjectReference { ret := kapi.ObjectReference{} ret.Name = in.Name return ret } func ToClusterPolicyBindingList(in *PolicyBindingList) *ClusterPolicyBindingList { ret := &ClusterPolicyBindingList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToClusterPolicyBinding(&curr)) } return ret } func ToClusterPolicyBinding(in *PolicyBinding) *ClusterPolicyBinding { if in == nil { return nil } ret := &ClusterPolicyBinding{} ret.ObjectMeta = in.ObjectMeta ret.LastModified = in.LastModified ret.PolicyRef = ToClusterPolicyRef(in.PolicyRef) ret.RoleBindings = ToClusterRoleBindingMap(in.RoleBindings) return ret } func ToClusterPolicyRef(in kapi.ObjectReference) kapi.ObjectReference { ret := kapi.ObjectReference{} ret.Name = in.Name return ret } func ToClusterRoleBindingMap(in map[string]*RoleBinding) map[string]*ClusterRoleBinding { ret := map[string]*ClusterRoleBinding{} for key, RoleBinding := range in { ret[key] = ToClusterRoleBinding(RoleBinding) } return ret } func ToClusterRoleBindingList(in *RoleBindingList) *ClusterRoleBindingList { ret := &ClusterRoleBindingList{} for _, curr := range in.Items { ret.Items = append(ret.Items, *ToClusterRoleBinding(&curr)) } return ret } func ToClusterRoleBinding(in *RoleBinding) *ClusterRoleBinding { if in == nil { return nil } ret := &ClusterRoleBinding{} ret.ObjectMeta = in.ObjectMeta ret.Subjects = in.Subjects ret.RoleRef = ToClusterRoleRef(in.RoleRef) return ret } func ToClusterRoleRef(in kapi.ObjectReference) kapi.ObjectReference { ret := kapi.ObjectReference{} ret.Name = in.Name return ret }