/// <summary>Registers the type mappings with the Unity container.</summary> /// <param name="container">The unity container to configure.</param> /// <remarks>There is no need to register concrete types such as controllers or API controllers (unless you want to /// change the defaults), as Unity allows resolving a concrete type even if it was not previously registered.</remarks> public static void RegisterTypes(IUnityContainer container) { // NOTE: To load from web.config uncomment the line below. Make sure to add a Microsoft.Practices.Unity.Configuration to the using statements. // container.LoadConfiguration(); //Standard configuration try { StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <PerResolveLifetimeManager>(container); // config container.RegisterInstance <IReflectorConfiguration>(NakedObjectsRunSettings.ReflectorConfig(), (new ContainerControlledLifetimeManager())); container.RegisterInstance <IEntityObjectStoreConfiguration>(NakedObjectsRunSettings.EntityObjectStoreConfig(), new ContainerControlledLifetimeManager()); // frameworkFacade container.RegisterType <IOidTranslator, OidTranslatorSlashSeparatedTypeAndIds>(new PerResolveLifetimeManager()); container.RegisterType <IOidStrategy, EntityOidStrategy>(new PerResolveLifetimeManager()); container.RegisterType <IStringHasher, SimpleStringHasher>(new PerResolveLifetimeManager()); container.RegisterType <IFrameworkFacade, FrameworkFacade>(new PerResolveLifetimeManager()); //Externals container.RegisterType <IPrincipal>(new InjectionFactory(c => HttpContext.Current.User)); } catch (Exception e) { Logger.Error($"Error on Unity RegisterTypes : {e.Message}"); throw; } }
protected virtual void RegisterTypes(IUnityContainer container) { //Standard configuration StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <PerResolveLifetimeManager>(container); container.RegisterType <IPrincipal>(new InjectionFactory(c => TestPrincipal)); var config = new EntityObjectStoreConfiguration(); //config.UsingEdmxContext("Model").AssociateTypes(AdventureWorksTypes); //config.SpecifyTypesNotAssociatedWithAnyContext(() => new[] { typeof(AWDomainObject) }); container.RegisterInstance <IEntityObjectStoreConfiguration>(config, (new ContainerControlledLifetimeManager())); // TODO still done for backward compatibility - var reflectorConfig = new ReflectorConfiguration( Types ?? new Type[] {}, MenuServices.Select(s => s.GetType()).ToArray(), ContributedActions.Select(s => s.GetType()).ToArray(), SystemServices.Select(s => s.GetType()).ToArray(), Namespaces ?? new string[] { }); container.RegisterInstance <IReflectorConfiguration>(reflectorConfig, (new ContainerControlledLifetimeManager())); container.RegisterType <ISession>(new PerResolveLifetimeManager(), new InjectionFactory(c => TestSession)); }
/// <summary>Registers the type mappings with the Unity container.</summary> /// <param name="container">The unity container to configure.</param> /// <remarks>There is no need to register concrete types such as controllers or API controllers (unless you want to /// change the defaults), as Unity allows resolving a concrete type even if it was not previously registered.</remarks> public static void RegisterTypes(IUnityContainer container) { //Standard configuration StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <PerResolveLifetimeManager>(container); // config container.RegisterInstance <IReflectorConfiguration>(NakedObjectsRunSettings.ReflectorConfig(), (new ContainerControlledLifetimeManager())); container.RegisterInstance <IEntityObjectStoreConfiguration>(NakedObjectsRunSettings.EntityObjectStoreConfig(), new ContainerControlledLifetimeManager()); // surface container.RegisterType <IOidStrategy, ExternalOid>(new PerRequestLifetimeManager()); container.RegisterType <INakedObjectsSurface, NakedObjectsSurface>(new PerRequestLifetimeManager()); //Externals container.RegisterType <IPrincipal>(new InjectionFactory(c => HttpContext.Current.User)); // Facet decorators if (NakedObjectsRunSettings.AuditConfig() != null) { container.RegisterType(typeof(IFacetDecorator), typeof(AuditManager), "AuditManager", new ContainerControlledLifetimeManager()); container.RegisterInstance(typeof(IAuditConfiguration), NakedObjectsRunSettings.AuditConfig(), new ContainerControlledLifetimeManager()); } if (NakedObjectsRunSettings.AuthorizationConfig() != null) { container.RegisterType(typeof(IFacetDecorator), typeof(AuthorizationManager), "AuthorizationManager", new ContainerControlledLifetimeManager()); container.RegisterInstance(typeof(IAuthorizationConfiguration), NakedObjectsRunSettings.AuthorizationConfig(), new ContainerControlledLifetimeManager()); } }
/// <summary>Registers the type mappings with the Unity container.</summary> /// <param name="container">The unity container to configure.</param> /// <remarks>There is no need to register concrete types such as controllers or API controllers (unless you want to /// change the defaults), as Unity allows resolving a concrete type even if it was not previously registered.</remarks> public static void RegisterTypes(IUnityContainer container) { // NOTE: To load from web.config uncomment the line below. Make sure to add a Microsoft.Practices.Unity.Configuration to the using statements. // container.LoadConfiguration(); //Standard configuration StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <HierarchicalLifetimeManager>(container); // add custom notnavigable factory UnityConfigHelpers.RegisterFacetFactory(typeof(AWNotNavigableFacetFactory), container, 1000); UnityConfigHelpers.RegisterFacetFactory(typeof(AWNotCountedAnnotationFacetFactory), container, 1001); // config container.RegisterInstance <IReflectorConfiguration>(NakedObjectsRunSettings.ReflectorConfig(), (new ContainerControlledLifetimeManager())); container.RegisterInstance <IEntityObjectStoreConfiguration>(NakedObjectsRunSettings.EntityObjectStoreConfig(), new ContainerControlledLifetimeManager()); // surface container.RegisterType <IOidTranslator, OidTranslatorSlashSeparatedTypeAndIds>(new HierarchicalLifetimeManager()); container.RegisterType <IOidStrategy, EntityOidStrategy>(new HierarchicalLifetimeManager()); container.RegisterType <IStringHasher, SimpleStringHasher>(new HierarchicalLifetimeManager()); container.RegisterType <IFrameworkFacade, FrameworkFacade>(new HierarchicalLifetimeManager()); //Externals container.RegisterType <IPrincipal>(new InjectionFactory(c => HttpContext.Current.User)); }
/// <summary>Registers the type mappings with the Unity container.</summary> /// <param name="container">The unity container to configure.</param> /// <remarks>There is no need to register concrete types such as controllers or API controllers (unless you want to /// change the defaults), as Unity allows resolving a concrete type even if it was not previously registered.</remarks> public static void RegisterTypes(IUnityContainer container) { //Standard configuration StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <PerRequestLifetimeManager>(container); // config container.RegisterInstance <IReflectorConfiguration>(NakedObjectsRunSettings.ReflectorConfig(), (new ContainerControlledLifetimeManager())); container.RegisterInstance <IEntityObjectStoreConfiguration>(NakedObjectsRunSettings.EntityObjectStoreConfig(), new ContainerControlledLifetimeManager()); // surface container.RegisterType <IOidTranslator, OidTranslatorSlashSeparatedTypeAndIds>("KeyOid", new PerRequestLifetimeManager()); container.RegisterType <IOidTranslator, OidTranslatorSemiColonSeparatedList>(new PerRequestLifetimeManager()); container.RegisterType <IOidStrategy, EntityOidStrategy>(new PerRequestLifetimeManager()); container.RegisterType <IIdHelper, IdHelper>(new PerRequestLifetimeManager()); container.RegisterType <IFrameworkFacade, FrameworkFacade>("RestSurface", new PerRequestLifetimeManager(), new InjectionConstructor(typeof(IOidStrategy), new ResolvedParameter <IOidTranslator>("KeyOid"), typeof(INakedObjectsFramework))); container.RegisterType <IFrameworkFacade, FrameworkFacade>(new PerRequestLifetimeManager()); container.RegisterType <RestfulObjectsController, RestfulObjectsController>(new PerResolveLifetimeManager(), new InjectionConstructor(new ResolvedParameter <IFrameworkFacade>("RestSurface"))); //Externals container.RegisterType <IPrincipal>(new InjectionFactory(c => HttpContext.Current.User)); // Facet decorators if (NakedObjectsRunSettings.AuditConfig() != null) { container.RegisterType(typeof(IFacetDecorator), typeof(AuditManager), "AuditManager", new ContainerControlledLifetimeManager()); container.RegisterInstance(typeof(IAuditConfiguration), NakedObjectsRunSettings.AuditConfig(), new ContainerControlledLifetimeManager()); } if (NakedObjectsRunSettings.AuthorizationConfig() != null) { container.RegisterType(typeof(IFacetDecorator), typeof(AuthorizationManager), "AuthorizationManager", new ContainerControlledLifetimeManager()); container.RegisterInstance(typeof(IAuthorizationConfiguration), NakedObjectsRunSettings.AuthorizationConfig(), new ContainerControlledLifetimeManager()); } if (NakedObjectsRunSettings.ProfileConfig() != null) { container.RegisterType(typeof(IFacetDecorator), typeof(ProfileManager), "ProfileManager", new ContainerControlledLifetimeManager()); container.RegisterInstance(typeof(IProfileConfiguration), NakedObjectsRunSettings.ProfileConfig(), new ContainerControlledLifetimeManager()); } }
protected virtual void RegisterTypes(IUnityContainer container) { //ReflectorConfiguration.NoValidate = true; //RegisterFacetFactories(container); //container.RegisterType<IMenuFactory, NullMenuFactory>(); //container.RegisterType<ISpecificationCache, ImmutableInMemorySpecCache>( // new ContainerControlledLifetimeManager(), new InjectionConstructor()); //container.RegisterType<IClassStrategy, DefaultClassStrategy>(); //container.RegisterType<IReflector, Reflector>(); //container.RegisterType<IMetamodel, Metamodel>(); //container.RegisterType<IMetamodelBuilder, Metamodel>(); StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <HierarchicalLifetimeManager>(container); }
/// <summary>Registers the type mappings with the Unity container.</summary> /// <param name="container">The unity container to configure.</param> /// <remarks>There is no need to register concrete types such as controllers or API controllers (unless you want to /// change the defaults), as Unity allows resolving a concrete type even if it was not previously registered.</remarks> public static void RegisterTypes(IUnityContainer container) { //Standard configuration StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <PerResolveLifetimeManager>(container); // config container.RegisterInstance <IReflectorConfiguration>(NakedObjectsRunSettings.ReflectorConfig(), (new ContainerControlledLifetimeManager())); container.RegisterInstance <IEntityObjectStoreConfiguration>(NakedObjectsRunSettings.EntityObjectStoreConfig(), new ContainerControlledLifetimeManager()); // Batch specific container.RegisterType <IBatchRunner, BatchRunner>(new PerResolveLifetimeManager()); //Externals container.RegisterType <IPrincipal>(new InjectionFactory(c => Thread.CurrentPrincipal)); }
protected virtual void RegisterTypes(IUnityContainer container) { //Standard configuration StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <PerResolveLifetimeManager>(container); container.RegisterType <IPrincipal>(new InjectionFactory(c => TestPrincipal)); container.RegisterInstance <IEntityObjectStoreConfiguration>(Persistor, new ContainerControlledLifetimeManager()); ReflectorConfiguration.NoValidate = true; var reflectorConfig = new ReflectorConfiguration( Types ?? new Type[] {}, Services, Namespaces ?? new string[] {}, MainMenus); container.RegisterInstance <IReflectorConfiguration>(reflectorConfig, new ContainerControlledLifetimeManager()); container.RegisterType <ISession, TestSession>(new PerResolveLifetimeManager()); }
/// <summary>Registers the type mappings with the Unity container.</summary> /// <param name="container">The unity container to configure.</param> /// <remarks>There is no need to register concrete types such as controllers or API controllers (unless you want to /// change the defaults), as Unity allows resolving a concrete type even if it was not previously registered.</remarks> public static void RegisterTypes(IUnityContainer container) { // NOTE: To load from web.config uncomment the line below. Make sure to add a Microsoft.Practices.Unity.Configuration to the using statements. // container.LoadConfiguration(); //Standard configuration StandardUnityConfig.RegisterStandardFacetFactories(container); StandardUnityConfig.RegisterCoreContainerControlledTypes(container); StandardUnityConfig.RegisterCorePerTransactionTypes <PerResolveLifetimeManager>(container); // config container.RegisterInstance <IReflectorConfiguration>(NakedObjectsSettings.ReflectorConfig(), (new ContainerControlledLifetimeManager())); container.RegisterInstance <IEntityObjectStoreConfiguration>(NakedObjectsSettings.EntityObjectStoreConfig(), new ContainerControlledLifetimeManager()); // surface container.RegisterType <IOidStrategy, ExternalOid>(new PerResolveLifetimeManager()); container.RegisterType <INakedObjectsSurface, NakedObjectsSurface>(new PerResolveLifetimeManager()); //Externals container.RegisterType <IPrincipal>(new InjectionFactory(c => HttpContext.Current.User)); }