oh dear
This commit is contained in:
+199
@@ -0,0 +1,199 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using BestHTTP.SignalRCore.Messages;
|
||||
using BestHTTP.WebSocket;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Authentication
|
||||
{
|
||||
// Token: 0x020018F7 RID: 6391
|
||||
[Token(Token = "0x20018F7")]
|
||||
public sealed class DefaultAccessTokenAuthenticator : IAuthenticationProvider
|
||||
{
|
||||
// Token: 0x170017F4 RID: 6132
|
||||
// (get) Token: 0x06009650 RID: 38480 RVA: 0x001EEB3C File Offset: 0x001ECD3C
|
||||
[Token(Token = "0x170017F4")]
|
||||
public bool IsPreAuthRequired
|
||||
{
|
||||
[Token(Token = "0x6009650")]
|
||||
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "4")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000CA RID: 202
|
||||
// (add) Token: 0x06009651 RID: 38481 RVA: 0x001EEB4C File Offset: 0x001ECD4C
|
||||
// (remove) Token: 0x06009652 RID: 38482 RVA: 0x001EEB74 File Offset: 0x001ECD74
|
||||
[Token(Token = "0x140000CA")]
|
||||
public event OnAuthenticationSuccededDelegate OnAuthenticationSucceded
|
||||
{
|
||||
[Token(Token = "0x6009651")]
|
||||
[Address(RVA = "0x1C346C0", Offset = "0x1C334C0", VA = "0x181C346C0", Slot = "5")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
OnAuthenticationSuccededDelegate onAuthenticationSucceded;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationSucceded = this.OnAuthenticationSucceded;
|
||||
@delegate = Delegate.Combine(onAuthenticationSucceded, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationSucceded)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x6009652")]
|
||||
[Address(RVA = "0x1C34800", Offset = "0x1C33600", VA = "0x181C34800", Slot = "6")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
OnAuthenticationSuccededDelegate onAuthenticationSucceded;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationSucceded = this.OnAuthenticationSucceded;
|
||||
@delegate = Delegate.Remove(onAuthenticationSucceded, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationSucceded)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000CB RID: 203
|
||||
// (add) Token: 0x06009653 RID: 38483 RVA: 0x001EEB9C File Offset: 0x001ECD9C
|
||||
// (remove) Token: 0x06009654 RID: 38484 RVA: 0x001EEBC4 File Offset: 0x001ECDC4
|
||||
[Token(Token = "0x140000CB")]
|
||||
public event OnAuthenticationFailedDelegate OnAuthenticationFailed
|
||||
{
|
||||
[Token(Token = "0x6009653")]
|
||||
[Address(RVA = "0x1C34620", Offset = "0x1C33420", VA = "0x181C34620", Slot = "7")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
OnAuthenticationFailedDelegate onAuthenticationFailed;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationFailed = this.OnAuthenticationFailed;
|
||||
@delegate = Delegate.Combine(onAuthenticationFailed, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationFailed)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x6009654")]
|
||||
[Address(RVA = "0x1C34760", Offset = "0x1C33560", VA = "0x181C34760", Slot = "8")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
OnAuthenticationFailedDelegate onAuthenticationFailed;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationFailed = this.OnAuthenticationFailed;
|
||||
@delegate = Delegate.Remove(onAuthenticationFailed, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationFailed)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009655 RID: 38485 RVA: 0x001EEBEC File Offset: 0x001ECDEC
|
||||
[Token(Token = "0x6009655")]
|
||||
[Address(RVA = "0x4A24B0", Offset = "0x4A12B0", VA = "0x1804A24B0")]
|
||||
public DefaultAccessTokenAuthenticator(HubConnection connection)
|
||||
{
|
||||
this.StartAuthentication();
|
||||
this._connection = connection;
|
||||
}
|
||||
|
||||
// Token: 0x06009656 RID: 38486 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009656")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "9")]
|
||||
public void StartAuthentication()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009657 RID: 38487 RVA: 0x001EEC08 File Offset: 0x001ECE08
|
||||
[Token(Token = "0x6009657")]
|
||||
[Address(RVA = "0x1C342B0", Offset = "0x1C330B0", VA = "0x181C342B0", Slot = "10")]
|
||||
public void PrepareRequest(NEBIGEDJGPP request)
|
||||
{
|
||||
if (HTTPProtocolFactory.GetProtocolFromUri(request.FHCKMFKKHLK) == SupportedProtocols.HTTP)
|
||||
{
|
||||
Uri uri = request.NJIBHKPHKFF;
|
||||
HubConnection connection = this._connection;
|
||||
NegotiationResult <NegotiationResult>k__BackingField = connection.<NegotiationResult>k__BackingField;
|
||||
if (<NegotiationResult>k__BackingField != 0)
|
||||
{
|
||||
string <AccessToken>k__BackingField = <NegotiationResult>k__BackingField.<AccessToken>k__BackingField;
|
||||
if (connection == 0)
|
||||
{
|
||||
if (uri.Query != 0)
|
||||
{
|
||||
}
|
||||
string text = uri.Query + "&";
|
||||
string scheme = uri.Scheme;
|
||||
string host = uri.Host;
|
||||
int port = uri.Port;
|
||||
string absolutePath = uri.AbsolutePath;
|
||||
string <AccessToken>k__BackingField2 = this._connection.<NegotiationResult>k__BackingField.<AccessToken>k__BackingField;
|
||||
string text2 = text + "access_token=" + <AccessToken>k__BackingField2;
|
||||
Uri uri2 = new UriBuilder(scheme, host, port, absolutePath, text2).Uri;
|
||||
}
|
||||
}
|
||||
request.NJIBHKPHKFF = uri;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009658 RID: 38488 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009658")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "11")]
|
||||
public void PrepareWebSocket(WebSocket webSocket)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009659 RID: 38489 RVA: 0x001EECD0 File Offset: 0x001ECED0
|
||||
[Token(Token = "0x6009659")]
|
||||
[Address(RVA = "0x1C34480", Offset = "0x1C33280", VA = "0x181C34480", Slot = "12")]
|
||||
public Uri PrepareUri(Uri uri)
|
||||
{
|
||||
HubConnection connection = this._connection;
|
||||
NegotiationResult <NegotiationResult>k__BackingField = connection.<NegotiationResult>k__BackingField;
|
||||
if (<NegotiationResult>k__BackingField != 0)
|
||||
{
|
||||
string <AccessToken>k__BackingField = <NegotiationResult>k__BackingField.<AccessToken>k__BackingField;
|
||||
if (connection == 0)
|
||||
{
|
||||
if (uri.Query != 0)
|
||||
{
|
||||
}
|
||||
string text = uri.Query + "&";
|
||||
string scheme = uri.Scheme;
|
||||
string host = uri.Host;
|
||||
int port = uri.Port;
|
||||
string absolutePath = uri.AbsolutePath;
|
||||
string <AccessToken>k__BackingField2 = this._connection.<NegotiationResult>k__BackingField.<AccessToken>k__BackingField;
|
||||
string text2 = text + "access_token=" + <AccessToken>k__BackingField2;
|
||||
return new UriBuilder(scheme, host, port, absolutePath, text2).Uri;
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x04006675 RID: 26229
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4006675")]
|
||||
private HubConnection _connection;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,159 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using BestHTTP.WebSocket;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018D4 RID: 6356
|
||||
[Token(Token = "0x20018D4")]
|
||||
public class BearerTokenAuthProvider : IAuthenticationProvider
|
||||
{
|
||||
// Token: 0x06009584 RID: 38276 RVA: 0x001EC43C File Offset: 0x001EA63C
|
||||
[Token(Token = "0x6009584")]
|
||||
[Address(RVA = "0x3FFB80", Offset = "0x3FE980", VA = "0x1803FFB80")]
|
||||
public BearerTokenAuthProvider(string accessToken)
|
||||
{
|
||||
this.StartAuthentication();
|
||||
this.accessToken = accessToken;
|
||||
}
|
||||
|
||||
// Token: 0x170017CC RID: 6092
|
||||
// (get) Token: 0x06009585 RID: 38277 RVA: 0x001EC458 File Offset: 0x001EA658
|
||||
[Token(Token = "0x170017CC")]
|
||||
public bool IsPreAuthRequired
|
||||
{
|
||||
[Token(Token = "0x6009585")]
|
||||
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "4")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000BF RID: 191
|
||||
// (add) Token: 0x06009586 RID: 38278 RVA: 0x001EC468 File Offset: 0x001EA668
|
||||
// (remove) Token: 0x06009587 RID: 38279 RVA: 0x001EC490 File Offset: 0x001EA690
|
||||
[Token(Token = "0x140000BF")]
|
||||
public event OnAuthenticationSuccededDelegate OnAuthenticationSucceded
|
||||
{
|
||||
[Token(Token = "0x6009586")]
|
||||
[Address(RVA = "0x1C340D0", Offset = "0x1C32ED0", VA = "0x181C340D0", Slot = "5")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
OnAuthenticationSuccededDelegate onAuthenticationSucceded;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationSucceded = this.OnAuthenticationSucceded;
|
||||
@delegate = Delegate.Combine(onAuthenticationSucceded, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationSucceded)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x6009587")]
|
||||
[Address(RVA = "0x1C34210", Offset = "0x1C33010", VA = "0x181C34210", Slot = "6")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
OnAuthenticationSuccededDelegate onAuthenticationSucceded;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationSucceded = this.OnAuthenticationSucceded;
|
||||
@delegate = Delegate.Remove(onAuthenticationSucceded, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationSucceded)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000C0 RID: 192
|
||||
// (add) Token: 0x06009588 RID: 38280 RVA: 0x001EC4B8 File Offset: 0x001EA6B8
|
||||
// (remove) Token: 0x06009589 RID: 38281 RVA: 0x001EC4E0 File Offset: 0x001EA6E0
|
||||
[Token(Token = "0x140000C0")]
|
||||
public event OnAuthenticationFailedDelegate OnAuthenticationFailed
|
||||
{
|
||||
[Token(Token = "0x6009588")]
|
||||
[Address(RVA = "0x1C34030", Offset = "0x1C32E30", VA = "0x181C34030", Slot = "7")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
OnAuthenticationFailedDelegate onAuthenticationFailed;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationFailed = this.OnAuthenticationFailed;
|
||||
@delegate = Delegate.Combine(onAuthenticationFailed, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationFailed)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x6009589")]
|
||||
[Address(RVA = "0x1C34170", Offset = "0x1C32F70", VA = "0x181C34170", Slot = "8")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
OnAuthenticationFailedDelegate onAuthenticationFailed;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onAuthenticationFailed = this.OnAuthenticationFailed;
|
||||
@delegate = Delegate.Remove(onAuthenticationFailed, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onAuthenticationFailed)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600958A RID: 38282 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600958A")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "9")]
|
||||
public void StartAuthentication()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600958B RID: 38283 RVA: 0x001EC508 File Offset: 0x001EA708
|
||||
[Token(Token = "0x600958B")]
|
||||
[Address(RVA = "0x1C33F40", Offset = "0x1C32D40", VA = "0x181C33F40", Slot = "10")]
|
||||
public void PrepareRequest(NEBIGEDJGPP request)
|
||||
{
|
||||
string text = this.accessToken;
|
||||
string text2 = "Bearer " + text;
|
||||
request.MKICFHMIDJC("Authorization", text2);
|
||||
}
|
||||
|
||||
// Token: 0x0600958C RID: 38284 RVA: 0x001EC53C File Offset: 0x001EA73C
|
||||
[Token(Token = "0x600958C")]
|
||||
[Address(RVA = "0x1C33FB0", Offset = "0x1C32DB0", VA = "0x181C33FB0", Slot = "11")]
|
||||
public void PrepareWebSocket(WebSocket webSocket)
|
||||
{
|
||||
string text = this.accessToken;
|
||||
HTTPRequest <InternalRequest>k__BackingField = webSocket.<InternalRequest>k__BackingField;
|
||||
string text2 = "Bearer " + text;
|
||||
<InternalRequest>k__BackingField.SetHeader("Authorization", text2);
|
||||
}
|
||||
|
||||
// Token: 0x0600958D RID: 38285 RVA: 0x001EC578 File Offset: 0x001EA778
|
||||
[Token(Token = "0x600958D")]
|
||||
[Address(RVA = "0x4996E0", Offset = "0x4984E0", VA = "0x1804996E0", Slot = "12")]
|
||||
public Uri PrepareUri(Uri uri)
|
||||
{
|
||||
return uri;
|
||||
}
|
||||
|
||||
// Token: 0x04006608 RID: 26120
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4006608")]
|
||||
private readonly string accessToken;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018DC RID: 6364
|
||||
[Token(Token = "0x20018DC")]
|
||||
internal struct CallbackDescriptor
|
||||
{
|
||||
// Token: 0x060095A3 RID: 38307 RVA: 0x001EC638 File Offset: 0x001EA838
|
||||
[Token(Token = "0x60095A3")]
|
||||
[Address(RVA = "0x479F00", Offset = "0x478D00", VA = "0x180479F00")]
|
||||
public CallbackDescriptor(Type[] paramTypes, Action<object[]> callback)
|
||||
{
|
||||
this.ParamTypes = paramTypes;
|
||||
this.Callback = callback;
|
||||
}
|
||||
|
||||
// Token: 0x04006623 RID: 26147
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4006623")]
|
||||
public readonly Type[] ParamTypes;
|
||||
|
||||
// Token: 0x04006624 RID: 26148
|
||||
[FieldOffset(Offset = "0x8")]
|
||||
[Token(Token = "0x4006624")]
|
||||
public readonly Action<object[]> Callback;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018D8 RID: 6360
|
||||
[Token(Token = "0x20018D8")]
|
||||
public enum ConnectionStates
|
||||
{
|
||||
// Token: 0x04006618 RID: 26136
|
||||
[Token(Token = "0x4006618")]
|
||||
Initial,
|
||||
// Token: 0x04006619 RID: 26137
|
||||
[Token(Token = "0x4006619")]
|
||||
Authenticating,
|
||||
// Token: 0x0400661A RID: 26138
|
||||
[Token(Token = "0x400661A")]
|
||||
Negotiating,
|
||||
// Token: 0x0400661B RID: 26139
|
||||
[Token(Token = "0x400661B")]
|
||||
Redirected,
|
||||
// Token: 0x0400661C RID: 26140
|
||||
[Token(Token = "0x400661C")]
|
||||
Connected,
|
||||
// Token: 0x0400661D RID: 26141
|
||||
[Token(Token = "0x400661D")]
|
||||
CloseInitiated,
|
||||
// Token: 0x0400661E RID: 26142
|
||||
[Token(Token = "0x400661E")]
|
||||
Closed
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,165 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Encoders
|
||||
{
|
||||
// Token: 0x020018ED RID: 6381
|
||||
[Token(Token = "0x20018ED")]
|
||||
public sealed class LitJsonEncoder : IEncoder
|
||||
{
|
||||
// Token: 0x170017E7 RID: 6119
|
||||
// (get) Token: 0x0600961B RID: 38427 RVA: 0x001EDC98 File Offset: 0x001EBE98
|
||||
[Token(Token = "0x170017E7")]
|
||||
public string Name
|
||||
{
|
||||
[Token(Token = "0x600961B")]
|
||||
[Address(RVA = "0x1C38EA0", Offset = "0x1C37CA0", VA = "0x181C38EA0", Slot = "4")]
|
||||
get
|
||||
{
|
||||
return "json";
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600961C RID: 38428 RVA: 0x001EDCAC File Offset: 0x001EBEAC
|
||||
[Token(Token = "0x600961C")]
|
||||
[Address(RVA = "0x1C389D0", Offset = "0x1C377D0", VA = "0x181C389D0")]
|
||||
public LitJsonEncoder()
|
||||
{
|
||||
KJBJHOONAKL<int, long> <>9__2_ = LitJsonEncoder.<>c.<>9__2_0;
|
||||
if (<>9__2_ == 0)
|
||||
{
|
||||
LitJsonEncoder.<>c.<>9__2_0 = delegate(int input)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
};
|
||||
}
|
||||
NOEIKACMNJH.EDOFHMLFIHF<int, long>(<>9__2_);
|
||||
KJBJHOONAKL<long, int> kjbjhoonakl;
|
||||
if (LitJsonEncoder.<>c.<>9__2_1 == 0)
|
||||
{
|
||||
kjbjhoonakl = delegate(long input)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
};
|
||||
LitJsonEncoder.<>c.<>9__2_1 = kjbjhoonakl;
|
||||
}
|
||||
NOEIKACMNJH.EDOFHMLFIHF<long, int>(kjbjhoonakl);
|
||||
KJBJHOONAKL<double, int> kjbjhoonakl2;
|
||||
if (LitJsonEncoder.<>c.<>9__2_2 == 0)
|
||||
{
|
||||
kjbjhoonakl2 = delegate(double input)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
};
|
||||
LitJsonEncoder.<>c.<>9__2_2 = kjbjhoonakl2;
|
||||
}
|
||||
NOEIKACMNJH.EDOFHMLFIHF<double, int>(kjbjhoonakl2);
|
||||
KJBJHOONAKL<string, DateTime> kjbjhoonakl3;
|
||||
if (LitJsonEncoder.<>c.<>9__2_3 == 0)
|
||||
{
|
||||
kjbjhoonakl3 = delegate(string input)
|
||||
{
|
||||
DateTime dateTime = Convert.ToDateTime(input);
|
||||
DateTime dateTime2;
|
||||
return dateTime2;
|
||||
};
|
||||
LitJsonEncoder.<>c.<>9__2_3 = kjbjhoonakl3;
|
||||
}
|
||||
NOEIKACMNJH.EDOFHMLFIHF<string, DateTime>(kjbjhoonakl3);
|
||||
KJBJHOONAKL<double, float> kjbjhoonakl4;
|
||||
if (LitJsonEncoder.<>c.<>9__2_4 == 0)
|
||||
{
|
||||
kjbjhoonakl4 = delegate(double input)
|
||||
{
|
||||
};
|
||||
LitJsonEncoder.<>c.<>9__2_4 = kjbjhoonakl4;
|
||||
}
|
||||
NOEIKACMNJH.EDOFHMLFIHF<double, float>(kjbjhoonakl4);
|
||||
KJBJHOONAKL<string, byte[]> kjbjhoonakl5;
|
||||
if (LitJsonEncoder.<>c.<>9__2_5 == 0)
|
||||
{
|
||||
kjbjhoonakl5 = (string input) => Convert.FromBase64String(input);
|
||||
LitJsonEncoder.<>c.<>9__2_5 = kjbjhoonakl5;
|
||||
}
|
||||
NOEIKACMNJH.EDOFHMLFIHF<string, byte[]>(kjbjhoonakl5);
|
||||
}
|
||||
|
||||
// Token: 0x0600961D RID: 38429 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600961D")]
|
||||
[Address(RVA = "0x1B909A0", Offset = "0x1B8F7A0", VA = "0x181B909A0", Slot = "6")]
|
||||
public T DecodeAs<T>(string text)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600961E RID: 38430 RVA: 0x001EDDA4 File Offset: 0x001EBFA4
|
||||
[Token(Token = "0x600961E")]
|
||||
[Address(RVA = "0x1B90A40", Offset = "0x1B8F840", VA = "0x181B90A40", Slot = "8")]
|
||||
public T DecodeAs<T>(byte[] data)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600961E)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling T BestHTTP.SignalRCore.Encoders.LitJsonEncoder::DecodeAs<T>(System.Byte[])
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.ctor))
|
||||
}
|
||||
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
||||
--- End of inner exception stack trace ---
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
||||
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
|
||||
*/;
|
||||
}
|
||||
|
||||
// Token: 0x0600961F RID: 38431 RVA: 0x001EDDB8 File Offset: 0x001EBFB8
|
||||
[Token(Token = "0x600961F")]
|
||||
[Address(RVA = "0x190C400", Offset = "0x190B200", VA = "0x18190C400", Slot = "7")]
|
||||
public byte[] EncodeAsBinary<T>(T value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600961F)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.SignalRCore.Encoders.LitJsonEncoder::EncodeAsBinary<T>(T)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.ctor))
|
||||
}
|
||||
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
||||
--- End of inner exception stack trace ---
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
||||
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
|
||||
*/;
|
||||
}
|
||||
|
||||
// Token: 0x06009620 RID: 38432 RVA: 0x001EDDCC File Offset: 0x001EBFCC
|
||||
[Token(Token = "0x6009620")]
|
||||
[Address(RVA = "0x1B56550", Offset = "0x1B55350", VA = "0x181B56550", Slot = "5")]
|
||||
public string EncodeAsText<T>(T value)
|
||||
{
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
|
||||
// Token: 0x06009621 RID: 38433 RVA: 0x001EDDDC File Offset: 0x001EBFDC
|
||||
[Token(Token = "0x6009621")]
|
||||
[Address(RVA = "0x1C38960", Offset = "0x1C37760", VA = "0x181C38960", Slot = "9")]
|
||||
public object ConvertTo(Type toType, object obj)
|
||||
{
|
||||
string text = NOEIKACMNJH.MFFBDFHINID(obj);
|
||||
return NOEIKACMNJH.IGOEEFAAPKD(toType, text);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,1012 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Futures;
|
||||
using BestHTTP.Logger;
|
||||
using BestHTTP.SignalRCore.Authentication;
|
||||
using BestHTTP.SignalRCore.Messages;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018DF RID: 6367
|
||||
[Token(Token = "0x20018DF")]
|
||||
public sealed class HubConnection : IHeartbeat
|
||||
{
|
||||
// Token: 0x170017D8 RID: 6104
|
||||
// (get) Token: 0x060095B0 RID: 38320 RVA: 0x001EC77C File Offset: 0x001EA97C
|
||||
// (set) Token: 0x060095B1 RID: 38321 RVA: 0x001EC790 File Offset: 0x001EA990
|
||||
[Token(Token = "0x170017D8")]
|
||||
public Uri Uri
|
||||
{
|
||||
[Token(Token = "0x60095B0")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x60095B1")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D9 RID: 6105
|
||||
// (get) Token: 0x060095B2 RID: 38322 RVA: 0x001EC7A4 File Offset: 0x001EA9A4
|
||||
// (set) Token: 0x060095B3 RID: 38323 RVA: 0x001EC7B8 File Offset: 0x001EA9B8
|
||||
[Token(Token = "0x170017D9")]
|
||||
public ConnectionStates State
|
||||
{
|
||||
[Token(Token = "0x60095B2")]
|
||||
[Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720")]
|
||||
get;
|
||||
[Token(Token = "0x60095B3")]
|
||||
[Address(RVA = "0x41F740", Offset = "0x41E540", VA = "0x18041F740")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017DA RID: 6106
|
||||
// (get) Token: 0x060095B4 RID: 38324 RVA: 0x001EC7CC File Offset: 0x001EA9CC
|
||||
// (set) Token: 0x060095B5 RID: 38325 RVA: 0x001EC7E0 File Offset: 0x001EA9E0
|
||||
[Token(Token = "0x170017DA")]
|
||||
public ITransport Transport
|
||||
{
|
||||
[Token(Token = "0x60095B4")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x60095B5")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017DB RID: 6107
|
||||
// (get) Token: 0x060095B6 RID: 38326 RVA: 0x001EC7F4 File Offset: 0x001EA9F4
|
||||
// (set) Token: 0x060095B7 RID: 38327 RVA: 0x001EC808 File Offset: 0x001EAA08
|
||||
[Token(Token = "0x170017DB")]
|
||||
public IProtocol Protocol
|
||||
{
|
||||
[Token(Token = "0x60095B6")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
||||
get;
|
||||
[Token(Token = "0x60095B7")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x140000C2 RID: 194
|
||||
// (add) Token: 0x060095B8 RID: 38328 RVA: 0x001EC81C File Offset: 0x001EAA1C
|
||||
// (remove) Token: 0x060095B9 RID: 38329 RVA: 0x001EC844 File Offset: 0x001EAA44
|
||||
[Token(Token = "0x140000C2")]
|
||||
public event Action<HubConnection, Uri, Uri> OnRedirected
|
||||
{
|
||||
[Token(Token = "0x60095B8")]
|
||||
[Address(RVA = "0x1C37A10", Offset = "0x1C36810", VA = "0x181C37A10")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Action<HubConnection, Uri, Uri> onRedirected;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onRedirected = this.OnRedirected;
|
||||
@delegate = Delegate.Combine(onRedirected, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onRedirected)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60095B9")]
|
||||
[Address(RVA = "0x1C37D30", Offset = "0x1C36B30", VA = "0x181C37D30")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Action<HubConnection, Uri, Uri> onRedirected;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onRedirected = this.OnRedirected;
|
||||
@delegate = Delegate.Remove(onRedirected, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onRedirected)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000C3 RID: 195
|
||||
// (add) Token: 0x060095BA RID: 38330 RVA: 0x001EC86C File Offset: 0x001EAA6C
|
||||
// (remove) Token: 0x060095BB RID: 38331 RVA: 0x001EC894 File Offset: 0x001EAA94
|
||||
[Token(Token = "0x140000C3")]
|
||||
public event Action<HubConnection> OnConnected
|
||||
{
|
||||
[Token(Token = "0x60095BA")]
|
||||
[Address(RVA = "0x1C37830", Offset = "0x1C36630", VA = "0x181C37830")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Action<HubConnection> onConnected;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onConnected = this.OnConnected;
|
||||
@delegate = Delegate.Combine(onConnected, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onConnected)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60095BB")]
|
||||
[Address(RVA = "0x1C37B50", Offset = "0x1C36950", VA = "0x181C37B50")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Action<HubConnection> onConnected;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onConnected = this.OnConnected;
|
||||
@delegate = Delegate.Remove(onConnected, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onConnected)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000C4 RID: 196
|
||||
// (add) Token: 0x060095BC RID: 38332 RVA: 0x001EC8BC File Offset: 0x001EAABC
|
||||
// (remove) Token: 0x060095BD RID: 38333 RVA: 0x001EC8E4 File Offset: 0x001EAAE4
|
||||
[Token(Token = "0x140000C4")]
|
||||
public event Action<HubConnection, string> OnError
|
||||
{
|
||||
[Token(Token = "0x60095BC")]
|
||||
[Address(RVA = "0x1C378D0", Offset = "0x1C366D0", VA = "0x181C378D0")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Action<HubConnection, string> onError;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onError = this.OnError;
|
||||
@delegate = Delegate.Combine(onError, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onError)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60095BD")]
|
||||
[Address(RVA = "0x1C37BF0", Offset = "0x1C369F0", VA = "0x181C37BF0")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Action<HubConnection, string> onError;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onError = this.OnError;
|
||||
@delegate = Delegate.Remove(onError, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onError)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000C5 RID: 197
|
||||
// (add) Token: 0x060095BE RID: 38334 RVA: 0x001EC90C File Offset: 0x001EAB0C
|
||||
// (remove) Token: 0x060095BF RID: 38335 RVA: 0x001EC934 File Offset: 0x001EAB34
|
||||
[Token(Token = "0x140000C5")]
|
||||
public event Action<HubConnection> OnClosed
|
||||
{
|
||||
[Token(Token = "0x60095BE")]
|
||||
[Address(RVA = "0x1C37790", Offset = "0x1C36590", VA = "0x181C37790")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Action<HubConnection> onClosed;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onClosed = this.OnClosed;
|
||||
@delegate = Delegate.Combine(onClosed, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onClosed)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60095BF")]
|
||||
[Address(RVA = "0x1C37AB0", Offset = "0x1C368B0", VA = "0x181C37AB0")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Action<HubConnection> onClosed;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onClosed = this.OnClosed;
|
||||
@delegate = Delegate.Remove(onClosed, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onClosed)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000C6 RID: 198
|
||||
// (add) Token: 0x060095C0 RID: 38336 RVA: 0x001EC95C File Offset: 0x001EAB5C
|
||||
// (remove) Token: 0x060095C1 RID: 38337 RVA: 0x001EC984 File Offset: 0x001EAB84
|
||||
[Token(Token = "0x140000C6")]
|
||||
public event Func<HubConnection, Message, bool> OnMessage
|
||||
{
|
||||
[Token(Token = "0x60095C0")]
|
||||
[Address(RVA = "0x1C37970", Offset = "0x1C36770", VA = "0x181C37970")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Func<HubConnection, Message, bool> onMessage;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onMessage = this.OnMessage;
|
||||
@delegate = Delegate.Combine(onMessage, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onMessage)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60095C1")]
|
||||
[Address(RVA = "0x1C37C90", Offset = "0x1C36A90", VA = "0x181C37C90")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Func<HubConnection, Message, bool> onMessage;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onMessage = this.OnMessage;
|
||||
@delegate = Delegate.Remove(onMessage, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onMessage)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017DC RID: 6108
|
||||
// (get) Token: 0x060095C2 RID: 38338 RVA: 0x001EC9AC File Offset: 0x001EABAC
|
||||
// (set) Token: 0x060095C3 RID: 38339 RVA: 0x001EC9C0 File Offset: 0x001EABC0
|
||||
[Token(Token = "0x170017DC")]
|
||||
public IAuthenticationProvider AuthenticationProvider
|
||||
{
|
||||
[Token(Token = "0x60095C2")]
|
||||
[Address(RVA = "0x423D40", Offset = "0x422B40", VA = "0x180423D40")]
|
||||
get;
|
||||
[Token(Token = "0x60095C3")]
|
||||
[Address(RVA = "0x466B90", Offset = "0x465990", VA = "0x180466B90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017DD RID: 6109
|
||||
// (get) Token: 0x060095C4 RID: 38340 RVA: 0x001EC9D4 File Offset: 0x001EABD4
|
||||
// (set) Token: 0x060095C5 RID: 38341 RVA: 0x001EC9E8 File Offset: 0x001EABE8
|
||||
[Token(Token = "0x170017DD")]
|
||||
public NegotiationResult NegotiationResult
|
||||
{
|
||||
[Token(Token = "0x60095C4")]
|
||||
[Address(RVA = "0x423DE0", Offset = "0x422BE0", VA = "0x180423DE0")]
|
||||
get;
|
||||
[Token(Token = "0x60095C5")]
|
||||
[Address(RVA = "0x567490", Offset = "0x566290", VA = "0x180567490")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017DE RID: 6110
|
||||
// (get) Token: 0x060095C6 RID: 38342 RVA: 0x001EC9FC File Offset: 0x001EABFC
|
||||
// (set) Token: 0x060095C7 RID: 38343 RVA: 0x001ECA10 File Offset: 0x001EAC10
|
||||
[Token(Token = "0x170017DE")]
|
||||
public HubOptions Options
|
||||
{
|
||||
[Token(Token = "0x60095C6")]
|
||||
[Address(RVA = "0x423E10", Offset = "0x422C10", VA = "0x180423E10")]
|
||||
get;
|
||||
[Token(Token = "0x60095C7")]
|
||||
[Address(RVA = "0x687270", Offset = "0x686070", VA = "0x180687270")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017DF RID: 6111
|
||||
// (get) Token: 0x060095C8 RID: 38344 RVA: 0x001ECA24 File Offset: 0x001EAC24
|
||||
// (set) Token: 0x060095C9 RID: 38345 RVA: 0x001ECA38 File Offset: 0x001EAC38
|
||||
[Token(Token = "0x170017DF")]
|
||||
public int RedirectCount
|
||||
{
|
||||
[Token(Token = "0x60095C8")]
|
||||
[Address(RVA = "0x5672E0", Offset = "0x5660E0", VA = "0x1805672E0")]
|
||||
get;
|
||||
[Token(Token = "0x60095C9")]
|
||||
[Address(RVA = "0x5674F0", Offset = "0x5662F0", VA = "0x1805674F0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x060095CA RID: 38346 RVA: 0x001ECA4C File Offset: 0x001EAC4C
|
||||
[Token(Token = "0x60095CA")]
|
||||
[Address(RVA = "0x1C374D0", Offset = "0x1C362D0", VA = "0x181C374D0")]
|
||||
public HubConnection(Uri hubUri, IProtocol protocol)
|
||||
{
|
||||
HubOptions hubOptions = new HubOptions();
|
||||
hubOptions.<SkipNegotiation>k__BackingField = false;
|
||||
hubOptions.<PreferedTransport>k__BackingField = (TransportTypes)((ulong)0L);
|
||||
TimeSpan timeSpan;
|
||||
hubOptions.<PingInterval>k__BackingField = timeSpan;
|
||||
hubOptions.<MaxRedirects>k__BackingField = (int)((ulong)100L);
|
||||
}
|
||||
|
||||
// Token: 0x060095CB RID: 38347 RVA: 0x001ECA80 File Offset: 0x001EAC80
|
||||
[Token(Token = "0x60095CB")]
|
||||
[Address(RVA = "0x1C375B0", Offset = "0x1C363B0", VA = "0x181C375B0")]
|
||||
public HubConnection(Uri hubUri, IProtocol protocol, HubOptions options)
|
||||
{
|
||||
Dictionary<long, Action<Message>> dictionary = new Dictionary();
|
||||
this.invocations = dictionary;
|
||||
Dictionary<string, Subscription> dictionary2 = new Dictionary(StringComparer._ordinalIgnoreCase);
|
||||
this.subscriptions = dictionary2;
|
||||
base..ctor();
|
||||
int num = 0;
|
||||
this.Uri = hubUri;
|
||||
this.State = (ConnectionStates)num;
|
||||
this.Options = options;
|
||||
this.Protocol = protocol;
|
||||
num += num;
|
||||
num++;
|
||||
DefaultAccessTokenAuthenticator defaultAccessTokenAuthenticator;
|
||||
defaultAccessTokenAuthenticator.StartAuthentication();
|
||||
defaultAccessTokenAuthenticator._connection = this;
|
||||
this.AuthenticationProvider = defaultAccessTokenAuthenticator;
|
||||
}
|
||||
|
||||
// Token: 0x060095CC RID: 38348 RVA: 0x001ECAFC File Offset: 0x001EACFC
|
||||
[Token(Token = "0x60095CC")]
|
||||
[Address(RVA = "0x1C36D50", Offset = "0x1C35B50", VA = "0x181C36D50")]
|
||||
public void StartConnect()
|
||||
{
|
||||
ConnectionStates connectionStates = this.<State>k__BackingField;
|
||||
if (connectionStates != ConnectionStates.Initial && connectionStates != ConnectionStates.Redirected)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
ConnectionStates connectionStates2 = this.<State>k__BackingField;
|
||||
return;
|
||||
}
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
if (this.<AuthenticationProvider>k__BackingField != 0 && logger2 != 0)
|
||||
{
|
||||
ILogger logger3 = HTTPManager.Logger;
|
||||
int num = 0;
|
||||
this.SetState(ConnectionStates.Authenticating, num);
|
||||
IAuthenticationProvider authenticationProvider = this.<AuthenticationProvider>k__BackingField;
|
||||
OnAuthenticationSuccededDelegate onAuthenticationSuccededDelegate;
|
||||
onAuthenticationSuccededDelegate.method_ptr = ldftn(OnAuthenticationSucceded);
|
||||
onAuthenticationSuccededDelegate.method = ldftn(OnAuthenticationSucceded);
|
||||
onAuthenticationSuccededDelegate.m_target = this;
|
||||
IAuthenticationProvider authenticationProvider2 = this.<AuthenticationProvider>k__BackingField;
|
||||
OnAuthenticationFailedDelegate onAuthenticationFailedDelegate;
|
||||
onAuthenticationFailedDelegate.method_ptr = ldftn(OnAuthenticationFailed);
|
||||
onAuthenticationFailedDelegate.method = ldftn(OnAuthenticationFailed);
|
||||
onAuthenticationFailedDelegate.m_target = this;
|
||||
IAuthenticationProvider authenticationProvider3 = this.<AuthenticationProvider>k__BackingField;
|
||||
return;
|
||||
}
|
||||
this.StartNegotiation();
|
||||
}
|
||||
|
||||
// Token: 0x060095CD RID: 38349 RVA: 0x001ECBC4 File Offset: 0x001EADC4
|
||||
[Token(Token = "0x60095CD")]
|
||||
[Address(RVA = "0x1C35190", Offset = "0x1C33F90", VA = "0x181C35190")]
|
||||
private void OnAuthenticationSucceded(IAuthenticationProvider provider)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
IAuthenticationProvider authenticationProvider = this.<AuthenticationProvider>k__BackingField;
|
||||
OnAuthenticationSuccededDelegate onAuthenticationSuccededDelegate;
|
||||
onAuthenticationSuccededDelegate.method_ptr = ldftn(OnAuthenticationSucceded);
|
||||
onAuthenticationSuccededDelegate.method = ldftn(OnAuthenticationSucceded);
|
||||
onAuthenticationSuccededDelegate.m_target = this;
|
||||
IAuthenticationProvider authenticationProvider2 = this.<AuthenticationProvider>k__BackingField;
|
||||
OnAuthenticationFailedDelegate onAuthenticationFailedDelegate;
|
||||
onAuthenticationFailedDelegate.method_ptr = ldftn(OnAuthenticationFailed);
|
||||
onAuthenticationFailedDelegate.method = ldftn(OnAuthenticationFailed);
|
||||
onAuthenticationFailedDelegate.m_target = this;
|
||||
this.StartNegotiation();
|
||||
}
|
||||
|
||||
// Token: 0x060095CE RID: 38350 RVA: 0x001ECC38 File Offset: 0x001EAE38
|
||||
[Token(Token = "0x60095CE")]
|
||||
[Address(RVA = "0x1C35050", Offset = "0x1C33E50", VA = "0x181C35050")]
|
||||
private void OnAuthenticationFailed(IAuthenticationProvider provider, string reason)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string text = "OnAuthenticationFailed: " + reason;
|
||||
IAuthenticationProvider authenticationProvider = this.<AuthenticationProvider>k__BackingField;
|
||||
OnAuthenticationSuccededDelegate onAuthenticationSuccededDelegate;
|
||||
onAuthenticationSuccededDelegate.method_ptr = ldftn(OnAuthenticationSucceded);
|
||||
onAuthenticationSuccededDelegate.method = ldftn(OnAuthenticationSucceded);
|
||||
onAuthenticationSuccededDelegate.m_target = this;
|
||||
IAuthenticationProvider authenticationProvider2 = this.<AuthenticationProvider>k__BackingField;
|
||||
OnAuthenticationFailedDelegate onAuthenticationFailedDelegate;
|
||||
onAuthenticationFailedDelegate.method_ptr = ldftn(OnAuthenticationFailed);
|
||||
onAuthenticationFailedDelegate.method = ldftn(OnAuthenticationFailed);
|
||||
onAuthenticationFailedDelegate.m_target = this;
|
||||
this.SetState(ConnectionStates.Closed, reason);
|
||||
}
|
||||
|
||||
// Token: 0x060095CF RID: 38351 RVA: 0x001ECCBC File Offset: 0x001EAEBC
|
||||
[Token(Token = "0x60095CF")]
|
||||
[Address(RVA = "0x1C37010", Offset = "0x1C35E10", VA = "0x181C37010")]
|
||||
private void StartNegotiation()
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
if (this.<State>k__BackingField != ConnectionStates.CloseInitiated)
|
||||
{
|
||||
if (!this.<Options>k__BackingField.<SkipNegotiation>k__BackingField)
|
||||
{
|
||||
int num = 0;
|
||||
this.SetState(ConnectionStates.Negotiating, num);
|
||||
UriBuilder uriBuilder = new UriBuilder(this.<Uri>k__BackingField);
|
||||
if (!uriBuilder._path.EndsWith("/"))
|
||||
{
|
||||
string text = uriBuilder._path + "/";
|
||||
uriBuilder.Path = text;
|
||||
}
|
||||
string text2 = uriBuilder._path + "negotiate";
|
||||
uriBuilder.Path = text2;
|
||||
Uri uri = uriBuilder.Uri;
|
||||
Action<NEBIGEDJGPP, HOOILIHKMEG> action = new Action(this.OnNegotiationRequestFinished);
|
||||
int num2 = 0;
|
||||
if (this.<AuthenticationProvider>k__BackingField != 0 && num2 < uri)
|
||||
{
|
||||
num2 += num2;
|
||||
num2++;
|
||||
}
|
||||
NEBIGEDJGPP nebigedjgpp;
|
||||
nebigedjgpp.GDOIHJPIPBM();
|
||||
return;
|
||||
}
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
this.ConnectImpl();
|
||||
}
|
||||
int num3 = 0;
|
||||
this.SetState(ConnectionStates.Closed, num3);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060095D0 RID: 38352 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60095D0")]
|
||||
[Address(RVA = "0x1C34AB0", Offset = "0x1C338B0", VA = "0x181C34AB0")]
|
||||
private void ConnectImpl()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060095D1 RID: 38353 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60095D1")]
|
||||
[Address(RVA = "0x1C34F60", Offset = "0x1C33D60", VA = "0x181C34F60")]
|
||||
private bool IsTransportSupported(string transportName)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060095D2 RID: 38354 RVA: 0x001ECDC4 File Offset: 0x001EAFC4
|
||||
[Token(Token = "0x60095D2")]
|
||||
[Address(RVA = "0x1C359B0", Offset = "0x1C347B0", VA = "0x181C359B0")]
|
||||
private void OnNegotiationRequestFinished(NEBIGEDJGPP req, HOOILIHKMEG resp)
|
||||
{
|
||||
while (this.<State>k__BackingField != ConnectionStates.CloseInitiated)
|
||||
{
|
||||
string text = req.GLGCGFDLEJE();
|
||||
if (text == 0)
|
||||
{
|
||||
if (!resp.HIOBKPKOMLL)
|
||||
{
|
||||
int num = resp.LLODNIOIDKE;
|
||||
string text2 = resp.DFPPNHINEFO;
|
||||
string text3 = resp.DKPCLPHKFDI;
|
||||
int num2;
|
||||
string text4 = string.Format("Negotiation Request Finished Successfully, but the server sent an error. Status Code: {0}-{1} Message: {2}", num2, text2, text3);
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string text5 = resp.DKPCLPHKFDI;
|
||||
string text6 = "Negotiation Request Finished Successfully! Response: " + text5;
|
||||
int num3 = 0;
|
||||
NegotiationResult negotiationResult = NegotiationResult.Parse(resp.DKPCLPHKFDI, num3, this);
|
||||
this.<NegotiationResult>k__BackingField = negotiationResult;
|
||||
if (negotiationResult == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
Uri <Url>k__BackingField = this.<NegotiationResult>k__BackingField.<Url>k__BackingField;
|
||||
int num4 = 0;
|
||||
if (!(<Url>k__BackingField != num4))
|
||||
{
|
||||
this.ConnectImpl();
|
||||
}
|
||||
int num5 = 0;
|
||||
this.SetState(ConnectionStates.Redirected, num5);
|
||||
int num6 = this.<RedirectCount>k__BackingField;
|
||||
num6++;
|
||||
this.<RedirectCount>k__BackingField = num6;
|
||||
HubOptions hubOptions = this.<Options>k__BackingField;
|
||||
int <MaxRedirects>k__BackingField = hubOptions.<MaxRedirects>k__BackingField;
|
||||
if (num6 < <MaxRedirects>k__BackingField)
|
||||
{
|
||||
Uri uri = this.<Uri>k__BackingField;
|
||||
NegotiationResult negotiationResult2 = this.<NegotiationResult>k__BackingField;
|
||||
Uri <Url>k__BackingField2 = negotiationResult2.<Url>k__BackingField;
|
||||
this.<Uri>k__BackingField = <Url>k__BackingField2;
|
||||
if (!string.IsNullOrEmpty(negotiationResult2.<AccessToken>k__BackingField))
|
||||
{
|
||||
string <AccessToken>k__BackingField = this.<NegotiationResult>k__BackingField.<AccessToken>k__BackingField;
|
||||
BearerTokenAuthProvider bearerTokenAuthProvider;
|
||||
bearerTokenAuthProvider.StartAuthentication();
|
||||
bearerTokenAuthProvider.accessToken = <AccessToken>k__BackingField;
|
||||
this.<AuthenticationProvider>k__BackingField = bearerTokenAuthProvider;
|
||||
}
|
||||
if (this.OnRedirected != (ulong)0L)
|
||||
{
|
||||
Action<HubConnection, Uri, Uri> onRedirected = this.OnRedirected;
|
||||
Uri uri2 = this.<Uri>k__BackingField;
|
||||
onRedirected(this, uri, uri2);
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
}
|
||||
this.StartConnect();
|
||||
}
|
||||
string text7 = string.Format("MaxRedirects ({0:N0}) reached!", hubOptions);
|
||||
}
|
||||
if ("Negotiation Request: " + text != 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
return;
|
||||
}
|
||||
int num7 = 0;
|
||||
this.SetState(ConnectionStates.Closed, num7);
|
||||
}
|
||||
|
||||
// Token: 0x060095D3 RID: 38355 RVA: 0x001ECF7C File Offset: 0x001EB17C
|
||||
[Token(Token = "0x60095D3")]
|
||||
[Address(RVA = "0x1C36C90", Offset = "0x1C35A90", VA = "0x181C36C90")]
|
||||
public void StartClose()
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
int num = 0;
|
||||
this.SetState(ConnectionStates.CloseInitiated, num);
|
||||
if (this.<Transport>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060095D4 RID: 38356 RVA: 0x001ECFAC File Offset: 0x001EB1AC
|
||||
[Token(Token = "0x60095D4")]
|
||||
[Address(RVA = "0x1779D80", Offset = "0x1778B80", VA = "0x181779D80")]
|
||||
public IFuture<StreamItemContainer<TResult>> Stream<TResult>(string target, params object[] args)
|
||||
{
|
||||
Action<Message> action;
|
||||
ulong num2;
|
||||
long num = this.InvokeImp(target, args, action, num2 != 0UL);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060095D5 RID: 38357 RVA: 0x001ECFCC File Offset: 0x001EB1CC
|
||||
[Token(Token = "0x60095D5")]
|
||||
[Address(RVA = "0x1B557B0", Offset = "0x1B545B0", VA = "0x181B557B0")]
|
||||
public void CancelStream<T>(StreamItemContainer<T> container)
|
||||
{
|
||||
container.IsCanceled = true;
|
||||
}
|
||||
|
||||
// Token: 0x060095D6 RID: 38358 RVA: 0x001ECFEC File Offset: 0x001EB1EC
|
||||
[Token(Token = "0x60095D6")]
|
||||
[Address(RVA = "0x1779C50", Offset = "0x1778A50", VA = "0x181779C50")]
|
||||
public IFuture<TResult> Invoke<TResult>(string target, params object[] args)
|
||||
{
|
||||
Action<Message> action;
|
||||
ulong num2;
|
||||
long num = this.InvokeImp(target, args, action, num2 != 0UL);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060095D7 RID: 38359 RVA: 0x001ED00C File Offset: 0x001EB20C
|
||||
[Token(Token = "0x60095D7")]
|
||||
[Address(RVA = "0x1C36180", Offset = "0x1C34F80", VA = "0x181C36180")]
|
||||
public IFuture<bool> Send(string target, params object[] args)
|
||||
{
|
||||
Future<bool> future4 = new Future();
|
||||
Future<bool> future = future4;
|
||||
Action<Message> action = delegate(Message message)
|
||||
{
|
||||
int num2 = 0;
|
||||
Future<bool> future3 = future;
|
||||
Exception ex = new Exception(num2);
|
||||
future3.Fail(ex);
|
||||
};
|
||||
if (this.<State>k__BackingField == ConnectionStates.Connected && action != 0)
|
||||
{
|
||||
long num;
|
||||
this.invocations.Add(num, action);
|
||||
}
|
||||
Future<bool> future2 = future;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060095D8 RID: 38360 RVA: 0x001ED068 File Offset: 0x001EB268
|
||||
[Token(Token = "0x60095D8")]
|
||||
[Address(RVA = "0x1C34E00", Offset = "0x1C33C00", VA = "0x181C34E00")]
|
||||
private long InvokeImp(string target, object[] args, Action<Message> callback, bool isStreamingInvocation = false)
|
||||
{
|
||||
if (this.<State>k__BackingField == ConnectionStates.Connected && callback != 0)
|
||||
{
|
||||
long num;
|
||||
this.invocations.Add(num, callback);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060095D9 RID: 38361 RVA: 0x001ED098 File Offset: 0x001EB298
|
||||
[Token(Token = "0x60095D9")]
|
||||
[Address(RVA = "0x1C36040", Offset = "0x1C34E40", VA = "0x181C36040")]
|
||||
private void SendMessage(Message message)
|
||||
{
|
||||
IProtocol protocol = this.<Protocol>k__BackingField;
|
||||
int num = 0;
|
||||
num += num;
|
||||
num++;
|
||||
bool nonblocking = message.nonblocking;
|
||||
object[] arguments = message.arguments;
|
||||
object result = message.result;
|
||||
ITransport transport = this.<Transport>k__BackingField;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.lastMessageSent = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x060095DA RID: 38362 RVA: 0x001ED0EC File Offset: 0x001EB2EC
|
||||
[Token(Token = "0x60095DA")]
|
||||
[Address(RVA = "0x1C35D80", Offset = "0x1C34B80", VA = "0x181C35D80")]
|
||||
public void On(string methodName, Action callback)
|
||||
{
|
||||
Action<object[]> action = delegate(object[] args)
|
||||
{
|
||||
callback();
|
||||
};
|
||||
Dictionary<string, Subscription> dictionary = this.subscriptions;
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
Dictionary<string, Subscription> dictionary2 = this.subscriptions;
|
||||
List<CallbackDescriptor> list = new List(1);
|
||||
Subscription subscription;
|
||||
subscription.callbacks = list;
|
||||
dictionary2.Add(methodName, subscription);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060095DB RID: 38363 RVA: 0x001ED148 File Offset: 0x001EB348
|
||||
[Token(Token = "0x60095DB")]
|
||||
[Address(RVA = "0x1B55F30", Offset = "0x1B54D30", VA = "0x181B55F30")]
|
||||
public void On<T1>(string methodName, Action<T1> callback)
|
||||
{
|
||||
Type[] array = new Type[1];
|
||||
Type typeFromHandle = typeof(Type);
|
||||
if (typeFromHandle != 0)
|
||||
{
|
||||
}
|
||||
array[0] = typeFromHandle;
|
||||
Action<object[]> action;
|
||||
this.On(methodName, array, action);
|
||||
}
|
||||
|
||||
// Token: 0x060095DC RID: 38364 RVA: 0x001ED184 File Offset: 0x001EB384
|
||||
[Token(Token = "0x60095DC")]
|
||||
[Address(RVA = "0x1B55D50", Offset = "0x1B54B50", VA = "0x181B55D50")]
|
||||
public void On<T1, T2>(string methodName, Action<T1, T2> callback)
|
||||
{
|
||||
Type[] array = new Type[2];
|
||||
Type typeFromHandle = typeof(Type);
|
||||
if (typeFromHandle != 0)
|
||||
{
|
||||
}
|
||||
array[0] = typeFromHandle;
|
||||
Type type;
|
||||
if (type != 0)
|
||||
{
|
||||
}
|
||||
array[1] = type;
|
||||
Action<object[]> action;
|
||||
this.On(methodName, array, action);
|
||||
}
|
||||
|
||||
// Token: 0x060095DD RID: 38365 RVA: 0x001ED1CC File Offset: 0x001EB3CC
|
||||
[Token(Token = "0x60095DD")]
|
||||
[Address(RVA = "0x1B55B10", Offset = "0x1B54910", VA = "0x181B55B10")]
|
||||
public void On<T1, T2, T3>(string methodName, Action<T1, T2, T3> callback)
|
||||
{
|
||||
Type[] array = new Type[3];
|
||||
Type typeFromHandle = typeof(Type);
|
||||
if (typeFromHandle != 0)
|
||||
{
|
||||
}
|
||||
array[0] = typeFromHandle;
|
||||
Type type;
|
||||
if (type != 0)
|
||||
{
|
||||
}
|
||||
array[1] = type;
|
||||
Type type2;
|
||||
if (type2 != 0)
|
||||
{
|
||||
}
|
||||
array[2] = type2;
|
||||
Action<object[]> action;
|
||||
this.On(methodName, array, action);
|
||||
}
|
||||
|
||||
// Token: 0x060095DE RID: 38366 RVA: 0x001ED220 File Offset: 0x001EB420
|
||||
[Token(Token = "0x60095DE")]
|
||||
[Address(RVA = "0x1B55870", Offset = "0x1B54670", VA = "0x181B55870")]
|
||||
public void On<T1, T2, T3, T4>(string methodName, Action<T1, T2, T3, T4> callback)
|
||||
{
|
||||
Type[] array = new Type[4];
|
||||
Type typeFromHandle = typeof(Type);
|
||||
if (typeFromHandle != 0)
|
||||
{
|
||||
}
|
||||
array[0] = typeFromHandle;
|
||||
Type type;
|
||||
if (type != 0)
|
||||
{
|
||||
}
|
||||
array[1] = type;
|
||||
Type type2;
|
||||
if (type2 != 0)
|
||||
{
|
||||
}
|
||||
array[2] = type2;
|
||||
Type type3;
|
||||
if (type3 != 0)
|
||||
{
|
||||
}
|
||||
array[3] = type3;
|
||||
Action<object[]> action;
|
||||
this.On(methodName, array, action);
|
||||
}
|
||||
|
||||
// Token: 0x060095DF RID: 38367 RVA: 0x001ED284 File Offset: 0x001EB484
|
||||
[Token(Token = "0x60095DF")]
|
||||
[Address(RVA = "0x1C35F10", Offset = "0x1C34D10", VA = "0x181C35F10")]
|
||||
public void On(string methodName, Type[] paramTypes, Action<object[]> callback)
|
||||
{
|
||||
Dictionary<string, Subscription> dictionary = this.subscriptions;
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
Dictionary<string, Subscription> dictionary2 = this.subscriptions;
|
||||
List<CallbackDescriptor> list = new List(1);
|
||||
Subscription subscription;
|
||||
subscription.callbacks = list;
|
||||
dictionary2.Add(methodName, subscription);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060095E0 RID: 38368 RVA: 0x001ED2C4 File Offset: 0x001EB4C4
|
||||
[Token(Token = "0x60095E0")]
|
||||
[Address(RVA = "0x1C352B0", Offset = "0x1C340B0", VA = "0x181C352B0")]
|
||||
internal void OnMessages(List<Message> messages)
|
||||
{
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
bool flag;
|
||||
if (this.OnMessage == 0 || !flag)
|
||||
{
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
int num = 0;
|
||||
if (logger <= (ulong)6L)
|
||||
{
|
||||
Dictionary<string, Subscription> dictionary = this.subscriptions;
|
||||
bool flag2;
|
||||
if (flag2 && num < (flag2 ? 1 : 0))
|
||||
{
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
num += 2;
|
||||
num += num;
|
||||
IProtocol protocol = this.<Protocol>k__BackingField;
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
ILogger logger3 = HTTPManager.Logger;
|
||||
num++;
|
||||
bool flag3;
|
||||
if (flag3)
|
||||
{
|
||||
Dictionary<long, Action<Message>> dictionary2 = this.invocations;
|
||||
bool flag4;
|
||||
if (flag4)
|
||||
{
|
||||
ILogger logger4 = HTTPManager.Logger;
|
||||
bool flag5;
|
||||
if (flag5)
|
||||
{
|
||||
Dictionary<long, Action<Message>> dictionary3 = this.invocations;
|
||||
bool flag6;
|
||||
if (flag6)
|
||||
{
|
||||
ILogger logger5 = HTTPManager.Logger;
|
||||
}
|
||||
Dictionary<long, Action<Message>> dictionary4 = this.invocations;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060095E1 RID: 38369 RVA: 0x001ED39C File Offset: 0x001EB59C
|
||||
[Token(Token = "0x60095E1")]
|
||||
[Address(RVA = "0x1C372E0", Offset = "0x1C360E0", VA = "0x181C372E0")]
|
||||
private void Transport_OnStateChanged(TransportStates oldState, TransportStates newState)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
ILogger logger2 = logger;
|
||||
if (logger != 0)
|
||||
{
|
||||
if (logger != 0)
|
||||
{
|
||||
if (logger == 0)
|
||||
{
|
||||
ITransport transport = this.<Transport>k__BackingField;
|
||||
goto IL_2B;
|
||||
}
|
||||
if (logger2 == (ulong)1L)
|
||||
{
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
IL_2B:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060095E2 RID: 38370 RVA: 0x001ED3DC File Offset: 0x001EB5DC
|
||||
[Token(Token = "0x60095E2")]
|
||||
[Address(RVA = "0x1C36350", Offset = "0x1C35150", VA = "0x181C36350")]
|
||||
private void SetState(ConnectionStates state, [Optional] string errorReason)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string[] array = new string[7];
|
||||
if ("SetState - from State: '" != 0)
|
||||
{
|
||||
}
|
||||
array[0] = "SetState - from State: '";
|
||||
ConnectionStates connectionStates;
|
||||
int num = connectionStates.GetHashCode();
|
||||
if (num != 0)
|
||||
{
|
||||
}
|
||||
array[1] = num;
|
||||
if ("' to State: '" != 0)
|
||||
{
|
||||
}
|
||||
array[2] = "' to State: '";
|
||||
int num2;
|
||||
num = num2;
|
||||
if (num != 0)
|
||||
{
|
||||
}
|
||||
array[3] = num;
|
||||
if ("' errorReason: '" != 0)
|
||||
{
|
||||
}
|
||||
array[4] = "' errorReason: '";
|
||||
if (errorReason != 0)
|
||||
{
|
||||
}
|
||||
array[5] = errorReason;
|
||||
if ("'" != 0)
|
||||
{
|
||||
}
|
||||
array[6] = "'";
|
||||
string text = string.Concat(array);
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
string[] array2 = new string[5];
|
||||
if ("SetState - from State: '" != 0)
|
||||
{
|
||||
}
|
||||
array2[0] = "SetState - from State: '";
|
||||
ConnectionStates connectionStates2;
|
||||
int num3 = connectionStates2.GetHashCode();
|
||||
if (num3 != 0)
|
||||
{
|
||||
}
|
||||
array2[1] = num3;
|
||||
if ("' to State: '" != 0)
|
||||
{
|
||||
}
|
||||
array2[2] = "' to State: '";
|
||||
int num4;
|
||||
num3 = num4;
|
||||
if (num3 != 0)
|
||||
{
|
||||
}
|
||||
array2[3] = num3;
|
||||
if ("'" != 0)
|
||||
{
|
||||
}
|
||||
array2[4] = "'";
|
||||
string text2 = string.Concat(array2);
|
||||
if (this.<State>k__BackingField != text2)
|
||||
{
|
||||
this.<State>k__BackingField = text2;
|
||||
if (text2 <= (ulong)6L)
|
||||
{
|
||||
Action<HubConnection> onConnected = this.OnConnected;
|
||||
if (onConnected != 0)
|
||||
{
|
||||
onConnected(this);
|
||||
}
|
||||
ILogger logger3 = HTTPManager.Logger;
|
||||
HTTPManager.Heartbeats.Subscribe(this);
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.lastMessageSent = utcNow;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060095E3 RID: 38371 RVA: 0x001ED5C0 File Offset: 0x001EB7C0
|
||||
[Token(Token = "0x60095E3")]
|
||||
[Address(RVA = "0x1C34900", Offset = "0x1C33700", VA = "0x181C34900", Slot = "4")]
|
||||
void IHeartbeat.OnHeartbeatUpdate(TimeSpan dif)
|
||||
{
|
||||
if (this.<State>k__BackingField == ConnectionStates.Connected)
|
||||
{
|
||||
TimeSpan <PingInterval>k__BackingField = this.<Options>k__BackingField.<PingInterval>k__BackingField;
|
||||
TimeSpan zero = TimeSpan.Zero;
|
||||
if (<PingInterval>k__BackingField != zero)
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
DateTime dateTime = this.lastMessageSent;
|
||||
TimeSpan timeSpan = utcNow - dateTime;
|
||||
TimeSpan <PingInterval>k__BackingField2 = this.<Options>k__BackingField.<PingInterval>k__BackingField;
|
||||
if (timeSpan >= <PingInterval>k__BackingField2)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0400662A RID: 26154
|
||||
[Token(Token = "0x400662A")]
|
||||
public static readonly object[] EmptyArgs = new object[0];
|
||||
|
||||
// Token: 0x04006638 RID: 26168
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x4006638")]
|
||||
private long lastInvocationId;
|
||||
|
||||
// Token: 0x04006639 RID: 26169
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x4006639")]
|
||||
private Dictionary<long, Action<Message>> invocations;
|
||||
|
||||
// Token: 0x0400663A RID: 26170
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x400663A")]
|
||||
private Dictionary<string, Subscription> subscriptions;
|
||||
|
||||
// Token: 0x0400663B RID: 26171
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x90")]
|
||||
[Token(Token = "0x400663B")]
|
||||
private DateTime lastMessageSent;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018DE RID: 6366
|
||||
[Token(Token = "0x20018DE")]
|
||||
public sealed class HubOptions
|
||||
{
|
||||
// Token: 0x170017D4 RID: 6100
|
||||
// (get) Token: 0x060095A7 RID: 38311 RVA: 0x001EC6A8 File Offset: 0x001EA8A8
|
||||
// (set) Token: 0x060095A8 RID: 38312 RVA: 0x001EC6BC File Offset: 0x001EA8BC
|
||||
[Token(Token = "0x170017D4")]
|
||||
public bool SkipNegotiation
|
||||
{
|
||||
[Token(Token = "0x60095A7")]
|
||||
[Address(RVA = "0x42D5E0", Offset = "0x42C3E0", VA = "0x18042D5E0")]
|
||||
get;
|
||||
[Token(Token = "0x60095A8")]
|
||||
[Address(RVA = "0x495D50", Offset = "0x494B50", VA = "0x180495D50")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D5 RID: 6101
|
||||
// (get) Token: 0x060095A9 RID: 38313 RVA: 0x001EC6D0 File Offset: 0x001EA8D0
|
||||
// (set) Token: 0x060095AA RID: 38314 RVA: 0x001EC6E4 File Offset: 0x001EA8E4
|
||||
[Token(Token = "0x170017D5")]
|
||||
public TransportTypes PreferedTransport
|
||||
{
|
||||
[Token(Token = "0x60095A9")]
|
||||
[Address(RVA = "0x495080", Offset = "0x493E80", VA = "0x180495080")]
|
||||
get;
|
||||
[Token(Token = "0x60095AA")]
|
||||
[Address(RVA = "0x52EC20", Offset = "0x52DA20", VA = "0x18052EC20")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D6 RID: 6102
|
||||
// (get) Token: 0x060095AB RID: 38315 RVA: 0x001EC6F8 File Offset: 0x001EA8F8
|
||||
// (set) Token: 0x060095AC RID: 38316 RVA: 0x001EC70C File Offset: 0x001EA90C
|
||||
[Token(Token = "0x170017D6")]
|
||||
public TimeSpan PingInterval
|
||||
{
|
||||
[Token(Token = "0x60095AB")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x60095AC")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D7 RID: 6103
|
||||
// (get) Token: 0x060095AD RID: 38317 RVA: 0x001EC720 File Offset: 0x001EA920
|
||||
// (set) Token: 0x060095AE RID: 38318 RVA: 0x001EC734 File Offset: 0x001EA934
|
||||
[Token(Token = "0x170017D7")]
|
||||
public int MaxRedirects
|
||||
{
|
||||
[Token(Token = "0x60095AD")]
|
||||
[Address(RVA = "0x3F7310", Offset = "0x3F6110", VA = "0x1803F7310")]
|
||||
get;
|
||||
[Token(Token = "0x60095AE")]
|
||||
[Address(RVA = "0x420360", Offset = "0x41F160", VA = "0x180420360")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x060095AF RID: 38319 RVA: 0x001EC748 File Offset: 0x001EA948
|
||||
[Token(Token = "0x60095AF")]
|
||||
[Address(RVA = "0x1C37DD0", Offset = "0x1C36BD0", VA = "0x181C37DD0")]
|
||||
public HubOptions()
|
||||
{
|
||||
this.SkipNegotiation = false;
|
||||
this.PreferedTransport = (TransportTypes)((ulong)0L);
|
||||
TimeSpan timeSpan;
|
||||
this.PingInterval = timeSpan;
|
||||
this.MaxRedirects = (int)((ulong)100L);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using BestHTTP.WebSocket;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018EA RID: 6378
|
||||
[Token(Token = "0x20018EA")]
|
||||
public interface IAuthenticationProvider
|
||||
{
|
||||
// Token: 0x170017E0 RID: 6112
|
||||
// (get) Token: 0x060095FD RID: 38397
|
||||
[Token(Token = "0x170017E0")]
|
||||
bool IsPreAuthRequired
|
||||
{
|
||||
[Token(Token = "0x60095FD")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x140000C7 RID: 199
|
||||
// (add) Token: 0x060095FE RID: 38398
|
||||
// (remove) Token: 0x060095FF RID: 38399
|
||||
[Token(Token = "0x140000C7")]
|
||||
event OnAuthenticationSuccededDelegate OnAuthenticationSucceded;
|
||||
|
||||
// Token: 0x140000C8 RID: 200
|
||||
// (add) Token: 0x06009600 RID: 38400
|
||||
// (remove) Token: 0x06009601 RID: 38401
|
||||
[Token(Token = "0x140000C8")]
|
||||
event OnAuthenticationFailedDelegate OnAuthenticationFailed;
|
||||
|
||||
// Token: 0x06009602 RID: 38402
|
||||
[Token(Token = "0x6009602")]
|
||||
[Address(Slot = "5")]
|
||||
void StartAuthentication();
|
||||
|
||||
// Token: 0x06009603 RID: 38403
|
||||
[Token(Token = "0x6009603")]
|
||||
[Address(Slot = "6")]
|
||||
void PrepareRequest(NEBIGEDJGPP request);
|
||||
|
||||
// Token: 0x06009604 RID: 38404
|
||||
[Token(Token = "0x6009604")]
|
||||
[Address(Slot = "7")]
|
||||
void PrepareWebSocket(WebSocket webSocket);
|
||||
|
||||
// Token: 0x06009605 RID: 38405
|
||||
[Token(Token = "0x6009605")]
|
||||
[Address(Slot = "8")]
|
||||
Uri PrepareUri(Uri uri);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018DA RID: 6362
|
||||
[Token(Token = "0x20018DA")]
|
||||
public interface IEncoder
|
||||
{
|
||||
// Token: 0x170017D1 RID: 6097
|
||||
// (get) Token: 0x06009597 RID: 38295
|
||||
[Token(Token = "0x170017D1")]
|
||||
string Name
|
||||
{
|
||||
[Token(Token = "0x6009597")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x06009598 RID: 38296
|
||||
[Token(Token = "0x6009598")]
|
||||
[Address(Slot = "1")]
|
||||
string EncodeAsText<T>(T value);
|
||||
|
||||
// Token: 0x06009599 RID: 38297
|
||||
[Token(Token = "0x6009599")]
|
||||
[Address(Slot = "2")]
|
||||
T DecodeAs<T>(string text);
|
||||
|
||||
// Token: 0x0600959A RID: 38298
|
||||
[Token(Token = "0x600959A")]
|
||||
[Address(Slot = "3")]
|
||||
byte[] EncodeAsBinary<T>(T value);
|
||||
|
||||
// Token: 0x0600959B RID: 38299
|
||||
[Token(Token = "0x600959B")]
|
||||
[Address(Slot = "4")]
|
||||
T DecodeAs<T>(byte[] data);
|
||||
|
||||
// Token: 0x0600959C RID: 38300
|
||||
[Token(Token = "0x600959C")]
|
||||
[Address(Slot = "5")]
|
||||
object ConvertTo(Type toType, object obj);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BestHTTP.SignalRCore.Messages;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018EB RID: 6379
|
||||
[Token(Token = "0x20018EB")]
|
||||
public interface IProtocol
|
||||
{
|
||||
// Token: 0x170017E1 RID: 6113
|
||||
// (get) Token: 0x06009606 RID: 38406
|
||||
[Token(Token = "0x170017E1")]
|
||||
TransferModes Type
|
||||
{
|
||||
[Token(Token = "0x6009606")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x170017E2 RID: 6114
|
||||
// (get) Token: 0x06009607 RID: 38407
|
||||
[Token(Token = "0x170017E2")]
|
||||
IEncoder Encoder
|
||||
{
|
||||
[Token(Token = "0x6009607")]
|
||||
[Address(Slot = "1")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x170017E3 RID: 6115
|
||||
// (get) Token: 0x06009608 RID: 38408
|
||||
// (set) Token: 0x06009609 RID: 38409
|
||||
[Token(Token = "0x170017E3")]
|
||||
HubConnection Connection
|
||||
{
|
||||
[Token(Token = "0x6009608")]
|
||||
[Address(Slot = "2")]
|
||||
get;
|
||||
[Token(Token = "0x6009609")]
|
||||
[Address(Slot = "3")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600960A RID: 38410
|
||||
[Token(Token = "0x600960A")]
|
||||
[Address(Slot = "4")]
|
||||
void ParseMessages(string data, ref List<Message> messages);
|
||||
|
||||
// Token: 0x0600960B RID: 38411
|
||||
[Token(Token = "0x600960B")]
|
||||
[Address(Slot = "5")]
|
||||
void ParseMessages(byte[] data, ref List<Message> messages);
|
||||
|
||||
// Token: 0x0600960C RID: 38412
|
||||
[Token(Token = "0x600960C")]
|
||||
[Address(Slot = "6")]
|
||||
byte[] EncodeMessage(Message message);
|
||||
|
||||
// Token: 0x0600960D RID: 38413
|
||||
[Token(Token = "0x600960D")]
|
||||
[Address(Slot = "7")]
|
||||
object[] GetRealArguments(Type[] argTypes, object[] arguments);
|
||||
|
||||
// Token: 0x0600960E RID: 38414
|
||||
[Token(Token = "0x600960E")]
|
||||
[Address(Slot = "8")]
|
||||
object ConvertTo(Type toType, object obj);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018D9 RID: 6361
|
||||
[Token(Token = "0x20018D9")]
|
||||
public interface ITransport
|
||||
{
|
||||
// Token: 0x170017CD RID: 6093
|
||||
// (get) Token: 0x0600958E RID: 38286
|
||||
[Token(Token = "0x170017CD")]
|
||||
TransferModes TransferMode
|
||||
{
|
||||
[Token(Token = "0x600958E")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x170017CE RID: 6094
|
||||
// (get) Token: 0x0600958F RID: 38287
|
||||
[Token(Token = "0x170017CE")]
|
||||
TransportTypes TransportType
|
||||
{
|
||||
[Token(Token = "0x600958F")]
|
||||
[Address(Slot = "1")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x170017CF RID: 6095
|
||||
// (get) Token: 0x06009590 RID: 38288
|
||||
[Token(Token = "0x170017CF")]
|
||||
TransportStates State
|
||||
{
|
||||
[Token(Token = "0x6009590")]
|
||||
[Address(Slot = "2")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x170017D0 RID: 6096
|
||||
// (get) Token: 0x06009591 RID: 38289
|
||||
[Token(Token = "0x170017D0")]
|
||||
string ErrorReason
|
||||
{
|
||||
[Token(Token = "0x6009591")]
|
||||
[Address(Slot = "3")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x140000C1 RID: 193
|
||||
// (add) Token: 0x06009592 RID: 38290
|
||||
// (remove) Token: 0x06009593 RID: 38291
|
||||
[Token(Token = "0x140000C1")]
|
||||
event Action<TransportStates, TransportStates> OnStateChanged;
|
||||
|
||||
// Token: 0x06009594 RID: 38292
|
||||
[Token(Token = "0x6009594")]
|
||||
[Address(Slot = "6")]
|
||||
void StartConnect();
|
||||
|
||||
// Token: 0x06009595 RID: 38293
|
||||
[Token(Token = "0x6009595")]
|
||||
[Address(Slot = "7")]
|
||||
void StartClose();
|
||||
|
||||
// Token: 0x06009596 RID: 38294
|
||||
[Token(Token = "0x6009596")]
|
||||
[Address(Slot = "8")]
|
||||
void Send(byte[] msg);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,177 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using BestHTTP.SignalRCore.Messages;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018EC RID: 6380
|
||||
[Token(Token = "0x20018EC")]
|
||||
public sealed class JsonProtocol : IProtocol
|
||||
{
|
||||
// Token: 0x170017E4 RID: 6116
|
||||
// (get) Token: 0x0600960F RID: 38415 RVA: 0x001EDAF0 File Offset: 0x001EBCF0
|
||||
[Token(Token = "0x170017E4")]
|
||||
public TransferModes Type
|
||||
{
|
||||
[Token(Token = "0x600960F")]
|
||||
[Address(RVA = "0x4100E0", Offset = "0x40EEE0", VA = "0x1804100E0", Slot = "4")]
|
||||
get
|
||||
{
|
||||
return TransferModes.Text;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017E5 RID: 6117
|
||||
// (get) Token: 0x06009610 RID: 38416 RVA: 0x001EDB00 File Offset: 0x001EBD00
|
||||
// (set) Token: 0x06009611 RID: 38417 RVA: 0x001EDB14 File Offset: 0x001EBD14
|
||||
[Token(Token = "0x170017E5")]
|
||||
public IEncoder Encoder
|
||||
{
|
||||
[Token(Token = "0x6009610")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20", Slot = "5")]
|
||||
get;
|
||||
[Token(Token = "0x6009611")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E6 RID: 6118
|
||||
// (get) Token: 0x06009612 RID: 38418 RVA: 0x001EDB28 File Offset: 0x001EBD28
|
||||
// (set) Token: 0x06009613 RID: 38419 RVA: 0x001EDB3C File Offset: 0x001EBD3C
|
||||
[Token(Token = "0x170017E6")]
|
||||
public HubConnection Connection
|
||||
{
|
||||
[Token(Token = "0x6009612")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40", Slot = "6")]
|
||||
get;
|
||||
[Token(Token = "0x6009613")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210", Slot = "7")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x06009614 RID: 38420 RVA: 0x001EDB50 File Offset: 0x001EBD50
|
||||
[Token(Token = "0x6009614")]
|
||||
[Address(RVA = "0x1C38880", Offset = "0x1C37680", VA = "0x181C38880")]
|
||||
public JsonProtocol(IEncoder encoder)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009614)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SignalRCore.JsonProtocol::.ctor(BestHTTP.SignalRCore.IEncoder)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_25:
|
||||
stloc:ArgumentException(var_1_2F, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Encoder must be a json encoder!")))
|
||||
}
|
||||
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
||||
--- End of inner exception stack trace ---
|
||||
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
||||
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
|
||||
*/;
|
||||
}
|
||||
|
||||
// Token: 0x06009615 RID: 38421 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009615")]
|
||||
[Address(RVA = "0x1C38590", Offset = "0x1C37390", VA = "0x181C38590", Slot = "8")]
|
||||
public void ParseMessages(string data, ref List<Message> messages)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009616 RID: 38422 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009616")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "9")]
|
||||
public void ParseMessages(byte[] data, ref List<Message> messages)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009617 RID: 38423 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009617")]
|
||||
[Address(RVA = "0x1C38060", Offset = "0x1C36E60", VA = "0x181C38060", Slot = "10")]
|
||||
public byte[] EncodeMessage(Message message)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009618 RID: 38424 RVA: 0x001EDB8C File Offset: 0x001EBD8C
|
||||
[Token(Token = "0x6009618")]
|
||||
[Address(RVA = "0x1C383B0", Offset = "0x1C371B0", VA = "0x181C383B0", Slot = "11")]
|
||||
public object[] GetRealArguments(Type[] argTypes, object[] arguments)
|
||||
{
|
||||
if (arguments != 0)
|
||||
{
|
||||
int length = arguments.Length;
|
||||
if (length != 0)
|
||||
{
|
||||
object[] array = new object[length];
|
||||
int num = 0;
|
||||
int length2 = arguments.Length;
|
||||
if (num < length2)
|
||||
{
|
||||
object obj = arguments[num];
|
||||
Type type = argTypes[num];
|
||||
object obj2 = this.ConvertTo(type, obj);
|
||||
if (obj2 != 0)
|
||||
{
|
||||
}
|
||||
array[0] = obj2;
|
||||
num++;
|
||||
}
|
||||
return array;
|
||||
}
|
||||
}
|
||||
throw new ArrayTypeMismatchException();
|
||||
}
|
||||
|
||||
// Token: 0x06009619 RID: 38425 RVA: 0x001EDBF8 File Offset: 0x001EBDF8
|
||||
[Token(Token = "0x6009619")]
|
||||
[Address(RVA = "0x1C37EB0", Offset = "0x1C36CB0", VA = "0x181C37EB0", Slot = "12")]
|
||||
public object ConvertTo(Type toType, object obj)
|
||||
{
|
||||
if (obj != 0)
|
||||
{
|
||||
if (!toType.IsPrimitive && !toType.IsSealed)
|
||||
{
|
||||
Type typeFromHandle = typeof(string);
|
||||
int num = 0;
|
||||
if (!toType.Equals(typeFromHandle))
|
||||
{
|
||||
IEncoder encoder = this.<Encoder>k__BackingField;
|
||||
int num2 = 0;
|
||||
if (num2 < num)
|
||||
{
|
||||
num2 += num2;
|
||||
num2++;
|
||||
}
|
||||
}
|
||||
int hashCode = obj.GetHashCode();
|
||||
}
|
||||
object obj2 = Convert.ChangeType(obj, toType);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600961A RID: 38426 RVA: 0x001EDC60 File Offset: 0x001EBE60
|
||||
[Token(Token = "0x600961A")]
|
||||
[Address(RVA = "0x1C38790", Offset = "0x1C37590", VA = "0x181C38790")]
|
||||
public static byte[] WithSeparator(string str)
|
||||
{
|
||||
object obj = Encoding.UTF8.Clone();
|
||||
byte[] array = new byte[str];
|
||||
byte[] bytes = Encoding.UTF8.GetBytes(str);
|
||||
return array;
|
||||
}
|
||||
|
||||
// Token: 0x04006646 RID: 26182
|
||||
[Token(Token = "0x4006646")]
|
||||
public const char Separator = '\u001e';
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Messages
|
||||
{
|
||||
// Token: 0x020018F1 RID: 6385
|
||||
[Token(Token = "0x20018F1")]
|
||||
public struct CancelInvocationMessage
|
||||
{
|
||||
// Token: 0x170017EC RID: 6124
|
||||
// (get) Token: 0x0600963E RID: 38462 RVA: 0x001EE77C File Offset: 0x001EC97C
|
||||
[Token(Token = "0x170017EC")]
|
||||
public MessageTypes type
|
||||
{
|
||||
[Token(Token = "0x600963E")]
|
||||
[Address(RVA = "0x46C990", Offset = "0x46B790", VA = "0x18046C990")]
|
||||
get
|
||||
{
|
||||
return MessageTypes.CancelInvocation;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0400665B RID: 26203
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400665B")]
|
||||
public string invocationId;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Messages
|
||||
{
|
||||
// Token: 0x020018F0 RID: 6384
|
||||
[Token(Token = "0x20018F0")]
|
||||
public struct InvocationMessage
|
||||
{
|
||||
// Token: 0x04006656 RID: 26198
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4006656")]
|
||||
public MessageTypes type;
|
||||
|
||||
// Token: 0x04006657 RID: 26199
|
||||
[FieldOffset(Offset = "0x8")]
|
||||
[Token(Token = "0x4006657")]
|
||||
public string invocationId;
|
||||
|
||||
// Token: 0x04006658 RID: 26200
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4006658")]
|
||||
public bool nonblocking;
|
||||
|
||||
// Token: 0x04006659 RID: 26201
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4006659")]
|
||||
public string target;
|
||||
|
||||
// Token: 0x0400665A RID: 26202
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400665A")]
|
||||
public object[] arguments;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Messages
|
||||
{
|
||||
// Token: 0x020018F4 RID: 6388
|
||||
[Token(Token = "0x20018F4")]
|
||||
public struct Message
|
||||
{
|
||||
// Token: 0x06009640 RID: 38464 RVA: 0x001EE79C File Offset: 0x001EC99C
|
||||
[Token(Token = "0x6009640")]
|
||||
[Address(RVA = "0x1C38ED0", Offset = "0x1C37CD0", VA = "0x181C38ED0", Slot = "3")]
|
||||
public override string ToString()
|
||||
{
|
||||
object[] array = this.arguments;
|
||||
string text = this.target;
|
||||
string text2 = this.invocationId;
|
||||
if (array != 0)
|
||||
{
|
||||
}
|
||||
int num;
|
||||
string text3 = string.Format("[Invocation Id: {0}, Target: '{1}', Argument count: {2}]", text2, text, num);
|
||||
object obj = this.item;
|
||||
string text4 = this.invocationId;
|
||||
int hashCode = obj.GetHashCode();
|
||||
string text5 = string.Format("[StreamItem Id: {0}, Item: {1}]", text4, hashCode);
|
||||
string text6 = this.error;
|
||||
object obj2 = this.result;
|
||||
string text7 = this.invocationId;
|
||||
string text8 = string.Format("[Completion Id: {0}, Result: {1}, Error: '{2}']", text7, obj2, text6);
|
||||
string text9 = this.invocationId;
|
||||
string text10 = string.Format("[CancelInvocation Id: {0}]", text9);
|
||||
string text11 = this.error;
|
||||
if ("[Ping]" != 0)
|
||||
{
|
||||
}
|
||||
string text12 = this.error;
|
||||
string text13 = string.Format("[Close {0}]", text12);
|
||||
string text14;
|
||||
return text14;
|
||||
}
|
||||
|
||||
// Token: 0x04006665 RID: 26213
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4006665")]
|
||||
public MessageTypes type;
|
||||
|
||||
// Token: 0x04006666 RID: 26214
|
||||
[FieldOffset(Offset = "0x8")]
|
||||
[Token(Token = "0x4006666")]
|
||||
public string invocationId;
|
||||
|
||||
// Token: 0x04006667 RID: 26215
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4006667")]
|
||||
public bool nonblocking;
|
||||
|
||||
// Token: 0x04006668 RID: 26216
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4006668")]
|
||||
public string target;
|
||||
|
||||
// Token: 0x04006669 RID: 26217
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4006669")]
|
||||
public object[] arguments;
|
||||
|
||||
// Token: 0x0400666A RID: 26218
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400666A")]
|
||||
public object item;
|
||||
|
||||
// Token: 0x0400666B RID: 26219
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400666B")]
|
||||
public object result;
|
||||
|
||||
// Token: 0x0400666C RID: 26220
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x400666C")]
|
||||
public string error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Messages
|
||||
{
|
||||
// Token: 0x020018F3 RID: 6387
|
||||
[Token(Token = "0x20018F3")]
|
||||
public enum MessageTypes
|
||||
{
|
||||
// Token: 0x0400665D RID: 26205
|
||||
[Token(Token = "0x400665D")]
|
||||
Handshake,
|
||||
// Token: 0x0400665E RID: 26206
|
||||
[Token(Token = "0x400665E")]
|
||||
Invocation,
|
||||
// Token: 0x0400665F RID: 26207
|
||||
[Token(Token = "0x400665F")]
|
||||
StreamItem,
|
||||
// Token: 0x04006660 RID: 26208
|
||||
[Token(Token = "0x4006660")]
|
||||
Completion,
|
||||
// Token: 0x04006661 RID: 26209
|
||||
[Token(Token = "0x4006661")]
|
||||
StreamInvocation,
|
||||
// Token: 0x04006662 RID: 26210
|
||||
[Token(Token = "0x4006662")]
|
||||
CancelInvocation,
|
||||
// Token: 0x04006663 RID: 26211
|
||||
[Token(Token = "0x4006663")]
|
||||
Ping,
|
||||
// Token: 0x04006664 RID: 26212
|
||||
[Token(Token = "0x4006664")]
|
||||
Close
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,166 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BestHTTP.JSON;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Messages
|
||||
{
|
||||
// Token: 0x020018F6 RID: 6390
|
||||
[Token(Token = "0x20018F6")]
|
||||
public sealed class NegotiationResult
|
||||
{
|
||||
// Token: 0x170017F0 RID: 6128
|
||||
// (get) Token: 0x06009646 RID: 38470 RVA: 0x001EE8E0 File Offset: 0x001ECAE0
|
||||
// (set) Token: 0x06009647 RID: 38471 RVA: 0x001EE8F4 File Offset: 0x001ECAF4
|
||||
[Token(Token = "0x170017F0")]
|
||||
public string ConnectionId
|
||||
{
|
||||
[Token(Token = "0x6009646")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x6009647")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F1 RID: 6129
|
||||
// (get) Token: 0x06009648 RID: 38472 RVA: 0x001EE908 File Offset: 0x001ECB08
|
||||
// (set) Token: 0x06009649 RID: 38473 RVA: 0x001EE91C File Offset: 0x001ECB1C
|
||||
[Token(Token = "0x170017F1")]
|
||||
public List<SupportedTransport> SupportedTransports
|
||||
{
|
||||
[Token(Token = "0x6009648")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x6009649")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F2 RID: 6130
|
||||
// (get) Token: 0x0600964A RID: 38474 RVA: 0x001EE930 File Offset: 0x001ECB30
|
||||
// (set) Token: 0x0600964B RID: 38475 RVA: 0x001EE944 File Offset: 0x001ECB44
|
||||
[Token(Token = "0x170017F2")]
|
||||
public Uri Url
|
||||
{
|
||||
[Token(Token = "0x600964A")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600964B")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F3 RID: 6131
|
||||
// (get) Token: 0x0600964C RID: 38476 RVA: 0x001EE958 File Offset: 0x001ECB58
|
||||
// (set) Token: 0x0600964D RID: 38477 RVA: 0x001EE96C File Offset: 0x001ECB6C
|
||||
[Token(Token = "0x170017F3")]
|
||||
public string AccessToken
|
||||
{
|
||||
[Token(Token = "0x600964C")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
||||
get;
|
||||
[Token(Token = "0x600964D")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600964E RID: 38478 RVA: 0x001EE980 File Offset: 0x001ECB80
|
||||
[Token(Token = "0x600964E")]
|
||||
[Address(RVA = "0x1C3A150", Offset = "0x1C38F50", VA = "0x181C3A150")]
|
||||
internal static NegotiationResult Parse(string json, out string error, HubConnection hub)
|
||||
{
|
||||
int num = 0;
|
||||
object obj = Json.Decode(json);
|
||||
if (obj != 0 && obj != 0)
|
||||
{
|
||||
NegotiationResult negotiationResult = new NegotiationResult();
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
int hashCode = obj.GetHashCode();
|
||||
negotiationResult.<ConnectionId>k__BackingField = hashCode;
|
||||
}
|
||||
bool flag2;
|
||||
bool flag4;
|
||||
if (flag2 && "availableTransports" != 0 && "availableTransports" != 0)
|
||||
{
|
||||
List<SupportedTransport> list;
|
||||
List<SupportedTransport>.Enumerator enumerator = list.GetEnumerator();
|
||||
bool flag3;
|
||||
if (flag3)
|
||||
{
|
||||
if (flag4)
|
||||
{
|
||||
}
|
||||
bool flag5;
|
||||
List<string> list2;
|
||||
if (flag5 && flag5)
|
||||
{
|
||||
List<string>.Enumerator enumerator2 = list2.GetEnumerator();
|
||||
bool flag6;
|
||||
if (flag6)
|
||||
{
|
||||
int hashCode2 = list2.GetHashCode();
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
if ((ulong)((uint)(-1)) != (ulong)(-1L))
|
||||
{
|
||||
}
|
||||
}
|
||||
SupportedTransport supportedTransport;
|
||||
supportedTransport.<Name>k__BackingField = flag4;
|
||||
supportedTransport.<SupportedFormats>k__BackingField = list2;
|
||||
list.Add(supportedTransport);
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
negotiationResult.<SupportedTransports>k__BackingField = list;
|
||||
}
|
||||
bool flag7;
|
||||
if (flag7)
|
||||
{
|
||||
int hashCode3 = flag4.GetHashCode();
|
||||
bool flag8;
|
||||
if (!flag8)
|
||||
{
|
||||
Exception ex = new Exception(string.Format("Couldn't parse url: '{0}'", json));
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
Uri uri;
|
||||
if (!flag8)
|
||||
{
|
||||
UriBuilder uriBuilder;
|
||||
uri = uriBuilder.Uri;
|
||||
}
|
||||
negotiationResult.<Url>k__BackingField = uri;
|
||||
}
|
||||
bool flag9;
|
||||
if (!flag9)
|
||||
{
|
||||
if (!flag9)
|
||||
{
|
||||
goto IL_115;
|
||||
}
|
||||
negotiationResult.<AccessToken>k__BackingField = flag4;
|
||||
}
|
||||
int hashCode4 = flag4.GetHashCode();
|
||||
negotiationResult.<AccessToken>k__BackingField = hashCode4;
|
||||
}
|
||||
IL_115:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600964F RID: 38479 RVA: 0x001EEB28 File Offset: 0x001ECD28
|
||||
[Token(Token = "0x600964F")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public NegotiationResult()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Messages
|
||||
{
|
||||
// Token: 0x020018F2 RID: 6386
|
||||
[Token(Token = "0x20018F2")]
|
||||
public struct PingMessage
|
||||
{
|
||||
// Token: 0x170017ED RID: 6125
|
||||
// (get) Token: 0x0600963F RID: 38463 RVA: 0x001EE78C File Offset: 0x001EC98C
|
||||
[Token(Token = "0x170017ED")]
|
||||
public MessageTypes type
|
||||
{
|
||||
[Token(Token = "0x600963F")]
|
||||
[Address(RVA = "0x46CC50", Offset = "0x46BA50", VA = "0x18046CC50")]
|
||||
get
|
||||
{
|
||||
return MessageTypes.Ping;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Messages
|
||||
{
|
||||
// Token: 0x020018F5 RID: 6389
|
||||
[Token(Token = "0x20018F5")]
|
||||
public sealed class SupportedTransport
|
||||
{
|
||||
// Token: 0x170017EE RID: 6126
|
||||
// (get) Token: 0x06009641 RID: 38465 RVA: 0x001EE86C File Offset: 0x001ECA6C
|
||||
// (set) Token: 0x06009642 RID: 38466 RVA: 0x001EE880 File Offset: 0x001ECA80
|
||||
[Token(Token = "0x170017EE")]
|
||||
public string Name
|
||||
{
|
||||
[Token(Token = "0x6009641")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x6009642")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017EF RID: 6127
|
||||
// (get) Token: 0x06009643 RID: 38467 RVA: 0x001EE894 File Offset: 0x001ECA94
|
||||
// (set) Token: 0x06009644 RID: 38468 RVA: 0x001EE8A8 File Offset: 0x001ECAA8
|
||||
[Token(Token = "0x170017EF")]
|
||||
public List<string> SupportedFormats
|
||||
{
|
||||
[Token(Token = "0x6009643")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x6009644")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x06009645 RID: 38469 RVA: 0x001EE8BC File Offset: 0x001ECABC
|
||||
[Token(Token = "0x6009645")]
|
||||
[Address(RVA = "0x4089A0", Offset = "0x4077A0", VA = "0x1804089A0")]
|
||||
internal SupportedTransport(string transportName, List<string> transferFormats)
|
||||
{
|
||||
this.Name = transportName;
|
||||
this.SupportedFormats = transferFormats;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018E9 RID: 6377
|
||||
[Token(Token = "0x20018E9")]
|
||||
public sealed class OnAuthenticationFailedDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x060095F9 RID: 38393 RVA: 0x001EDA10 File Offset: 0x001EBC10
|
||||
[Token(Token = "0x60095F9")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnAuthenticationFailedDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x060095FA RID: 38394 RVA: 0x001EDA2C File Offset: 0x001EBC2C
|
||||
[Token(Token = "0x60095FA")]
|
||||
[Address(RVA = "0x1C3A8C0", Offset = "0x1C396C0", VA = "0x181C3A8C0", Slot = "13")]
|
||||
public void Invoke(IAuthenticationProvider provider, string reason)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060095FB RID: 38395 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60095FB")]
|
||||
[Address(RVA = "0x457420", Offset = "0x456220", VA = "0x180457420", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(IAuthenticationProvider provider, string reason, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060095FC RID: 38396 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60095FC")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018E8 RID: 6376
|
||||
[Token(Token = "0x20018E8")]
|
||||
public sealed class OnAuthenticationSuccededDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x060095F5 RID: 38389 RVA: 0x001ED940 File Offset: 0x001EBB40
|
||||
[Token(Token = "0x60095F5")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnAuthenticationSuccededDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x060095F6 RID: 38390 RVA: 0x001ED95C File Offset: 0x001EBB5C
|
||||
[Token(Token = "0x60095F6")]
|
||||
[Address(RVA = "0x747410", Offset = "0x746210", VA = "0x180747410", Slot = "13")]
|
||||
public void Invoke(IAuthenticationProvider provider)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060095F7 RID: 38391 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60095F7")]
|
||||
[Address(RVA = "0x457150", Offset = "0x455F50", VA = "0x180457150", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(IAuthenticationProvider provider, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060095F8 RID: 38392 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60095F8")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018DB RID: 6363
|
||||
[Token(Token = "0x20018DB")]
|
||||
public class StreamItemContainer<T>
|
||||
{
|
||||
// Token: 0x170017D2 RID: 6098
|
||||
// (get) Token: 0x0600959D RID: 38301 RVA: 0x001EC588 File Offset: 0x001EA788
|
||||
// (set) Token: 0x0600959E RID: 38302 RVA: 0x001EC59C File Offset: 0x001EA79C
|
||||
[Token(Token = "0x170017D2")]
|
||||
public List<T> Items
|
||||
{
|
||||
[Token(Token = "0x600959D")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x600959E")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D3 RID: 6099
|
||||
// (get) Token: 0x0600959F RID: 38303 RVA: 0x001EC5B0 File Offset: 0x001EA7B0
|
||||
// (set) Token: 0x060095A0 RID: 38304 RVA: 0x001EC5C4 File Offset: 0x001EA7C4
|
||||
[Token(Token = "0x170017D3")]
|
||||
public T LastAdded
|
||||
{
|
||||
[Token(Token = "0x600959F")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x60095A0")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x060095A1 RID: 38305 RVA: 0x001EC5D8 File Offset: 0x001EA7D8
|
||||
[Token(Token = "0x60095A1")]
|
||||
[Address(RVA = "0x2A36C40", Offset = "0x2A35A40", VA = "0x182A36C40")]
|
||||
public StreamItemContainer(long _id)
|
||||
{
|
||||
this.id = _id;
|
||||
List list = new List();
|
||||
}
|
||||
|
||||
// Token: 0x060095A2 RID: 38306 RVA: 0x001EC600 File Offset: 0x001EA800
|
||||
[Token(Token = "0x60095A2")]
|
||||
[Address(RVA = "0x2A36B30", Offset = "0x2A35930", VA = "0x182A36B30")]
|
||||
public void AddItem(T item)
|
||||
{
|
||||
if (this.Items == 0)
|
||||
{
|
||||
List list = new List();
|
||||
this.Items = list;
|
||||
}
|
||||
this.Items.Add(item);
|
||||
}
|
||||
|
||||
// Token: 0x0400661F RID: 26143
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400661F")]
|
||||
public readonly long id;
|
||||
|
||||
// Token: 0x04006622 RID: 26146
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4006622")]
|
||||
public bool IsCanceled;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018DD RID: 6365
|
||||
[Token(Token = "0x20018DD")]
|
||||
internal sealed class Subscription
|
||||
{
|
||||
// Token: 0x060095A4 RID: 38308 RVA: 0x001EC654 File Offset: 0x001EA854
|
||||
[Token(Token = "0x60095A4")]
|
||||
[Address(RVA = "0x1C3CCC0", Offset = "0x1C3BAC0", VA = "0x181C3CCC0")]
|
||||
public void Add(Type[] paramTypes, Action<object[]> callback)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<CallbackDescriptor> list = this.callbacks;
|
||||
List<CallbackDescriptor> list2 = this.callbacks;
|
||||
Monitor.Exit(list);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x060095A5 RID: 38309 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60095A5")]
|
||||
[Address(RVA = "0x1C3CDB0", Offset = "0x1C3BBB0", VA = "0x181C3CDB0")]
|
||||
public void Remove(Action<object[]> callback)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060095A6 RID: 38310 RVA: 0x001EC684 File Offset: 0x001EA884
|
||||
[Token(Token = "0x60095A6")]
|
||||
[Address(RVA = "0x1C3CF00", Offset = "0x1C3BD00", VA = "0x181C3CF00")]
|
||||
public Subscription()
|
||||
{
|
||||
List<CallbackDescriptor> list = new List(1);
|
||||
this.callbacks = list;
|
||||
base..ctor();
|
||||
}
|
||||
|
||||
// Token: 0x04006625 RID: 26149
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4006625")]
|
||||
public List<CallbackDescriptor> callbacks;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018D6 RID: 6358
|
||||
[Token(Token = "0x20018D6")]
|
||||
public enum TransferModes
|
||||
{
|
||||
// Token: 0x0400660E RID: 26126
|
||||
[Token(Token = "0x400660E")]
|
||||
Binary,
|
||||
// Token: 0x0400660F RID: 26127
|
||||
[Token(Token = "0x400660F")]
|
||||
Text
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018D7 RID: 6359
|
||||
[Token(Token = "0x20018D7")]
|
||||
public enum TransportStates
|
||||
{
|
||||
// Token: 0x04006611 RID: 26129
|
||||
[Token(Token = "0x4006611")]
|
||||
Initial,
|
||||
// Token: 0x04006612 RID: 26130
|
||||
[Token(Token = "0x4006612")]
|
||||
Connecting,
|
||||
// Token: 0x04006613 RID: 26131
|
||||
[Token(Token = "0x4006613")]
|
||||
Connected,
|
||||
// Token: 0x04006614 RID: 26132
|
||||
[Token(Token = "0x4006614")]
|
||||
Closing,
|
||||
// Token: 0x04006615 RID: 26133
|
||||
[Token(Token = "0x4006615")]
|
||||
Failed,
|
||||
// Token: 0x04006616 RID: 26134
|
||||
[Token(Token = "0x4006616")]
|
||||
Closed
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore
|
||||
{
|
||||
// Token: 0x020018D5 RID: 6357
|
||||
[Token(Token = "0x20018D5")]
|
||||
public enum TransportTypes
|
||||
{
|
||||
// Token: 0x0400660C RID: 26124
|
||||
[Token(Token = "0x400660C")]
|
||||
WebSocket
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,549 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Text;
|
||||
using BestHTTP.Decompression.Zlib;
|
||||
using BestHTTP.JSON;
|
||||
using BestHTTP.Logger;
|
||||
using BestHTTP.SignalRCore.Messages;
|
||||
using BestHTTP.WebSocket;
|
||||
using BestHTTP.WebSocket.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SignalRCore.Transports
|
||||
{
|
||||
// Token: 0x020018EF RID: 6383
|
||||
[Token(Token = "0x20018EF")]
|
||||
internal sealed class WebSocketTransport : ITransport
|
||||
{
|
||||
// Token: 0x170017E8 RID: 6120
|
||||
// (get) Token: 0x0600962A RID: 38442 RVA: 0x001EDE60 File Offset: 0x001EC060
|
||||
[Token(Token = "0x170017E8")]
|
||||
public TransportTypes TransportType
|
||||
{
|
||||
[Token(Token = "0x600962A")]
|
||||
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "5")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017E9 RID: 6121
|
||||
// (get) Token: 0x0600962B RID: 38443 RVA: 0x001EDE70 File Offset: 0x001EC070
|
||||
[Token(Token = "0x170017E9")]
|
||||
public TransferModes TransferMode
|
||||
{
|
||||
[Token(Token = "0x600962B")]
|
||||
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "4")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017EA RID: 6122
|
||||
// (get) Token: 0x0600962C RID: 38444 RVA: 0x001EDE80 File Offset: 0x001EC080
|
||||
// (set) Token: 0x0600962D RID: 38445 RVA: 0x001EDE94 File Offset: 0x001EC094
|
||||
[Token(Token = "0x170017EA")]
|
||||
public TransportStates State
|
||||
{
|
||||
[Token(Token = "0x600962C")]
|
||||
[Address(RVA = "0x3FA560", Offset = "0x3F9360", VA = "0x1803FA560", Slot = "6")]
|
||||
get
|
||||
{
|
||||
return this._state;
|
||||
}
|
||||
[Token(Token = "0x600962D")]
|
||||
[Address(RVA = "0x1C464E0", Offset = "0x1C452E0", VA = "0x181C464E0")]
|
||||
private set
|
||||
{
|
||||
if (this._state != value)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged = this.OnStateChanged;
|
||||
this._state = value;
|
||||
if (onStateChanged != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017EB RID: 6123
|
||||
// (get) Token: 0x0600962E RID: 38446 RVA: 0x001EDEC0 File Offset: 0x001EC0C0
|
||||
// (set) Token: 0x0600962F RID: 38447 RVA: 0x001EDED4 File Offset: 0x001EC0D4
|
||||
[Token(Token = "0x170017EB")]
|
||||
public string ErrorReason
|
||||
{
|
||||
[Token(Token = "0x600962E")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40", Slot = "7")]
|
||||
get;
|
||||
[Token(Token = "0x600962F")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x140000C9 RID: 201
|
||||
// (add) Token: 0x06009630 RID: 38448 RVA: 0x001EDEE8 File Offset: 0x001EC0E8
|
||||
// (remove) Token: 0x06009631 RID: 38449 RVA: 0x001EDF10 File Offset: 0x001EC110
|
||||
[Token(Token = "0x140000C9")]
|
||||
public event Action<TransportStates, TransportStates> OnStateChanged
|
||||
{
|
||||
[Token(Token = "0x6009630")]
|
||||
[Address(RVA = "0x1C463A0", Offset = "0x1C451A0", VA = "0x181C463A0", Slot = "8")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onStateChanged = this.OnStateChanged;
|
||||
@delegate = Delegate.Combine(onStateChanged, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onStateChanged)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x6009631")]
|
||||
[Address(RVA = "0x1C46440", Offset = "0x1C45240", VA = "0x181C46440", Slot = "9")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged;
|
||||
Delegate @delegate;
|
||||
do
|
||||
{
|
||||
onStateChanged = this.OnStateChanged;
|
||||
@delegate = Delegate.Remove(onStateChanged, value);
|
||||
}
|
||||
while (@delegate != 0 && @delegate == 0);
|
||||
while (@delegate != onStateChanged)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009632 RID: 38450 RVA: 0x001EDF38 File Offset: 0x001EC138
|
||||
[Token(Token = "0x6009632")]
|
||||
[Address(RVA = "0x1C462E0", Offset = "0x1C450E0", VA = "0x181C462E0")]
|
||||
public WebSocketTransport(HubConnection con)
|
||||
{
|
||||
List<Message> list = new List();
|
||||
this.messages = list;
|
||||
base..ctor();
|
||||
this.connection = con;
|
||||
TransportStates state = this._state;
|
||||
if (state != TransportStates.Initial)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged = this.OnStateChanged;
|
||||
this._state = (TransportStates)((ulong)0L);
|
||||
if (onStateChanged != 0)
|
||||
{
|
||||
int num = 0;
|
||||
onStateChanged(state, num);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009633 RID: 38451 RVA: 0x001EDF88 File Offset: 0x001EC188
|
||||
[Token(Token = "0x6009633")]
|
||||
[Address(RVA = "0x1C44E90", Offset = "0x1C43C90", VA = "0x181C44E90", Slot = "10")]
|
||||
void ITransport.StartConnect()
|
||||
{
|
||||
WebSocket webSocket7;
|
||||
Delegate delegate5;
|
||||
for (;;)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
WebSocket webSocket = this.webSocket;
|
||||
int num = 0;
|
||||
if (webSocket == 0)
|
||||
{
|
||||
Uri <Uri>k__BackingField = this.connection.<Uri>k__BackingField;
|
||||
HubConnection hubConnection = this.connection;
|
||||
if (hubConnection.<NegotiationResult>k__BackingField != num)
|
||||
{
|
||||
UriBuilder uriBuilder = new UriBuilder(<Uri>k__BackingField);
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
string query = <Uri>k__BackingField.Query;
|
||||
StringBuilder stringBuilder2 = stringBuilder.Append(query);
|
||||
string <ConnectionId>k__BackingField = this.connection.<NegotiationResult>k__BackingField.<ConnectionId>k__BackingField;
|
||||
if (stringBuilder2 == 0)
|
||||
{
|
||||
StringBuilder stringBuilder3 = stringBuilder.Append("&id=");
|
||||
string <ConnectionId>k__BackingField2 = this.connection.<NegotiationResult>k__BackingField.<ConnectionId>k__BackingField;
|
||||
StringBuilder stringBuilder4 = stringBuilder3.Append(<ConnectionId>k__BackingField2);
|
||||
}
|
||||
int hashCode = stringBuilder.GetHashCode();
|
||||
Uri uri = uriBuilder.Uri;
|
||||
}
|
||||
if (hubConnection.<AuthenticationProvider>k__BackingField != 0 && num < logger)
|
||||
{
|
||||
num += num;
|
||||
num++;
|
||||
}
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
int hashCode2 = num.GetHashCode();
|
||||
string empty = string.Empty;
|
||||
IExtension[] array = new IExtension[1];
|
||||
int num2 = 0;
|
||||
PerMessageCompression perMessageCompression;
|
||||
perMessageCompression.FieldGetter(num2, empty, empty);
|
||||
perMessageCompression.<Level>k__BackingField = (CompressionLevel)((ulong)6L);
|
||||
perMessageCompression.<ClientNoContextTakeover>k__BackingField = num != 0;
|
||||
perMessageCompression.<ClientMaxWindowBits>k__BackingField = (int)((ulong)15L);
|
||||
perMessageCompression.<ServerMaxWindowBits>k__BackingField = (int)((ulong)15L);
|
||||
perMessageCompression.<MinimumDataLegthToCompress>k__BackingField = (int)((ulong)256L);
|
||||
array[0] = perMessageCompression;
|
||||
WebSocket webSocket2;
|
||||
webSocket2.<Extensions>k__BackingField = array;
|
||||
this.webSocket = webSocket2;
|
||||
}
|
||||
WebSocket webSocket3;
|
||||
if (this.connection.<AuthenticationProvider>k__BackingField != 0)
|
||||
{
|
||||
webSocket3 = this.webSocket;
|
||||
}
|
||||
OnWebSocketOpenDelegate onOpen = webSocket3.OnOpen;
|
||||
OnWebSocketOpenDelegate onWebSocketOpenDelegate;
|
||||
onWebSocketOpenDelegate.method_ptr = ldftn(OnOpen);
|
||||
onWebSocketOpenDelegate.method = ldftn(OnOpen);
|
||||
onWebSocketOpenDelegate.m_target = this;
|
||||
Delegate @delegate = Delegate.Combine(onOpen, onWebSocketOpenDelegate);
|
||||
if (@delegate == 0 || @delegate != 0)
|
||||
{
|
||||
webSocket3.OnOpen = @delegate;
|
||||
WebSocket webSocket4 = this.webSocket;
|
||||
OnWebSocketMessageDelegate onMessage = webSocket4.OnMessage;
|
||||
OnWebSocketMessageDelegate onWebSocketMessageDelegate;
|
||||
onWebSocketMessageDelegate.method_ptr = ldftn(OnMessage);
|
||||
onWebSocketMessageDelegate.method = ldftn(OnMessage);
|
||||
onWebSocketMessageDelegate.m_target = this;
|
||||
Delegate delegate2 = Delegate.Combine(onMessage, onWebSocketMessageDelegate);
|
||||
if (delegate2 == 0 || delegate2 != 0)
|
||||
{
|
||||
webSocket4.OnMessage = delegate2;
|
||||
WebSocket webSocket5 = this.webSocket;
|
||||
OnWebSocketBinaryDelegate onBinary = webSocket5.OnBinary;
|
||||
OnWebSocketBinaryDelegate onWebSocketBinaryDelegate;
|
||||
onWebSocketBinaryDelegate.method_ptr = ldftn(OnBinary);
|
||||
onWebSocketBinaryDelegate.method = ldftn(OnBinary);
|
||||
onWebSocketBinaryDelegate.m_target = this;
|
||||
Delegate delegate3 = Delegate.Combine(onBinary, onWebSocketBinaryDelegate);
|
||||
if (delegate3 == 0 || delegate3 != 0)
|
||||
{
|
||||
webSocket5.OnBinary = delegate3;
|
||||
WebSocket webSocket6 = this.webSocket;
|
||||
OnWebSocketErrorDescriptionDelegate onErrorDesc = webSocket6.OnErrorDesc;
|
||||
OnWebSocketErrorDescriptionDelegate onWebSocketErrorDescriptionDelegate;
|
||||
onWebSocketErrorDescriptionDelegate.method_ptr = ldftn(OnError);
|
||||
onWebSocketErrorDescriptionDelegate.method = ldftn(OnError);
|
||||
onWebSocketErrorDescriptionDelegate.m_target = this;
|
||||
Delegate delegate4 = Delegate.Combine(onErrorDesc, onWebSocketErrorDescriptionDelegate);
|
||||
if (delegate4 == 0 || delegate4 != 0)
|
||||
{
|
||||
webSocket6.OnErrorDesc = delegate4;
|
||||
webSocket7 = this.webSocket;
|
||||
OnWebSocketClosedDelegate onClosed = webSocket7.OnClosed;
|
||||
OnWebSocketClosedDelegate onWebSocketClosedDelegate;
|
||||
onWebSocketClosedDelegate.method_ptr = ldftn(OnClosed);
|
||||
onWebSocketClosedDelegate.method = ldftn(OnClosed);
|
||||
onWebSocketClosedDelegate.m_target = this;
|
||||
delegate5 = Delegate.Combine(onClosed, onWebSocketClosedDelegate);
|
||||
if (delegate5 == 0 || delegate5 != 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
webSocket7.OnClosed = delegate5;
|
||||
this.webSocket.Open();
|
||||
if (this._state != TransportStates.Connecting)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged = this.OnStateChanged;
|
||||
this._state = (TransportStates)((ulong)1L);
|
||||
if (onStateChanged != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009634 RID: 38452 RVA: 0x001EE2C8 File Offset: 0x001EC4C8
|
||||
[Token(Token = "0x6009634")]
|
||||
[Address(RVA = "0x1C44C50", Offset = "0x1C43A50", VA = "0x181C44C50", Slot = "12")]
|
||||
void ITransport.Send(byte[] msg)
|
||||
{
|
||||
WebSocket webSocket = this.webSocket;
|
||||
WebSocketResponse webSocketResponse = webSocket.webSocket;
|
||||
if (webSocketResponse != 0 && !webSocketResponse.closed)
|
||||
{
|
||||
webSocket.webSocket.Send(msg);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009635 RID: 38453 RVA: 0x001EE304 File Offset: 0x001EC504
|
||||
[Token(Token = "0x6009635")]
|
||||
[Address(RVA = "0x1C460F0", Offset = "0x1C44EF0", VA = "0x181C460F0")]
|
||||
private void OnOpen(WebSocket webSocket)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
IProtocol <Protocol>k__BackingField = this.connection.<Protocol>k__BackingField;
|
||||
string text;
|
||||
byte[] array = JsonProtocol.WithSeparator(text);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009636 RID: 38454 RVA: 0x001EE334 File Offset: 0x001EC534
|
||||
[Token(Token = "0x6009636")]
|
||||
[Address(RVA = "0x1C461E0", Offset = "0x1C44FE0", VA = "0x181C461E0")]
|
||||
private string ParseHandshakeResponse(string data)
|
||||
{
|
||||
int num = 0;
|
||||
object obj = Json.Decode(data);
|
||||
if (obj != 0 && obj != 0)
|
||||
{
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
}
|
||||
int hashCode = num.GetHashCode();
|
||||
}
|
||||
return "Couldn't parse json data: " + data;
|
||||
}
|
||||
|
||||
// Token: 0x06009637 RID: 38455 RVA: 0x001EE378 File Offset: 0x001EC578
|
||||
[Token(Token = "0x6009637")]
|
||||
[Address(RVA = "0x1C45760", Offset = "0x1C44560", VA = "0x181C45760")]
|
||||
private void HandleHandshakeResponse(string data)
|
||||
{
|
||||
int num = 0;
|
||||
object obj = Json.Decode(data);
|
||||
if (obj != 0 && obj != 0)
|
||||
{
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
goto IL_2F;
|
||||
}
|
||||
int hashCode = num.GetHashCode();
|
||||
}
|
||||
string text = "Couldn't parse json data: " + data;
|
||||
IL_2F:
|
||||
this.<ErrorReason>k__BackingField = text;
|
||||
bool flag2 = string.IsNullOrEmpty(text);
|
||||
TransportStates state = this._state;
|
||||
if (state != TransportStates.Connected)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged = this.OnStateChanged;
|
||||
this._state = TransportStates.Connected;
|
||||
if (onStateChanged != 0)
|
||||
{
|
||||
onStateChanged(state, 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009638 RID: 38456 RVA: 0x001EE3F8 File Offset: 0x001EC5F8
|
||||
[Token(Token = "0x6009638")]
|
||||
[Address(RVA = "0x1C45EB0", Offset = "0x1C44CB0", VA = "0x181C45EB0")]
|
||||
private void OnMessage(WebSocket webSocket, string data)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (this._state == TransportStates.Connecting)
|
||||
{
|
||||
break;
|
||||
}
|
||||
this.messages.Clear();
|
||||
IProtocol <Protocol>k__BackingField = this.connection.<Protocol>k__BackingField;
|
||||
if (num < data)
|
||||
{
|
||||
num += num;
|
||||
num++;
|
||||
}
|
||||
HubConnection hubConnection = this.connection;
|
||||
List<Message> list = this.messages;
|
||||
hubConnection.OnMessages(list);
|
||||
list += list;
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
this.messages.Clear();
|
||||
}
|
||||
while (num != 0);
|
||||
this.HandleHandshakeResponse(data);
|
||||
}
|
||||
|
||||
// Token: 0x06009639 RID: 38457 RVA: 0x001EE484 File Offset: 0x001EC684
|
||||
[Token(Token = "0x6009639")]
|
||||
[Address(RVA = "0x1C458B0", Offset = "0x1C446B0", VA = "0x181C458B0")]
|
||||
private void OnBinary(WebSocket webSocket, byte[] data)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (this._state == TransportStates.Connecting)
|
||||
{
|
||||
break;
|
||||
}
|
||||
this.messages.Clear();
|
||||
IProtocol <Protocol>k__BackingField = this.connection.<Protocol>k__BackingField;
|
||||
if (num < data)
|
||||
{
|
||||
num += num;
|
||||
num++;
|
||||
}
|
||||
HubConnection hubConnection = this.connection;
|
||||
List<Message> list = this.messages;
|
||||
hubConnection.OnMessages(list);
|
||||
list += list;
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
this.messages.Clear();
|
||||
}
|
||||
while (num != 0);
|
||||
string @string = Encoding.UTF8.GetString(data);
|
||||
this.HandleHandshakeResponse(@string);
|
||||
}
|
||||
|
||||
// Token: 0x0600963A RID: 38458 RVA: 0x001EE528 File Offset: 0x001EC728
|
||||
[Token(Token = "0x600963A")]
|
||||
[Address(RVA = "0x1C45DC0", Offset = "0x1C44BC0", VA = "0x181C45DC0")]
|
||||
private void OnError(WebSocket webSocket, string reason)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string text = "OnError: " + reason;
|
||||
this.<ErrorReason>k__BackingField = reason;
|
||||
TransportStates state = this._state;
|
||||
if (state != TransportStates.Failed)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged = this.OnStateChanged;
|
||||
this._state = (TransportStates)((ulong)4L);
|
||||
if (onStateChanged != 0)
|
||||
{
|
||||
onStateChanged(state, (uint)4);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600963B RID: 38459 RVA: 0x001EE584 File Offset: 0x001EC784
|
||||
[Token(Token = "0x600963B")]
|
||||
[Address(RVA = "0x1C45B30", Offset = "0x1C44930", VA = "0x181C45B30")]
|
||||
private void OnClosed(WebSocket webSocket, ushort code, string message)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
object[] array = new object[4];
|
||||
if ("OnClosed: " != 0)
|
||||
{
|
||||
}
|
||||
array[0] = "OnClosed: ";
|
||||
if (array != 0)
|
||||
{
|
||||
}
|
||||
array[1] = array;
|
||||
if (" " != 0)
|
||||
{
|
||||
}
|
||||
array[2] = " ";
|
||||
if (message != 0)
|
||||
{
|
||||
}
|
||||
array[3] = message;
|
||||
string text = string.Concat(array);
|
||||
this.webSocket = (ulong)0L;
|
||||
TransportStates state = this._state;
|
||||
if (state != TransportStates.Closed)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged = this.OnStateChanged;
|
||||
this._state = (TransportStates)((ulong)5L);
|
||||
if (onStateChanged != 0)
|
||||
{
|
||||
onStateChanged(state, (uint)5);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600963C RID: 38460 RVA: 0x001EE624 File Offset: 0x001EC824
|
||||
[Token(Token = "0x600963C")]
|
||||
[Address(RVA = "0x1C44CB0", Offset = "0x1C43AB0", VA = "0x181C44CB0", Slot = "11")]
|
||||
void ITransport.StartClose()
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
if (this.webSocket == (ulong)0L)
|
||||
{
|
||||
TransportStates state = this._state;
|
||||
if (state != TransportStates.Closed)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged = this.OnStateChanged;
|
||||
this._state = (TransportStates)((ulong)5L);
|
||||
if (onStateChanged != 0)
|
||||
{
|
||||
onStateChanged(state, (uint)5);
|
||||
return;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
TransportStates state2 = this._state;
|
||||
if (state2 != TransportStates.Closing)
|
||||
{
|
||||
Action<TransportStates, TransportStates> onStateChanged2 = this.OnStateChanged;
|
||||
this._state = (TransportStates)((ulong)3L);
|
||||
if (onStateChanged2 != 0)
|
||||
{
|
||||
onStateChanged2(state2, (uint)3);
|
||||
}
|
||||
}
|
||||
WebSocket webSocket = this.webSocket;
|
||||
WebSocketStates <State>k__BackingField = webSocket.<State>k__BackingField;
|
||||
webSocket.<State>k__BackingField = (WebSocketStates)((ulong)2L);
|
||||
WebSocketResponse webSocketResponse = webSocket.webSocket;
|
||||
}
|
||||
|
||||
// Token: 0x0600963D RID: 38461 RVA: 0x001EE6EC File Offset: 0x001EC8EC
|
||||
[Token(Token = "0x600963D")]
|
||||
[Address(RVA = "0x1C45600", Offset = "0x1C44400", VA = "0x181C45600")]
|
||||
private Uri BuildUri(Uri baseUri)
|
||||
{
|
||||
if (this.connection.<NegotiationResult>k__BackingField != (ulong)0L)
|
||||
{
|
||||
UriBuilder uriBuilder = new UriBuilder(baseUri);
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
string query = baseUri.Query;
|
||||
StringBuilder stringBuilder2 = stringBuilder.Append(query);
|
||||
if (!string.IsNullOrEmpty(this.connection.<NegotiationResult>k__BackingField.<ConnectionId>k__BackingField))
|
||||
{
|
||||
StringBuilder stringBuilder3 = stringBuilder.Append("&id=");
|
||||
string <ConnectionId>k__BackingField = this.connection.<NegotiationResult>k__BackingField.<ConnectionId>k__BackingField;
|
||||
StringBuilder stringBuilder4 = stringBuilder3.Append(<ConnectionId>k__BackingField);
|
||||
}
|
||||
int hashCode = stringBuilder.GetHashCode();
|
||||
return uriBuilder.Uri;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x04006650 RID: 26192
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4006650")]
|
||||
private TransportStates _state;
|
||||
|
||||
// Token: 0x04006653 RID: 26195
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4006653")]
|
||||
private WebSocket webSocket;
|
||||
|
||||
// Token: 0x04006654 RID: 26196
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4006654")]
|
||||
private HubConnection connection;
|
||||
|
||||
// Token: 0x04006655 RID: 26197
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4006655")]
|
||||
private List<Message> messages;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user