// Method used by reflection call private static IList <object> Create(CopsNamespace copsNamespace) { return(new List <object> { new K8sNamespace(copsNamespace.Metadata.Name), K8sRoleBinding.NamespaceFullAccess(copsNamespace.Metadata.Name, copsNamespace.Spec.NamespaceAdminUsers, copsNamespace.Spec.NamespaceAdminServiceAccounts ?? new List <CopsAdminServiceAccountSpec>().ToArray()), K8sClusterRoleBinding.CopsNamespaceEditBinding(copsNamespace.Metadata.Name, copsNamespace.Spec.NamespaceAdminUsers, copsNamespace.Spec.NamespaceAdminServiceAccounts ?? new List <CopsAdminServiceAccountSpec>().ToArray()), K8sClusterRole.CopsNamespaceEdit(copsNamespace.Metadata.Name), K8SLimitRange.Default(copsNamespace.Metadata.Name) }); }
public static CopsResource Create(JObject value) { var kind = value["parent"]["kind"]; switch (kind.ToString().ToLower()) { case "copsnamespace": return(CopsNamespace.FromJson(value["parent"].ToString())); default: throw new ArgumentException($"Unknown CopsResource of kind {kind}"); } }