Skip to content

Commit

Permalink
Made profiles check for existing component registrations before doing…
Browse files Browse the repository at this point in the history
… their own. Allows users to override with IWantCustomInitialization.
  • Loading branch information
udidahan committed Sep 8, 2011
1 parent 960d22f commit 702c38c
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 15 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
using System;
using NServiceBus.Config;
using NServiceBus.Faults;
using NServiceBus.Hosting.Profiles;
using NServiceBus.ObjectBuilder;
using NServiceBus.Unicast.Subscriptions;
using NServiceBus.Unicast.Subscriptions.Msmq;
using log4net;

Expand All @@ -15,7 +17,8 @@ void IHandleProfile.ProfileActivated()
//Configure.Instance
// .NHibernateSagaPersisterWithSQLiteAndAutomaticSchemaGeneration();

Configure.Instance.MessageForwardingInCaseOfFault();
if (!Configure.Instance.Configurer.HasComponent<IManageMessageFailures>())
Configure.Instance.MessageForwardingInCaseOfFault();

AppDomain.CurrentDomain.UnhandledException += (o, e) =>
{
Expand All @@ -27,12 +30,15 @@ void IHandleProfile.ProfileActivated()

if (Config is AsA_Publisher)
{
if (Configure.GetConfigSection<MsmqSubscriptionStorageConfig>() == null)
Configure.Instance.Configurer.ConfigureComponent<MsmqSubscriptionStorage>(
DependencyLifecycle.SingleInstance)
.ConfigureProperty(s => s.Queue, Program.EndpointId + "_subscriptions");
else
Configure.Instance.MsmqSubscriptionStorage();
if (!Configure.Instance.Configurer.HasComponent<ISubscriptionStorage>())
{
if (Configure.GetConfigSection<MsmqSubscriptionStorageConfig>() == null)
Configure.Instance.Configurer.ConfigureComponent<MsmqSubscriptionStorage>(
DependencyLifecycle.SingleInstance)
.ConfigureProperty(s => s.Queue, Program.EndpointId + "_subscriptions");
else
Configure.Instance.MsmqSubscriptionStorage();
}
}
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,25 @@
using System;
using NServiceBus.Config;
using NServiceBus.Hosting.Profiles;

using NServiceBus.Faults;
using NServiceBus.Hosting.Profiles;
using NServiceBus.Saga;
using NServiceBus.Unicast.Subscriptions;

namespace NServiceBus.Hosting.Windows.Profiles.Handlers
{
internal class LiteProfileHandler : IHandleProfile<Lite>, IWantTheEndpointConfig, IWantToRunWhenConfigurationIsComplete
{
void IHandleProfile.ProfileActivated()
{
Configure.Instance.InMemorySagaPersister();

Configure.Instance.InMemoryFaultManagement();
if (!Configure.Instance.Configurer.HasComponent<ISagaPersister>())
Configure.Instance.InMemorySagaPersister();

if (!Configure.Instance.Configurer.HasComponent<IManageMessageFailures>())
Configure.Instance.InMemoryFaultManagement();

if (Config is AsA_Publisher)
Configure.Instance.InMemorySubscriptionStorage();
if (!Configure.Instance.Configurer.HasComponent<ISubscriptionStorage>())
Configure.Instance.InMemorySubscriptionStorage();
}

public void Run()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using NServiceBus.Hosting.Profiles;
using NServiceBus.Faults;
using NServiceBus.Hosting.Profiles;

namespace NServiceBus.Hosting.Windows.Profiles.Handlers
{
Expand All @@ -10,7 +11,8 @@ void IHandleProfile.ProfileActivated()
//Configure.Instance
// .RavenSagaPersister();

Configure.Instance.MessageForwardingInCaseOfFault();
if (!Configure.Instance.Configurer.HasComponent<IManageMessageFailures>())
Configure.Instance.MessageForwardingInCaseOfFault();

//todo
//if (Config is AsA_Publisher)
Expand Down

0 comments on commit 702c38c

Please sign in to comment.