Skip to content

Commit 21e7ed5

Browse files
committed
Further working of #244
I need to think about this further
1 parent 86fd85d commit 21e7ed5

File tree

4 files changed

+9
-9
lines changed

4 files changed

+9
-9
lines changed

src/net45/WampSharp/Core/Client/WampServerProxyBuilder.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,12 @@ public TServer Create(TRawClient client, IWampConnection<TMessage> connection)
5454
};
5555

5656
proxyOptions.AddMixinInstance(new DisposableForwarder(connection));
57-
57+
5858
TServer result =
59-
mProxyGenerator.CreateInterfaceProxyWithoutTarget<TServer>
60-
(proxyOptions,
61-
interceptor);
59+
(TServer)mProxyGenerator.CreateInterfaceProxyWithoutTarget
60+
(typeof(TServer),
61+
new Type[] {typeof(IDisposable)},
62+
proxyOptions, interceptor);
6263

6364
return result;
6465
}

src/net45/WampSharp/WAMP2/V2/Client/Session/WampSessionClient.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ public void Welcome(long session, WelcomeDetails details)
105105
public void Abort(AbortDetails details, string reason)
106106
{
107107
TrySetCloseEventArgs(SessionCloseType.Abort, details, reason);
108-
mServerProxy.Dispose();
108+
((IDisposable)mServerProxy).Dispose();
109109
}
110110

111111
public void Goodbye(GoodbyeDetails details, string reason)
@@ -115,7 +115,7 @@ public void Goodbye(GoodbyeDetails details, string reason)
115115
mServerProxy.Goodbye(new GoodbyeDetails(), WampErrors.GoodbyeAndOut);
116116
}
117117

118-
mServerProxy.Dispose();
118+
((IDisposable)mServerProxy).Dispose();
119119

120120
TrySetCloseEventArgs(SessionCloseType.Goodbye, details, reason);
121121
}

src/net45/WampSharp/WAMP2/V2/Core/Contracts/Proxy/IWampServerProxy.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@ public interface IWampServerProxy<TMessage> :
1616
IWampBrokerProxy<TMessage>,
1717
IWampDealerProxy<TMessage>,
1818
IWampSessionProxy,
19-
IWampError<TMessage>,
20-
IDisposable
19+
IWampError<TMessage>
2120
{
2221
}
2322
}

src/net45/WampSharp/WAMP2/V2/PCL/ManualWampServerProxyBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public IWampServerProxy Create(IWampClient<TMessage> client, IWampConnection<TMe
3434
return result;
3535
}
3636

37-
private class WampServerProxy : ProxyBase, IWampServerProxy
37+
private class WampServerProxy : ProxyBase, IWampServerProxy, IDisposable
3838
{
3939
private static readonly MethodInfo mPublish3 = Method.Get((IWampServerProxy proxy) => proxy.Publish(default(long), default(PublishOptions), default(string)));
4040
private static readonly MethodInfo mPublish4 = Method.Get((IWampServerProxy proxy) => proxy.Publish(default(long), default(PublishOptions), default(string), default(object[])));

0 commit comments

Comments
 (0)