Example #1
0
 public InvalidDataTypeException(
     ImmutableHashSet <string> invalidProperties) : base(
         $"Properties of an instance of " +
         "ImmutableClass may only " +
         "contain the following types: Boolean, Byte, " +
         "SByte, Char, Decimal, Double, Single, " +
         "Int32, UInt32, Int64, " +
         "UInt64, Int16, UInt16, String, ImmutableArray, " +
         "ImmutableDictionary, ImmutableList, ImmutableQueue, " +
         "ImmutableSortedSet, ImmutableStack or ImmutableClass. " +
         $"Invalid property types: " +
         $"   {string.Join(",", invalidProperties.ToArray())}")
 {
     Data.Add("InvalidPropertyTypes",
              invalidProperties.ToArray());
 }
Example #2
0
        public static string GetDefaultFixAllTitle(
            FixAllScope fixAllScope,
            ImmutableHashSet <string> diagnosticIds,
            Document triggerDocument,
            Project triggerProject)
        {
            string diagnosticId;

            if (diagnosticIds.Count == 1)
            {
                diagnosticId = diagnosticIds.Single();
            }
            else
            {
                diagnosticId = string.Join(",", diagnosticIds.ToArray());
            }

            switch (fixAllScope)
            {
            case FixAllScope.Custom:
                return(string.Format(Resources.Fix_all_0, diagnosticId));

            case FixAllScope.Document:
                return(string.Format(Resources.Fix_all_0_in_1, diagnosticId, triggerDocument.Name));

            case FixAllScope.Project:
                return(string.Format(Resources.Fix_all_0_in_1, diagnosticId, triggerProject.Name));

            case FixAllScope.Solution:
                return(string.Format(Resources.Fix_all_0_in_Solution, diagnosticId));

            default:
                throw ExceptionUtilities.UnexpectedValue(fixAllScope);
            }
        }
 // Используется в code fix'е
 internal SourceText ToText()
 {
     using (var writer = new StringWriter())
     {
         _serializer.Serialize(writer, new Suppressions()
         {
             Items = _suppressions.ToArray()
         });
         return(SourceText.From(writer.ToString()));
     }
 }
Example #4
0
        public async Task Handle(DeploymentLogNotification notification, CancellationToken cancellationToken)
        {
            ImmutableHashSet <string> tryGetTargetSubscribers =
                DeploymentLogSubscriptionHandler.TryGetTargetSubscribers(notification.DeploymentTargetId);

            if (tryGetTargetSubscribers.Count == 0)
            {
                return;
            }

            string[]     clients     = tryGetTargetSubscribers.ToArray();
            IClientProxy clientProxy = _hubContext.Clients.Clients(clients);

            await clientProxy.SendAsync(DeploymentLoggingHub.MessageMethod, notification.Message, cancellationToken);
        }
Example #5
0
        public void ClusterClient_must_reestablish_connection_to_receptionist_after_server_restart()
        {
            Within(30.Seconds(), () =>
            {
                RunOn(() =>
                {
                    _remainingServerRoleNames.Count.Should().Be(1);
                    var remainingContacts = _remainingServerRoleNames.Select(r => Node(r) / "system" / "receptionist").ToImmutableHashSet();
                    var c = Sys.ActorOf(ClusterClient.Props(ClusterClientSettings.Create(Sys).WithInitialContacts(remainingContacts)), "client4");

                    c.Tell(new ClusterClient.Send("/user/service2", "bonjour4", localAffinity: true));
                    var reply = ExpectMsg <ClusterClientSpecConfig.Reply>(10.Seconds());
                    reply.Msg.Should().Be("bonjour4-ack");
                    reply.Node.Should().Be(remainingContacts.First().Address);

                    // TODO: bug, cannot compare with a logsource
                    var logSource = $"{Sys.AsInstanceOf<ExtendedActorSystem>().Provider.DefaultAddress}/user/client4";

                    EventFilter.Info(start: "Connected to").ExpectOne(() =>
                    {
                        EventFilter.Info(start: "Lost contact").ExpectOne(() =>
                        {
                            // shutdown server
                            TestConductor.Shutdown(_remainingServerRoleNames.First()).Wait();
                        });
                    });

                    c.Tell(new ClusterClient.Send("/user/service2", "shutdown", localAffinity: true));
                    Thread.Sleep(2000); // to ensure that it is sent out before shutting down system
                }, _config.Client);

                RunOn(() =>
                {
                    Sys.WhenTerminated.Wait(20.Seconds());
                    // start new system on same port
                    var port = Cluster.Get(Sys).SelfAddress.Port;
                    var sys2 = ActorSystem.Create(
                        Sys.Name,
                        ConfigurationFactory.ParseString($"akka.remote.dot-netty.tcp.port={port}").WithFallback(Sys.Settings.Config));
                    Cluster.Get(sys2).Join(Cluster.Get(sys2).SelfAddress);
                    var service2 = sys2.ActorOf(Props.Create(() => new ClusterClientSpecConfig.TestService(TestActor)), "service2");
                    ClusterClientReceptionist.Get(sys2).RegisterService(service2);
                    sys2.WhenTerminated.Wait(20.Seconds());
                }, _remainingServerRoleNames.ToArray());
            });
        }
Example #6
0
 private Output <ImmutableDictionary <string, KubernetesResource> > ParseTemplate(string text,
                                                                                  List <TransformationAction> transformations, string?resourcePrefix, ImmutableHashSet <Resource> dependsOn,
                                                                                  string?defaultNamespace)
 {
     return(Invokes
            .YamlDecode(new YamlDecodeArgs {
         Text = text, DefaultNamespace = defaultNamespace
     })
            .Apply(objs =>
     {
         var args = new ConfigGroupArgs
         {
             ResourcePrefix = resourcePrefix,
             Objs = objs,
             Transformations = transformations
         };
         var opts = new ComponentResourceOptions {
             Parent = this, DependsOn = dependsOn.ToArray()
         };
         return Parser.Parse(args, opts);
     }));
 }
Example #7
0
 public void CopyTo(T[] array, int arrayIndex)
 {
     _set.ToArray().CopyTo(array, arrayIndex);
 }
Example #8
0
 public NodeUp(Address address, ImmutableHashSet <string> roles)
 {
     NodeAddress = address;
     NodeRoles   = roles.ToArray();
 }
Example #9
0
        private Output <ImmutableDictionary <string, KubernetesResource> > ParseTemplate(Union <ChartArgsUnwrap, LocalChartArgsUnwrap> args, string releaseName, ImmutableHashSet <Resource> dependsOn)
        {
            // Build JSON args to Helm provider invoke.
            var serializeOptions = new JsonSerializerOptions
            {
                IgnoreNullValues = true,
            };

            BaseChartArgsUnwrap cfgBase;

            // Convert args to JSON string format expected by the invoke function.
            JsonOpts jsonOpts;
            string   jsonOptsString;

            if (args.IsT0)
            {
                var cfg = args.AsT0;
                cfgBase  = cfg;
                jsonOpts = new JsonOpts
                {
                    ApiVersions = cfgBase.ApiVersions,
                    IncludeTestHookResources = cfgBase.IncludeTestHookResources,
                    Namespace   = cfgBase.Namespace,
                    Values      = cfgBase.Values,
                    ReleaseName = releaseName,
                    Repo        = cfg.Repo,
                    Chart       = cfg.Chart,
                    Version     = cfg.Version,
                };
                if (cfg.FetchOptions != null)
                {
                    jsonOpts.FetchOptions = new JsonOptsFetch
                    {
                        Version     = cfg.FetchOptions.Version,
                        CAFile      = cfg.FetchOptions.CAFile,
                        CertFile    = cfg.FetchOptions.CertFile,
                        KeyFile     = cfg.FetchOptions.KeyFile,
                        Destination = cfg.FetchOptions.Destination,
                        Keyring     = cfg.FetchOptions.Keyring,
                        Password    = cfg.FetchOptions.Password,
                        Repo        = cfg.FetchOptions.Repo,
                        UntarDir    = cfg.FetchOptions.UntarDir,
                        Username    = cfg.FetchOptions.Username,
                        Home        = cfg.FetchOptions.Home,
                        Devel       = cfg.FetchOptions.Devel,
                        Prov        = cfg.FetchOptions.Prov,
                        Untar       = cfg.FetchOptions.Untar,
                        Verify      = cfg.FetchOptions.Verify,
                    };
                }
            }
            else
            {
                var cfg = args.AsT1;
                cfgBase  = cfg;
                jsonOpts = new JsonOpts
                {
                    ApiVersions = cfgBase.ApiVersions,
                    IncludeTestHookResources = cfgBase.IncludeTestHookResources,
                    Namespace   = cfgBase.Namespace,
                    Values      = cfgBase.Values,
                    ReleaseName = releaseName,
                    Path        = cfg.Path,
                };
            }
            jsonOptsString = JsonSerializer.Serialize(jsonOpts, serializeOptions);

            return(Invokes
                   .HelmTemplate(new HelmTemplateArgs {
                JsonOpts = jsonOptsString
            })
                   .Apply(objs =>
            {
                var args = new ConfigGroupArgs
                {
                    ResourcePrefix = cfgBase.ResourcePrefix,
                    Objs = objs,
                    Transformations = cfgBase.Transformations
                };
                var opts = new ComponentResourceOptions {
                    Parent = this, DependsOn = dependsOn.ToArray()
                };
                return Parser.Parse(args, opts);
            }));
        }
Example #10
0
 public static ImmutableHashSet <T> Compact <T>(this ImmutableHashSet <T> set)
 {
     return(ImmutableHashSet.Create <T>(set.ToArray()));
 }