Mercurial > pub > bltoolkit
diff Tools/DocGen/Content/Doc/Aspects/AsyncAspect.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Tools/DocGen/Content/Doc/Aspects/AsyncAspect.cs Thu Mar 27 21:46:09 2014 +0400 @@ -0,0 +1,45 @@ +[BLToolkitGenerated] +internal delegate int TestObject$Test$Delegate(int, string); + +[BLToolkitGenerated] +public sealed class AsyncTestObject : HowTo.Aspects.AsyncAspectTest.AsyncTestObject +{ + public override IAsyncResult BeginTest(int intVal, string strVal) + { + AsyncAspectBuilder.InternalAsyncResult r = new AsyncAspectBuilder.InternalAsyncResult(); + + r.Delegate = new TestObject$Test$Delegate(base.Test); + r.InnerResult = r.Delegate.BeginInvoke(intVal, strVal, null, null); + + return r; + } + + public override IAsyncResult BeginTest(int intVal, string strVal, AsyncCallback callback) + { + AsyncAspectBuilder.InternalAsyncResult r = new AsyncAspectBuilder.InternalAsyncResult(); + + r.Delegate = new TestObject$Test$Delegate(base.Test); + r.AsyncCallback = callback; + r.InnerResult = r.Delegate.BeginInvoke(intVal, strVal, new AsyncCallback(r.CallBack), null); + + return r; + } + + public override IAsyncResult BeginTest(int intVal, string strVal, AsyncCallback callback, object state) + { + AsyncAspectBuilder.InternalAsyncResult r = new AsyncAspectBuilder.InternalAsyncResult(); + + r.Delegate = new TestObject$Test$Delegate(base.Test); + r.AsyncCallback = callback; + r.InnerResult = r.Delegate.BeginInvoke(intVal, strVal, new AsyncCallback(r.CallBack), state); + + return r; + } + + public override int EndTest(IAsyncResult asyncResult) + { + AsyncAspectBuilder.InternalAsyncResult r = (AsyncAspectBuilder.InternalAsyncResult)asyncResult; + + return ((TestObject$Test$Delegate)r.Delegate).EndInvoke(r.InnerResult); + } +}