Beispiel #1
0
        protected override void InitializeServiceLocator()
        {
            IConfigurableApplicationContext context = new StaticApplicationContext();

            objectFactory = context.ObjectFactory;
            var sl = new SpringServiceLocatorAdapter(objectFactory);

            objectFactory.RegisterInstance <IServiceLocator>(sl);
            ServiceLocator.SetLocatorProvider(() => sl);

            objectFactory.Register <IInvoiceTotalCalculator, SumAndTaxTotalCalculator>();
            objectFactory.RegisterPrototype <IInvoice, Invoice>();
        }
Beispiel #2
0
        public static void RegisterDefaultConversationAop(this IConfigurableListableObjectFactory confObjFactory)
        {
            var metaInfoStore = new ReflectionConversationalMetaInfoSource();

            confObjFactory.RegisterInstance(metaInfoStore);
            // register advisor definition
            var pc =
                ObjectDefinitionBuilder.RootObjectDefinition(ObjectDefinitionFactory,
                                                             typeof(ConversationInterceptor))
                .SetAutowireMode(AutoWiringMode.AutoDetect)
                .SetSingleton(false);

            confObjFactory.RegisterObjectDefinition("PersistentConversationalInterceptor", pc.ObjectDefinition);
            var postProcessor = new ConversationalAttributeAutoProxyCreator(metaInfoStore)
            {
                ObjectFactory    = confObjFactory,
                InterceptorNames = new[] { "PersistentConversationalInterceptor" }
            };

            confObjFactory.AddObjectPostProcessor(postProcessor);
        }