internal RebusLoggingConfigurer(Injectionist injectionist)
 {
     if (injectionist == null)
     {
         throw new ArgumentNullException(nameof(injectionist));
     }
     _injectionist = injectionist;
 }
    public void HasDefaultRegistrations()
    {
        var container = new Injectionist();
        var _         = new ConfigDriveBuilder(container);

        Assert.IsType <YamlSerializer>(container.Get <IYamlSerializer>().Instance);
        Assert.IsType <UserDataSerializer>(container.Get <IUserDataSerializer>().Instance);
    }
Exemple #3
0
        public void NoCloudDataSourceRegistered()
        {
            var container = new Injectionist();
            var builder   = new ConfigDriveBuilder(container);

            builder.NoCloud(new NoCloudConfigDriveMetaData());

            Assert.IsType <NoCloudDataSource>(container.Get <IConfigDriveDataSource>().Instance);
        }
Exemple #4
0
        public ConfigDriveBuilder(Injectionist container)
        {
            _container = container;
            _container.Register <IConfigDrive>(ctx => new ConfigDrive(
                                                   ctx.Get <IConfigDriveDataSource>()));

            _container.Register <IYamlSerializer>(ctx => new YamlSerializer());
            _container.Register <IUserDataSerializer>(ctx => new UserDataSerializer());
        }
        public static GeneratorBuilder Init()
        {
            var container = new Injectionist();

            container.Register <IConfigDriveGenerator>(
                c => new ConfigDriveGenerator(
                    c.Get <ICommandHandler <ProcessResultCommand> >(),
                    c.Get <ICommandHandler <GenerateResultCommand> >()));

            return(new GeneratorBuilder(container));
        }
    public void WithCustomRegistration()
    {
        var container = new Injectionist();
        var builder   = new ConfigDriveBuilder(container);

        var customType = new CustomType();

        builder.With(ctx => customType);

        Assert.Equal(customType, container.Get <CustomType>().Instance);
    }
Exemple #7
0
 internal StandardConfigurer(Injectionist injectionist, Options options)
 {
     if (injectionist == null)
     {
         throw new ArgumentNullException(nameof(injectionist));
     }
     if (options == null)
     {
         throw new ArgumentNullException(nameof(options));
     }
     _injectionist = injectionist;
     _options      = options;
 }
Exemple #8
0
        public void InjectedWhateverWithWhateverInsideIsProperlyDisposed()
        {
            var injectionist = new Injectionist();
            var eventTracker = new EventTracker();

            injectionist.Register(c =>
            {
                var fakeBus = new FakeBus(c.Get <Disposable1>(), c.Get <EventTracker>());

                fakeBus.FakeBusDisposed += () =>
                {
                    foreach (var disposable in c.GetTrackedInstancesOf <IDisposable>().Reverse())
                    {
                        disposable.Dispose();
                    }
                };

                foreach (var disposable in c.GetTrackedInstancesOf <IInitializable>())
                {
                    disposable.Initialize();
                }

                return(fakeBus);
            });
            injectionist.Register(c => new Disposable1(c.Get <Disposable2>(), c.Get <EventTracker>()));
            injectionist.Register(c => new Disposable2(c.Get <EventTracker>()));
            injectionist.Register(c => eventTracker);

            using (var bus = injectionist.Get <FakeBus>())
            {
                Console.WriteLine("Using the bus....");

                Console.WriteLine("Disposing it");
            }

            Console.WriteLine(@"Here's what happened:
{0}", string.Join(Environment.NewLine, eventTracker.Events.Select(e => "- " + e)));

            Assert.That(eventTracker.Events, Is.EqualTo(new[]
            {
                "EventTracker initialized",
                "Disposable2 initialized",
                "Disposable1 initialized",
                "Disposable1 disposed",
                "Disposable2 disposed",
                "EventTracker disposed",
                "FakeBus disposed",
            }));
        }
        public void InjectedWhateverWithWhateverInsideIsProperlyDisposed()
        {
            var injectionist = new Injectionist();
            var eventTracker = new EventTracker();

            injectionist.Register(c =>
            {
                var fakeBus = new FakeBus(c.Get<Disposable1>(), c.Get<EventTracker>());

                fakeBus.FakeBusDisposed += () =>
                {
                    foreach (var disposable in c.GetTrackedInstancesOf<IDisposable>().Reverse())
                    {
                        disposable.Dispose();
                    }
                };

                foreach (var disposable in c.GetTrackedInstancesOf<IInitializable>())
                {
                    disposable.Initialize();
                }

                return fakeBus;
            });
            injectionist.Register(c => new Disposable1(c.Get<Disposable2>(), c.Get<EventTracker>()));
            injectionist.Register(c => new Disposable2(c.Get<EventTracker>()));
            injectionist.Register(c => eventTracker);

            using (var bus = injectionist.Get<FakeBus>())
            {
                Console.WriteLine("Using the bus....");

                Console.WriteLine("Disposing it");
            }

            Console.WriteLine(@"Here's what happened:
{0}", string.Join(Environment.NewLine, eventTracker.Events.Select(e => "- " + e)));

            Assert.That(eventTracker.Events, Is.EqualTo(new[]
            {
                "EventTracker initialized",
                "Disposable2 initialized",
                "Disposable1 initialized",
                "Disposable1 disposed",
                "Disposable2 disposed",
                "EventTracker disposed",
                "FakeBus disposed",
            }));
        }
 protected GenerateableBuilder(Injectionist container) : base(container)
 {
 }
 protected override void SetUp()
 {
     _injectionist = new Injectionist();
 }
Exemple #12
0
 internal StandardConfigurer(Injectionist injectionist)
 {
     _injectionist = injectionist;
 }
Exemple #13
0
 public static void RegisterCommonServices(Injectionist injectionist)
 {
     injectionist.PossiblyRegisterDefault <ILoggerFactory>(c => new ConsoleLoggerFactory(minimumLogLevel: LogLevel.Debug));
     injectionist.PossiblyRegisterDefault <IMessageSerializer>(c => new Utf8StringEncoder());
 }
Exemple #14
0
 public Registrar(Injectionist injectionist)
 {
     _injectionist = injectionist;
 }
 internal StandardConfigurer(Injectionist injectionist, Options options)
 {
     _injectionist = injectionist;
     _options      = options;
 }
Exemple #16
0
 internal RebusLoggingConfigurer(Injectionist injectionist)
 {
     _injectionist = injectionist;
 }
Exemple #17
0
 internal static StandardConfigurer <TService> New(Injectionist injectionist) => new StandardConfigurer <TService>(injectionist);
Exemple #18
0
 StandardConfigurer(Injectionist injectionist) : base(injectionist)
 {
 }
Exemple #19
0
 protected StandardConfigurer(Injectionist injectionist) => _injectionist = injectionist ?? throw new ArgumentNullException(nameof(injectionist));
Exemple #20
0
 internal OptionsConfigurer(Options options, Injectionist injectionist)
 {
     _options      = options;
     _injectionist = injectionist;
 }
 internal RebusLoggingConfigurer(Injectionist injectionist)
 {
     if (injectionist == null) throw new ArgumentNullException(nameof(injectionist));
     _injectionist = injectionist;
 }
 protected override void SetUp()
 {
     _injectionist = new Injectionist();
 }
 protected BaseBuilder(Injectionist container)
 {
     _container = container;
 }