public LogonResponse Initialize(string userID, string logonPassword, string serverIP, int serverPort, ICustomizeHandler customizeHandler) { if (this.emptyAgileLogger_0 == null) { if (this.string_1 == null) { this.emptyAgileLogger_0 = new EmptyAgileLogger(); } else { FileAgileLogger logger = new FileAgileLogger(this.string_1) { MaxLength4ChangeFile = 0x100000L }; this.emptyAgileLogger_0 = (EmptyAgileLogger)logger; } } this.eventSafeTrigger_0.AgileLogger = this.emptyAgileLogger_0; this.string_0 = logonPassword; Class16 class2 = new Class16(); MessageForbiddenHandler class3 = new MessageForbiddenHandler(); this.object_0 = Class157.CreateInterface26((Enum6)0); int num = (!this.advancedOptions_0.CheckResponseTTL4Query || !this.bool_4) ? 10 : 0; this.class72_0 = new Class72(num, this.int_1); this.class72_0.SetEngine((IEngine)this.object_0); Interface36 interface2 = new Class94((ICommitMessageToServer)this.object_0, class3, null); Class79 class4 = new Class79(this.class72_0, interface2); BasicMessageTypeRoom room = new BasicMessageTypeRoom(); room.Initialize(); CustomizeMessageTypeRoom room2 = new CustomizeMessageTypeRoom(); room2.Initialize(); FileMessageTypeRoom room3 = new FileMessageTypeRoom(); room3.Initialize(); P2PSessionMessageTypeRoom room4 = new P2PSessionMessageTypeRoom(); room4.Initialize(); FriendsMessageTypeRoom room5 = new FriendsMessageTypeRoom(); room5.Initialize(); GroupMessageTypeRoom room6 = new GroupMessageTypeRoom(); room6.Initialize(); ContactsMessageTypeRoom room7 = new ContactsMessageTypeRoom(); room7.Initialize(); this.class113_0 = new BasicOutter(); this.class113_0.SetBasicMessageTypeRoom(room); this.class113_0.SetActionType(class4); this.class113_0.SetStreamContract(class2); this.class113_0.SetICommitMessageToServer((ICommitMessageToServer)this.object_0); this.class113_0.NgadStsqsh += new CbGeneric(this.method_1); this.class113_0.method_2(userID); this.class71_0 = new Class71(this.class113_0, this.bool_4 ? 0 : this.int_0); Class78 class9 = new Class78(); class9.method_5(this.class113_0); class9.method_1(room); class9.method_2(class2); class9.method_4((ICommitMessageToServer)this.object_0); class9.method_3(class4); this.class43_0 = new Class43(); this.class43_0.method_5(class4); this.class43_0.method_4(class2); this.class43_0.method_3(room2); this.class43_0.method_1(userID); CustomizeProcess class10 = new CustomizeProcess(); class10.SetStreamContractHelper(class2); class10.SetCustomizeHandler(customizeHandler); class10.SetCustomizeMessageTypeRoom(room2); class10.SetActionType(class4); class10.Event_0 += new CbGeneric <string, int, byte[], string>(this.OnMessageReceived); Class75 class7 = new Class75(class4, class2, room4); class7.method_1(userID); Class24 class8 = new Class24(); class8.method_0(room4); class8.method_1(class2); class8.DaTyrcXefU(class7); this.class2_0 = new FileTransfering(); this.class2_0.method_0(this.emptyAgileLogger_0); this.class13_0 = new FileHandler(); this.class13_0.method_0(this.emptyAgileLogger_0); this.class2_0.TTL4ResumedFileItem = this.advancedOptions_0.TempFile4ResumedTTL; this.class13_0.method_1(class4); this.class13_0.method_3(class2); this.class13_0.imethod_1(0x100000); this.class13_0.method_7(this.advancedOptions_0.UseWorkThreadPool); this.class13_0.Initialize(userID, room3.FilePackageData); this.class28_0 = new Class28(); this.class28_0.method_2(this.advancedOptions_0.CheckFileZeroSpeedSpanInSecs); this.class28_0.method_0(this.emptyAgileLogger_0); this.class28_0.method_13(room3); this.class28_0.method_14(class2); this.class28_0.method_16(class4); this.class28_0.method_12(this.class2_0); this.class28_0.method_11(this.class13_0); this.class28_0.Initialize(userID); Class70 class11 = new Class70(); class11.method_0(room3); class11.method_1(class2); class11.method_3(this.class13_0); class11.method_2(this.class2_0); class11.method_4(this.class28_0); this.class126_0 = new FriendsOutter(); this.class126_0.method_4(class4); this.class126_0.method_3(class2); this.class126_0.method_2(room5); this.class126_0.FriendOffline += new CbGeneric <string>(this.method_6); this.class126_0.method_1(userID); Class59 class12 = new Class59(); class12.method_2(class2); class12.method_3(this.class126_0); class12.method_1(room5); this.class19_0 = new GroupOutter2(); this.class19_0.method_0(class4); this.class19_0.uBkeyEkxPJ(class2); this.class19_0.Iibebiqvn1(room6); this.class19_0.SetCommitMessageToServer((ICommitMessageToServer)this.object_0); this.class19_0.GroupmateOffline += new CbGeneric <string>(this.method_7); this.class19_0.method_4(userID); Class140 class13 = new Class140(); class13.method_0(room6); class13.method_2(this.class19_0); class13.method_1(class2); this.ContactsOutter_0 = new ContactsOutter(); this.ContactsOutter_0.method_2(class4); this.ContactsOutter_0.SetStreamContract(class2); this.ContactsOutter_0.SetMessageType(room7); this.ContactsOutter_0.SetCommitMessageToServer((ICommitMessageToServer)this.object_0); this.ContactsOutter_0.ContactsOffline += new CbGeneric <string>(this.method_8); this.ContactsOutter_0.method_5(userID); Class20 class14 = new Class20(); class14.SetMessageType(room7); class14.SetOutter(this.ContactsOutter_0); class14.SetStreamContract(class2); IProcess[] processers = new IProcess[] { class9, class10, class8, class11, class12, class13, class14 }; this.class141_0 = new Class141(processers, this.class72_0); this.class141_0.method_6(this.advancedOptions_0.AsynMessageQueueEnabled && !this.bool_4); this.class141_0.method_7(class4); this.class141_0.method_4(this.emptyAgileLogger_0); this.class141_0.method_8(); new Class40(new IMessageTypeRoom[] { room, room2, room3, room4, room5, room6, room7 }, this.class141_0).method_2(); MessageDispatcher class6 = new MessageDispatcher(new Class144(new Class115(this.class141_0)), class3); class6.imethod_0(this.emptyAgileLogger_0); this.object_0.SetAgileLogger(this.emptyAgileLogger_0); this.object_0.Sock5ProxyInfo = this.sock5ProxyInfo_0; this.object_0.SetAgileIPE(new AgileIPE(serverIP, serverPort)); this.object_0.SetStreamContract(class2); this.object_0.imethod_12(class6); this.object_0.imethod_10(GlobalUtil.MaxLengthOfMessage); this.object_0.AutoReconnect = false; this.object_0.imethod_23((this.advancedOptions_0.WriteTimeoutInSecs <= 0) ? -1 : (this.advancedOptions_0.WriteTimeoutInSecs * 0x3e8)); this.object_0.SocketSendBuffSize = this.advancedOptions_0.SocketSendBuffSize; this.object_0.UncompletedSendingCount4Busy = this.advancedOptions_0.UncompletedSendingCount4Busy; this.object_0.ConnectionInterrupted += new CbGeneric(this.method_5); this.object_0.imethod_25(new CbGeneric(this.method_4)); this.object_0.ConnectionRebuildStart += new CbGeneric(this.method_2); this.object_0.Initialize(); LogonFullResponse response = this.class113_0.method_7(this.systemToken, this.string_0); if (response.LogonResult != LogonResult.Succeed) { this.object_0.OnDispose(); return(response); } this.object_0.imethod_27(); this.bool_0 = response.Boolean_0; this.bool_3 = response.GroupRelationEnabled; if ((this.bool_0 && this.advancedOptions_0.Boolean_0) && !this.bool_4) { if (response.UseAsP2PServer && (this.agileIPE_0 == null)) { this.agileIPE_0 = new AgileIPE(this.object_0.GetAgileIPE().String_0, this.object_0.GetAgileIPE().Port + 1); } if (this.agileIPE_0 != null) { this.class58_0 = new P2PController(); this.class58_0.method_6(this.agileIPE_0); this.class58_0.method_5(this.emptyAgileLogger_0); this.class58_0.method_3((Interface26)this.object_0); this.class58_0.method_2(class7); this.class58_0.method_4(room4); this.class58_0.P2PChannelClosed += new CbGeneric <P2PChannelState>(this.method_3); this.class58_0.method_7(userID, this.bool_2); interface2.imethod_2(this.class58_0); class8.method_2(this.class58_0); this.class13_0.method_4(new Class56(this.class58_0)); this.class19_0.method_1(this.class58_0); } } if (this.bool_2) { this.class108_0 = new TcpPassiveEngine((Interface26)this.object_0, this.class113_0, this.emptyAgileLogger_0); this.class108_0.method_3(); } this.class71_0.method_0(); this.class113_0.SendHeartBeatMessage(); this.string_3 = userID; this.bool_1 = true; this.object_0.AutoReconnect = this.bool_5; return(response); }
public void method_3(FriendsOutter class126_1) { this.class126_0 = class126_1; }