Chinchilla.DepotSettings.Validate C# (CSharp) Метод

Validate() публичный Метод

public Validate ( ) : void
Результат void
        public void Validate()
        {
            if (string.IsNullOrEmpty(ConnectionString))
            {
                throw new ChinchillaException("A connection string is required");
            }

            if (ConnectionFactoryBuilder == null)
            {
                throw new ChinchillaException("A connection factory builder is required");
            }

            if (ConsumerFactoryBuilder == null)
            {
                throw new ChinchillaException("A consumer factory builder is required");
            }

            if (ConnectionString.StartsWith(RabbitMqProtocol))
            {
                ConnectionString = ConnectionString.Replace(RabbitMqProtocol, AmqpProtocol);
            }

            if (!ConnectionString.StartsWith(AmqpProtocol))
            {
                ConnectionString = string.Concat(AmqpProtocol, ConnectionString);
            }
        }
    }

Usage Example

Пример #1
0
        public static IBus Connect(DepotSettings settings)
        {
            if (settings == null)
            {
                throw new ArgumentNullException("settings");
            }

            settings.Validate();

            var connectionString = settings.ConnectionString;
            var connectionFactory = settings.ConnectionFactoryBuilder();
            var consumerFactory = settings.ConsumerFactoryBuilder();

            var modelFactory = connectionFactory.Create(new Uri(connectionString));
            var messageSerializers = settings.MessageSerializers;

            var bus = new Bus(
                modelFactory,
                consumerFactory,
                new RequesterFactory(),
                new PublisherFactory(messageSerializers),
                new SubscriptionFactory(modelFactory, messageSerializers));

            foreach (var concern in settings.StartupConcerns)
            {
                concern.Run(bus);
            }

            return bus;
        }
All Usage Examples Of Chinchilla.DepotSettings::Validate