Amss.Boilerplate.Persistence.Impl.Configuration.PersistenceContainerExtension.ConfigureExceptionHandling C# (CSharp) Method

ConfigureExceptionHandling() private method

private ConfigureExceptionHandling ( ) : void
return void
        private void ConfigureExceptionHandling()
        {
            var configurationSource = new DictionaryConfigurationSource();

            var builder = new ConfigurationSourceBuilder();
            builder.ConfigureExceptionHandling()
                   .GivenPolicyWithName(DeletePolicy)
                   .ForExceptionType<Exception>()
                        .ThenNotifyRethrow()
                   .ForExceptionType<NHibernate.Exceptions.ConstraintViolationException>()
                        .WrapWith<DeleteConstraintException>()
                        .UsingMessage("Cannot delete object.")
                        .ThenThrowNewException();
            builder.UpdateConfigurationWithReplace(configurationSource);

            var configurator = new UnityContainerConfigurator(this.Container);
            EnterpriseLibraryContainer.ConfigureContainer(configurator, configurationSource);
        }