root/UnityWeb/UnityWeb/Modules/Common/BusinessConversation.cs

User picture

Author: marisic.net

Revision: 112 («Previous)


File Size: 926 Bytes

(February 02, 2009 07:47 UTC) Over 3 years ago


  

 
Show/hide line numbers
#region Using Statements

using System;
using PostSharp.Laos;
using Repository.NHibernateDataAccess.Conversation;
using StructureMap;

#endregion

namespace Modules.Common
{
    [Serializable]
    public sealed class BusinessConversation : OnMethodBoundaryAspect
    {
        public override void OnEntry(MethodExecutionEventArgs eventArgs)
        {
            var conversation = ObjectFactory.GetInstance<IConversation>();
            conversation.Resume();
        }

        public override void OnSuccess(MethodExecutionEventArgs eventArgs)
        {
            var conversation = ObjectFactory.GetInstance<IConversation>();
            conversation.Pause();
        }

        public override void OnException(MethodExecutionEventArgs eventArgs)
        {
            var conversation = ObjectFactory.GetInstance<IConversation>();
            conversation.Abort();
        }
    }
}