Beispiel #1
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);
        }
 /// <summary>
 /// Ensures, that predefined ObjectPostProcessors are registered with this ObjectFactory
 /// </summary>
 /// <param name="objectFactory"></param>
 protected void EnsureKnownObjectPostProcessors(IConfigurableListableObjectFactory objectFactory)
 {
     // index 0 contains the ObjectPostProcessorChecker that is handled separately!
     for (int i = 1; i < _defaultObjectPostProcessors.Count; i++)
     {
         objectFactory.AddObjectPostProcessor((IObjectPostProcessor)this._defaultObjectPostProcessors[i]);
     }
 }