public virtual object Resolve(NanoContainer container) { if (Logger.IsVerboseEnabled) { Logger.Verbose(Messages.ResolvingInstance); } if (_instancePerCall) { if (Logger.IsVerboseEnabled) { Logger.Verbose(Messages.BuildingNewInstance); } return(_resolve(container)); } if (Logger.IsVerboseEnabled) { Logger.Verbose(Messages.AttemptingToResolveInstance); } if (_instance != null) { return(_instance); } if (Logger.IsVerboseEnabled) { Logger.Verbose(Messages.BuildingAndStoringNewInstance); } return(_instance = _resolve(container)); }
public static Wireup Init() { var container = new NanoContainer(); container.Register <IPersistStreams>(new InMemoryPersistenceEngine()); container.Register(BuildEventStore); return(new Wireup(container)); }
public static Wireup Init() { var container = new NanoContainer(); container.Register(TransactionScopeOption.Suppress); container.Register <IPersistStreams>(new InMemoryPersistenceEngine()); container.Register <ISerialize>(new JsonSerializer()); container.Register(BuildEventStore); return(new Wireup(container)); }
public static Wireup Init() { var container = new NanoContainer(); #if !NETSTANDARD1_6 container.Register(TransactionScopeOption.Suppress); #endif container.Register <IPersistStreams>(new InMemoryPersistenceEngine()); container.Register(BuildEventStore); return(new Wireup(container)); }
private IDocumentSerializer ResolveSerializer(NanoContainer container) { var registered = container.Resolve <ISerialize>(); if (registered == null) { return(_serializer); } Logger.Debug("Wrapping registered serializer of type '{0}' inside of a ByteStreamDocumentSerializer", registered.GetType()); return(new ByteStreamDocumentSerializer(registered)); }
private static IStoreEvents BuildEventStore(NanoContainer context) { var concurrency = context.Resolve <OptimisticPipelineHook>(); var upconverter = context.Resolve <EventUpconverterPipelineHook>(); ICollection <IPipelineHook> hooks = context.Resolve <ICollection <IPipelineHook> >() ?? new IPipelineHook[0]; hooks = new IPipelineHook[] { concurrency, upconverter } .Concat(hooks) .Where(x => x != null) .ToArray(); return(new OptimisticEventStore(context.Resolve <IPersistStreams>(), hooks)); }
private static IStoreEvents BuildEventStore(NanoContainer context) { var scopeOption = context.Resolve <TransactionScopeOption>(); OptimisticPipelineHook concurrency = scopeOption == TransactionScopeOption.Suppress ? new OptimisticPipelineHook() : null; var scheduler = new DispatchSchedulerPipelineHook(context.Resolve <IScheduleDispatches>()); var upconverter = context.Resolve <EventUpconverterPipelineHook>(); ICollection <IPipelineHook> hooks = context.Resolve <ICollection <IPipelineHook> >() ?? new IPipelineHook[0]; hooks = new IPipelineHook[] { concurrency, scheduler, upconverter } .Concat(hooks) .Where(x => x != null) .ToArray(); return(new OptimisticEventStore(context.Resolve <IPersistStreams>(), hooks)); }
private static IStoreEvents BuildEventStore(NanoContainer context) { #if !NETSTANDARD1_6 var scopeOption = context.Resolve <TransactionScopeOption>(); OptimisticPipelineHook concurrency = scopeOption == TransactionScopeOption.Suppress ? new OptimisticPipelineHook() : null; #else OptimisticPipelineHook concurrency = new OptimisticPipelineHook(); #endif var upconverter = context.Resolve <EventUpconverterPipelineHook>(); ICollection <IPipelineHook> hooks = context.Resolve <ICollection <IPipelineHook> >() ?? new IPipelineHook[0]; hooks = new IPipelineHook[] { concurrency, upconverter } .Concat(hooks) .Where(x => x != null) .ToArray(); return(new OptimisticEventStore(context.Resolve <IPersistStreams>(), hooks)); }
public virtual object Resolve(NanoContainer container) { Logger.LogTrace(Messages.ResolvingInstance); if (_instancePerCall) { Logger.LogTrace(Messages.BuildingNewInstance); return(_resolve(container)); } Logger.LogTrace(Messages.AttemptingToResolveInstance); if (_instance != null) { return(_instance); } Logger.LogTrace(Messages.BuildingAndStoringNewInstance); return(_instance = _resolve(container)); }
protected Wireup(NanoContainer container) { _container = container; }