LCOV - code coverage report
Current view: top level - Ninject/Azure/Cqrs.Ninject.Azure.EventHub.CommandBus/Configuration - AzureCommandBusSenderModule.cs Hit Total Coverage
Test: doc-coverage.info Lines: 4 4 100.0 %
Date: 2017-07-26

          Line data    Source code
       1             : using System.Linq;
       2             : using Cqrs.Azure.ServiceBus;
       3             : using Cqrs.Commands;
       4             : using Ninject.Modules;
       5             : 
       6             : namespace Cqrs.Azure.EventHub.CommandBus.Configuration
       7             : {
       8             :         /// <summary>
       9             :         /// The <see cref="INinjectModule"/> for use with the Cqrs package.
      10             :         /// </summary>
      11             :         public class AzureCommandBusSenderModule<TAuthenticationToken> : NinjectModule
      12           1 :         {
      13             :                 #region Overrides of NinjectModule
      14             : 
      15             :                 /// <summary>
      16             :                 /// Loads the module into the kernel.
      17             :                 /// </summary>
      18           1 :                 public override void Load()
      19             :                 {
      20             :                         bool isMessageSerialiserBound = Kernel.GetBindings(typeof(IAzureBusHelper<TAuthenticationToken>)).Any();
      21             :                         if (!isMessageSerialiserBound)
      22             :                         {
      23             :                                 Bind<IAzureBusHelper<TAuthenticationToken>>()
      24             :                                         .To<AzureBusHelper<TAuthenticationToken>>()
      25             :                                         .InSingletonScope();
      26             :                         }
      27             : 
      28             :                         RegisterCommandSender();
      29             :                         RegisterCommandMessageSerialiser();
      30             :                 }
      31             : 
      32             :                 #endregion
      33             : 
      34             :                 /// <summary>
      35             :                 /// Register the Cqrs command sender
      36             :                 /// </summary>
      37           1 :                 public virtual void RegisterCommandSender()
      38             :                 {
      39             :                         Bind<ICommandSender<TAuthenticationToken>>()
      40             :                                 .To<AzureCommandBusPublisher<TAuthenticationToken>>()
      41             :                                 .InSingletonScope();
      42             : 
      43             :                         Bind<ICommandPublisher<TAuthenticationToken>>()
      44             :                                 .To<AzureCommandBusPublisher<TAuthenticationToken>>()
      45             :                                 .InSingletonScope();
      46             : 
      47             :                         Bind<ISendAndWaitCommandSender<TAuthenticationToken>>()
      48             :                                 .To<AzureCommandBusPublisher<TAuthenticationToken>>()
      49             :                                 .InSingletonScope();
      50             :                 }
      51             : 
      52             :                 /// <summary>
      53             :                 /// Register the Cqrs command handler message serialiser
      54             :                 /// </summary>
      55           1 :                 public virtual void RegisterCommandMessageSerialiser()
      56             :                 {
      57             :                         bool isMessageSerialiserBound = Kernel.GetBindings(typeof(IMessageSerialiser<TAuthenticationToken>)).Any();
      58             :                         if (!isMessageSerialiserBound)
      59             :                         {
      60             :                                 Bind<IMessageSerialiser<TAuthenticationToken>>()
      61             :                                         .To<MessageSerialiser<TAuthenticationToken>>()
      62             :                                         .InSingletonScope();
      63             :                         }
      64             :                 }
      65             :         }
      66             : }

Generated by: LCOV version 1.10