public IFutureRegistrationConfigurator <TFuture> AddFuture <TFuture>(Type futureDefinitionType)
            where TFuture : MassTransitStateMachine <FutureState>
        {
            IFutureRegistration ValueFactory(Type type)
            {
                FutureRegistrationCache.Register(typeof(TFuture), Registrar);

                return(new FutureRegistration <TFuture>());
            }

            _futures.GetOrAdd(typeof(TFuture), ValueFactory);

            if (futureDefinitionType != null)
            {
                FutureDefinitionRegistrationCache.Register(futureDefinitionType, Registrar);
            }

            return(new FutureRegistrationConfigurator <TFuture>(this, Registrar));
        }
 public IFutureRegistrationConfigurator AddFuture(Type futureType, Type futureDefinitionType)
 {
     return(FutureRegistrationCache.AddFuture(this, futureType, futureDefinitionType));
 }
 public void AddFuture(Type futureType, Type futureDefinitionType)
 {
     FutureRegistrationCache.AddFuture(this, futureType, futureDefinitionType);
 }