public void SetConnectionString(PersistenceExtentions<MongoDBPersistence> config)
        {
            config.SetConnectionString("mongodb://ultratinef:27017");

            config.GetSettings()
                .Get<string>(MongoPersistenceConstants.ConnectionStringKey)
                .Should()
                .Be("mongodb://ultratinef:27017");
            config.GetSettings().HasSetting(MongoPersistenceConstants.DatabaseNameKey).Should().BeFalse();
        }
Exemplo n.º 2
0
        public void SetConnectionString(PersistenceExtentions <MongoDBPersistence> config)
        {
            config.SetConnectionString("mongodb://ultratinef:27017");

            config.GetSettings()
            .Get <string>(MongoPersistenceConstants.ConnectionStringKey)
            .Should()
            .Be("mongodb://ultratinef:27017");
            config.GetSettings().HasSetting(MongoPersistenceConstants.DatabaseNameKey).Should().BeFalse();
        }
        public void SetDatabaseName(PersistenceExtentions<MongoDBPersistence> config)
        {
            config.SetDatabaseName("MyDatabase");

            config.GetSettings()
                .Get<string>(MongoPersistenceConstants.DatabaseNameKey)
                .Should()
                .Be("MyDatabase");

            config.GetSettings().HasSetting(MongoPersistenceConstants.ConnectionStringKey).Should().BeFalse();
        }
Exemplo n.º 4
0
        public void SetDatabaseName(PersistenceExtentions <MongoDBPersistence> config)
        {
            config.SetDatabaseName("MyDatabase");

            config.GetSettings()
            .Get <string>(MongoPersistenceConstants.DatabaseNameKey)
            .Should()
            .Be("MyDatabase");

            config.GetSettings().HasSetting(MongoPersistenceConstants.ConnectionStringKey).Should().BeFalse();
        }
        public void Customize(IFixture fixture)
        {
            var settings = new SettingsHolder();
            settings.SetDefault("EndpointName", "UnitTests");
            var config = new PersistenceExtentions<MongoDBPersistence>(settings);

            fixture.Register(() => settings);
            fixture.Register(() => config);

            fixture.Customize<Address>(c => c.FromFactory(new MethodInvoker(new GreedyConstructorQuery())));
            fixture.Customize<TimeoutData>(
                c => c.With(t => t.OwningTimeoutManager, config.GetSettings().EndpointName()));
        }
Exemplo n.º 6
0
        /// <summary>
        /// The set database name.
        /// </summary>
        /// <param name="config">
        /// The config.
        /// </param>
        /// <param name="databaseName">
        /// The database name.
        /// </param>
        /// <returns>
        /// The <see cref="PersistenceExtentions"/>.
        /// </returns>
        public static PersistenceExtentions <MongoDBPersistence> SetDatabaseName(
            this PersistenceExtentions <MongoDBPersistence> config,
            string databaseName)
        {
            Contract.Requires <ArgumentNullException>(config != null, "config != null");
            Contract.Requires <ArgumentNullException>(
                !string.IsNullOrWhiteSpace(databaseName),
                "!string.IsNullOrWhiteSpace(databaseName)");
            Contract.Ensures(Contract.Result <PersistenceExtentions <MongoDBPersistence> >() != null);

            config.GetSettings().Set(MongoPersistenceConstants.DatabaseNameKey, databaseName);

            return(config);
        }
Exemplo n.º 7
0
        public void Customize(IFixture fixture)
        {
            var settings = new SettingsHolder();

            settings.SetDefault("EndpointName", "UnitTests");
            var config = new PersistenceExtentions <MongoDBPersistence>(settings);

            fixture.Register(() => settings);
            fixture.Register(() => config);

            fixture.Customize <Address>(c => c.FromFactory(new MethodInvoker(new GreedyConstructorQuery())));
            fixture.Customize <TimeoutData>(
                c => c.With(t => t.OwningTimeoutManager, config.GetSettings().EndpointName()));
        }
Exemplo n.º 8
0
        /// <summary>
        /// The set connection string.
        /// </summary>
        /// <param name="config">
        /// The config.
        /// </param>
        /// <param name="connectionString">
        /// The database name.
        /// </param>
        /// <returns>
        /// The <see cref="PersistenceExtentions"/>.
        /// </returns>
        public static PersistenceExtentions <MongoDBPersistence> SetConnectionString(
            this PersistenceExtentions <MongoDBPersistence> config,
            string connectionString)
        {
            Contract.Requires <ArgumentNullException>(config != null, "config != null");
            Contract.Requires <ArgumentNullException>(
                !string.IsNullOrWhiteSpace(connectionString),
                "!string.IsNullOrWhiteSpace(connectionString)");
            Contract.Ensures(Contract.Result <PersistenceExtentions <MongoDBPersistence> >() != null);

            config.GetSettings().Set(MongoPersistenceConstants.ConnectionStringKey, connectionString);

            return(config);
        }
    public static void SetRavenDtcSettings(this PersistenceExtentions <RavenDBPersistence> persistenceConfig, string endpointName)
    {
        // Calculate a ResourceManagerId unique to this endpoint using just endpoint name
        // Not suitable for side-by-side installations
        var resourceManagerId = DeterministicGuidBuilder(endpointName);

        // Calculate a DTC transaction recovery storage path including the ResourceManagerId
        var programDataPath = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
        var txRecoveryPath  = Path.Combine(programDataPath, "NServiceBus.RavenDB", resourceManagerId.ToString());
        var store           = new DocumentStore
        {
            // RavenServerUrl
            Url                        = "http://localhost:8083",
            DefaultDatabase            = endpointName,
            ResourceManagerId          = resourceManagerId,
            TransactionRecoveryStorage = new LocalDirectoryTransactionRecoveryStorage(txRecoveryPath)
        };

        persistenceConfig.SetDefaultDocumentStore(store);
    }
Exemplo n.º 10
0
 /// <summary>
 /// Configures Subscription Storage to use the <paramref name="configuration"/>.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 /// <param name="configuration">The <see cref="Configuration"/> object.</param>
 public static PersistenceExtentions <NHibernatePersistence> UseGatewayDeduplicationConfiguration(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration, Configuration configuration)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.GatewayDeduplication.Configuration", configuration);
     return(persistenceConfiguration);
 }
Exemplo n.º 11
0
 /// <summary>
 /// Disables automatic schema update.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 public static PersistenceExtentions <NHibernatePersistence> DisableGatewayDeduplicationSchemaUpdate(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.GatewayDeduplication.AutoUpdateSchema", false);
     return(persistenceConfiguration);
 }
 /// <summary>
 /// Sets the convention to use for naming tables.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 /// <param name="tableNamingConvention">Convention to use for naming tables.</param>
 public static PersistenceExtentions <NHibernatePersistence> SagaTableNamingConvention(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration, Func <Type, string> tableNamingConvention)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.Sagas.TableNamingConvention", tableNamingConvention);
     return(persistenceConfiguration);
 }
Exemplo n.º 13
0
 /// <summary>
 /// Sets the connection string to use for all storages
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 /// <param name="connectionString">The connection string to use.</param>
 public static PersistenceExtentions <NHibernatePersistence> ConnectionString(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration, string connectionString)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.Common.ConnectionString", connectionString);
     return(persistenceConfiguration);
 }
Exemplo n.º 14
0
 /// <summary>
 /// Enables Subscription Storage to use caching.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 /// <param name="expiration">The period of time to cache subscriptions list for.</param>
 public static PersistenceExtentions <NHibernatePersistence> EnableCachingForSubscriptionStorage(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration, TimeSpan expiration)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.Subscriptions.CacheExpiration", expiration);
     return(persistenceConfiguration);
 }
Exemplo n.º 15
0
 /// <summary>
 /// Should an attempt be made to create saga storage table or not.
 /// <remarks>Operation will fail if connection string does not allow access to create storage tables</remarks>
 /// </summary>
 public static PersistenceExtentions <AzureStoragePersistence, StorageType.Sagas> CreateSchema(this PersistenceExtentions <AzureStoragePersistence, StorageType.Sagas> config, bool createSchema)
 {
     config.GetSettings().Set("AzureSagaStorage.CreateSchema", createSchema);
     return(config);
 }
Exemplo n.º 16
0
 /// <summary>
 /// Instructs the NHibernate persistence to use a custom session creation method. The provided method takes the ISessionFactory and the connection string and returns a session.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 /// <param name="callback"></param>
 /// <returns></returns>
 public static PersistenceExtentions <NHibernatePersistence> UseCustomSessionCreationMethod(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration, Func <ISessionFactory, string, ISession> callback)
 {
     if (callback == null)
     {
         throw new ArgumentNullException("callback");
     }
     persistenceConfiguration.GetSettings().Set("NHibernate.SessionCreator", callback);
     return(persistenceConfiguration);
 }
Exemplo n.º 17
0
 /// <summary>
 /// Instructs the NHibernate persistence to register the managed session available via NHibernateStorageSession in the container.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 /// <returns></returns>
 public static PersistenceExtentions <NHibernatePersistence> RegisterManagedSessionInTheContainer(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.RegisterManagedSession", true);
     return(persistenceConfiguration);
 }
Exemplo n.º 18
0
        /// <summary>
        /// Connection string to use for sagas storage.
        /// </summary>
        public static PersistenceExtentions <AzureStoragePersistence, StorageType.Sagas> ConnectionString(this PersistenceExtentions <AzureStoragePersistence, StorageType.Sagas> config, string connectionString)
        {
            AzureStorageSagaGuard.CheckConnectionString(connectionString);

            config.GetSettings().Set("AzureSagaStorage.ConnectionString", connectionString);
            return(config);
        }
Exemplo n.º 19
0
 /// <summary>
 /// Disables automatic schema update.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 public static PersistenceExtentions <NHibernatePersistence> DisableSubscriptionStorageSchemaUpdate(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.Subscriptions.AutoUpdateSchema", false);
     return(persistenceConfiguration);
 }
Exemplo n.º 20
0
 /// <summary>
 /// Configures Subscription Storage to use the <paramref name="configuration"/>.
 /// </summary>
 /// <param name="persistenceConfiguration"></param>
 /// <param name="configuration">The <see cref="Configuration"/> object.</param>
 public static PersistenceExtentions <NHibernatePersistence> UseSubscriptionStorageConfiguration(this PersistenceExtentions <NHibernatePersistence> persistenceConfiguration, Configuration configuration)
 {
     persistenceConfiguration.GetSettings().Set("NHibernate.Subscriptions.Configuration", configuration);
     return(persistenceConfiguration);
 }
 public static PersistenceExtentions <MongoDbPersistence> SetConnectionString(
     this PersistenceExtentions <MongoDbPersistence> cfg, string connectionString)
 {
     cfg.GetSettings().Set(MongoPersistenceSettings.ConnectionString, connectionString);
     return(cfg);
 }