Esempio n. 1
0
        private CompositeContainer(CompositeRuntimeSettings runtimeSettings = null, IoC.CompositeContainer container = null)
        {
            IRuntime compositeRuntime = null;
            INCopDependencyAwareRegistry    registry         = null;
            INCopDependencyContainerAdapter compositeAdpater = null;

            this.runtimeSettings = runtimeSettings ?? CompositeRuntimeSettings.Empty;
            compositeAdpater     = this.runtimeSettings.DependencyContainerAdapter;

            if (compositeAdpater.IsNotNull())
            {
                dependencyContainer = compositeAdpater;
                registry            = new NCopRegistryAdapter(compositeAdpater);
            }
            else
            {
                var compositeContainerAdapter = new CompositeContainerAdapter(container);

                registry            = compositeContainerAdapter;
                dependencyContainer = compositeContainerAdapter;
            }

            registry         = new CompositeRegistryDecorator(registry);
            compositeRuntime = new CompositeRuntime(this.runtimeSettings, registry);
            compositeRuntime.Run();
        }
Esempio n. 2
0
        public INCopDependencyContainer CreateChildContainer()
        {
            var childContainer       = (NCop.Composite.IoC.CompositeContainer)dependencyContainer.CreateChildContainer();
            var newCompositeSettings = new CompositeRuntimeSettings {
                Types      = runtimeSettings.Types,
                Assemblies = runtimeSettings.Assemblies
            };

            return(new Framework.CompositeContainer(newCompositeSettings, childContainer));
        }
Esempio n. 3
0
        public CompositeContainer(CompositeRuntimeSettings runtimeSettings = null)
        {
            INCopRegistry registry         = null;
            IRuntime      compositeRuntime = null;

            runtimeSettings  = runtimeSettings ?? CompositeRuntimeSettings.Empty;
            compositeAdapter = runtimeSettings.DependencyContainerAdapter ?? new CompositeContainerAdapter();
            registry         = new CompositeRegistryDecorator(compositeAdapter);
            compositeRuntime = new CompositeRuntime(runtimeSettings, registry);
            compositeRuntime.Run();
        }
Esempio n. 4
0
        static void Main(string[] args)
        {
            int i = 0, j = 0, k = 0;
            //new Person().Code(ref i, j, ref k); return;
            var settings = new CompositeRuntimeSettings {
                DependencyContainerAdapter = new StructureMapAdapter()
            };

            var container = new CompositeContainer(settings);

            container.Configure();
            var person = container.TryResolveNamed <IPersonComposite>("IPersonComposite");

            person.Code(ref i, j, ref k);
            Console.WriteLine(i);
        }
Esempio n. 5
0
 public CompositeContainer(CompositeRuntimeSettings runtimeSettings = null)
     : this(runtimeSettings, null)
 {
 }