示例#1
0
        public CorsTile(
            DrawingElement drawing,
            CorsNode corsNode,
            DashboardConfiguration.NodeConfiguration nodeConfiguration)
            : base(
                drawing,
                nodeConfiguration?.Title ?? "CORS/CORB",
                "cors",
                corsNode.Offline,
                2,
                corsNode.Name)
        {
            _drawing  = drawing;
            _corsNode = corsNode;

            LinkUrl = "/ui/node?name=" + corsNode.Name;

            var details = new List <string>();

            details.Add("For " + (corsNode.WebsiteOrigin ?? string.Empty));
            details.Add("Allow " + (corsNode.AllowedOrigins ?? string.Empty));

            if (!string.IsNullOrEmpty(corsNode.AllowedMethods))
            {
                details.Add("Allow " + corsNode.AllowedMethods);
            }

            if (!string.IsNullOrEmpty(corsNode.AllowedHeaders))
            {
                details.Add("Allow " + corsNode.AllowedHeaders);
            }

            if (corsNode.AllowCredentials)
            {
                details.Add("Allow credentials");
            }

            if (!string.IsNullOrEmpty(corsNode.ExposedHeaders))
            {
                details.Add("Expose " + corsNode.ExposedHeaders);
            }

            AddDetails(details, null, _corsNode.Offline ? "disabled" : string.Empty);
        }
示例#2
0
 private void ConfigureCorsNodes(NodeGraphConfiguration configuration, List <INode> nodes)
 {
     if (configuration.CorsNodes != null)
     {
         foreach (var corsConfiguration in configuration.CorsNodes)
         {
             var node = new CorsNode
             {
                 Name             = corsConfiguration.Name,
                 Disabled         = corsConfiguration.Disabled,
                 OutputNode       = corsConfiguration.OutputNode,
                 AllowCredentials = corsConfiguration.AllowCredentials,
                 AllowedMethods   = corsConfiguration.AllowedMethods,
                 AllowedHeaders   = corsConfiguration.AllowedHeaders,
                 AllowedOrigins   = corsConfiguration.AllowedOrigins,
                 ExposedHeaders   = corsConfiguration.ExposedHeaders,
                 WebsiteOrigin    = corsConfiguration.WebsiteOrigin
             };
             corsConfiguration.Node = node;
             nodes.Add(node);
         }
     }
 }