예제 #1
0
    // Token: 0x060006C3 RID: 1731 RVA: 0x00038F28 File Offset: 0x00037128
    private static Class2 smethod_6(out bool bool_0)
    {
        bool_0 = true;
        if (Class157.class2_0 != null)
        {
            return(Class157.class2_0);
        }
        if (Class157.class152_0 != null)
        {
            bool_0 = false;
            return(Class157.class152_0.method_8());
        }
        Class152 @class = Class157.smethod_8();
        Class2   class2 = @class.method_8();

        if (class2.vmethod_0())
        {
            Class157.class2_0 = class2;
            @class.Dispose();
        }
        else
        {
            Class157.class152_0 = @class;
            bool_0 = false;
        }
        return(class2);
    }
예제 #2
0
 // Token: 0x06001C07 RID: 7175 RVA: 0x00057E5C File Offset: 0x0005605C
 private void method_1()
 {
     if (this.stream_1 == null)
     {
         this.stream_1 = new MemoryStream();
     }
     this.stream_1.SetLength(0L);
     if (this.stream_2 == null)
     {
         this.stream_2 = new MemoryStream();
     }
     this.stream_2.SetLength(0L);
     if (this.bitmap_1 == null)
     {
         this.bitmap_1 = new Bitmap(this.bitmap_0.Width, this.bitmap_0.Height);
     }
     Class486.smethod_0(this.stream_0, this.stream_1, this.bitmap_1, new Color?(this.cSelector.SelectedColor), true, Enum14.const_3);
     this.stream_1.Position = 0L;
     this.bitmap_2          = Class486.smethod_2(this.stream_1);
     this.picSource.Image   = this.bitmap_0;
     this.picImage.Image    = this.bitmap_1;
     this.picRGB.Image      = this.bitmap_2;
     Class157.smethod_6(this.bitmap_1, this.stream_2, 100);
     this.stream_0.Position = 0L;
     this.stream_2.Position = 0L;
     this.stream_1.Position = 0L;
 }
예제 #3
0
    private void method_3(string string_1, AgileIPE agileIPE_0, bool bool_0)
    {
        Interface26 interface2 = Class157.CreateInterface26(this.object_0.imethod_1());

        try
        {
            interface2.SetStreamContract(this.object_0.GetStreamContract());
            interface2.SetAgileLogger(this.object_0.GetAgileLogger());
            interface2.imethod_10(this.object_0.imethod_9());
            interface2.imethod_12(this.object_0.imethod_11());
            interface2.imethod_8(this.object_0.imethod_7());
            interface2.SocketSendBuffSize = this.object_0.SocketSendBuffSize;
            interface2.imethod_23(this.object_0.imethod_22());
            interface2.LjXdpkRter(null);
            interface2.SetData(0);
            interface2.SetAgileIPE(agileIPE_0);
            interface2.AutoReconnect = false;
            interface2.Initialize();
            interface2.ConnectionInterrupted += new CbGeneric(this.newEngine_ConnectionInterrupted);
            this.safeDictionary_0.Add(string_1, interface2);
            this.SomeOneConnected(string_1, interface2.GetAgileIPE().IPEndPoint_0, bool_0);
        }
        catch (Exception)
        {
            interface2.Dispose();
        }
    }
예제 #4
0
 // Token: 0x060006C1 RID: 1729 RVA: 0x00005E0A File Offset: 0x0000400A
 public static void smethod_4(string string_0, byte[] byte_0, int int_0, int int_1)
 {
     if (Class157.stream_0 == null)
     {
         Class157.stream_0 = Class157.smethod_0();
     }
     Class157.smethod_9(Class157.smethod_11(string_0), byte_0, int_0, int_1);
 }
예제 #5
0
 internal Class986(Class703 A_0, BinaryReader A_1)
 {
     this.stringCollection_0 = new StringCollection();
     this.class157_0         = new Class157();
     if (A_0.class597_0.class1111_54.int_1 != 0)
     {
         this.class157_0.method_23(A_1, A_0.class597_0.class1111_54);
     }
 }
예제 #6
0
    // Token: 0x060006C4 RID: 1732 RVA: 0x00038F88 File Offset: 0x00037188
    private static int smethod_7()
    {
        if (Class157.nullable_0 != null)
        {
            return(Class157.nullable_0.Value);
        }
        bool   flag;
        Class2 @class = Class157.smethod_6(out flag);

        Class157.nullable_0 = new int?(@class.vmethod_1());
        if (!flag)
        {
            @class.Dispose();
        }
        return(Class157.nullable_0.Value);
    }
예제 #7
0
    // Token: 0x060006C2 RID: 1730 RVA: 0x00038EC8 File Offset: 0x000370C8
    public static byte[] smethod_5(string string_0)
    {
        if (Class157.stream_0 == null)
        {
            Class157.stream_0 = Class157.smethod_0();
        }
        long num = Class157.smethod_11(string_0);

        byte[] array = new byte[4];
        Class157.smethod_9(num, array, 0, 4);
        int num2 = Class161.smethod_4(array, 0);

        Array.Clear(array, 0, array.Length);
        byte[] array2 = new byte[num2];
        Class157.smethod_9(num + 4L, array2, 0, num2);
        return(array2);
    }
예제 #8
0
        // Token: 0x06001FEC RID: 8172 RVA: 0x00069EE8 File Offset: 0x000680E8
        private void SaveScreenshotBtn_Click(object sender, EventArgs e)
        {
            if (this.bitmap_0 == null)
            {
                DialogBox.smethod_3("There appears to have been an error and a screenshot was not taken.", "Error Accessing Screenshot");
                return;
            }
            if (this.saveFileDialog_0.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    switch (this.saveFileDialog_0.FilterIndex)
                    {
                    case 1:
                        using (Stream stream = File.Open(this.saveFileDialog_0.FileName, FileMode.Create, FileAccess.Write, FileShare.None))
                        {
                            Class157.smethod_6(this.bitmap_0, stream, 100);
                            goto IL_A3;
                        }
                        break;

                    case 2:
                        break;

                    default:
                        goto IL_A3;
                    }
                    using (Stream stream2 = File.Open(this.saveFileDialog_0.FileName, FileMode.Create, FileAccess.Write, FileShare.None))
                    {
                        Class157.smethod_5(this.bitmap_0, stream2, 100);
                    }
                    IL_A3 :;
                }
                catch (Exception ex)
                {
                    DialogBox.smethod_7(ex, this.saveFileDialog_0.FileName);
                }
            }
        }
예제 #9
0
파일: Class125.cs 프로젝트: jollitycn/JGNet
 private void method_1()
 {
     this.object_1 = Class157.smethod_0(this.object_0.imethod_1(), false, null, SslProtocols.None, false);
     this.object_1.SetData(this.object_0.Port);
     this.object_1.LjXdpkRter(null);
     this.object_1.imethod_33(true);
     this.object_1.imethod_22(this);
     this.object_1.SetStreamContract(this.object_0.GetStreamContract());
     this.object_1.SetAgileLogger(this.object_0.GetAgileLogger());
     this.object_1.imethod_10(this.object_0.imethod_9());
     this.object_1.imethod_12(this.object_0.imethod_11());
     this.object_1.imethod_8(this.object_0.imethod_7());
     this.object_1.SocketSendBuffSize = this.object_0.SocketSendBuffSize;
     this.object_1.imethod_26(this.object_0.imethod_22());
     this.class98_0             = new UserManager();
     this.class98_0.RelogonMode = RelogonMode.ReplaceOld;
     this.class98_0.method_2(0);
     this.class98_0.method_3((IConnection)this.object_1);
     this.class98_0.SomeOneConnected    += new CbGeneric <UserData>(this.OnSomeOneConnected);
     this.class98_0.SomeOneDisconnected += new CbGeneric <UserData, DisconnectedType>(this.SomeOneDisconnected);
     this.class98_0.Initialize();
     this.object_1.Initialize();
 }
예제 #10
0
    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);
    }
 // Token: 0x060020AB RID: 8363 RVA: 0x0006E398 File Offset: 0x0006C598
 public void method_8(string filename, Struct43?passwordHash = null)
 {
     using (Stream stream = File.Open(filename, FileMode.Create, FileAccess.ReadWrite, FileShare.None))
     {
         using (BinaryWriter binaryWriter = new BinaryWriter(stream))
         {
             binaryWriter.Write(Class132.byte_0);
             binaryWriter.Write(Class132.int_0);
             binaryWriter.smethod_28(this.ID);
             long position = stream.Position;
             binaryWriter.smethod_25(Struct43.struct43_0);
             binaryWriter.smethod_33(this.UpdateUri);
             binaryWriter.Write(this.Name);
             binaryWriter.Write(this.Author);
             binaryWriter.Write(this.Description);
             binaryWriter.smethod_26(this.Version);
             binaryWriter.smethod_26(this.MinimumVersion);
             if (passwordHash != null)
             {
                 binaryWriter.smethod_25(passwordHash.Value);
             }
             else if (string.IsNullOrEmpty(this.Password))
             {
                 binaryWriter.smethod_25(Struct43.struct43_0);
             }
             else
             {
                 binaryWriter.smethod_25(Encoding.Unicode.GetBytes(this.Password).smethod_0());
             }
             long position2 = stream.Position;
             binaryWriter.Write(0);
             if (this.Icon != null)
             {
                 Class157.smethod_11(this.Icon, stream, Color.Black, 100);
                 long position3 = stream.Position;
                 stream.Position = position2;
                 binaryWriter.Write((int)(position3 - position2 - 4L));
                 stream.Position = position3;
             }
             if (!this.LoaderPack)
             {
                 binaryWriter.Write(this.Data.MultiFileData.Count);
                 foreach (KeyValuePair <string, Class338> keyValuePair in ((IEnumerable <KeyValuePair <string, Class338> >) this.Data.MultiFileData))
                 {
                     binaryWriter.Write(keyValuePair.Key);
                     binaryWriter.smethod_25(keyValuePair.Value.Data.smethod_0());
                 }
                 position2 = stream.Position;
                 binaryWriter.Write(0);
                 using (Stream3 stream2 = new Stream3(stream, stream.Position))
                 {
                     using (BinaryWriter binaryWriter2 = new BinaryWriter(stream2))
                     {
                         this.Data.method_17(stream2, binaryWriter2);
                         this.DataHash = stream2.smethod_2();
                     }
                 }
                 long position3 = stream.Position;
                 stream.Position = position2;
                 binaryWriter.Write((int)(position3 - position2 - 4L));
                 stream.Position = position3;
                 position3       = stream.Position;
                 stream.Position = position;
                 binaryWriter.smethod_25(this.DataHash);
                 stream.Position = position3;
             }
         }
     }
 }
 public override void Visit(Class157 c) { }
예제 #13
0
파일: Class99.cs 프로젝트: unionjl/CyberAIO
    // Token: 0x060004E5 RID: 1253 RVA: 0x00028164 File Offset: 0x00026364
    public static Class139 smethod_1(object object_0, Type type_0)
    {
        Class139 @class = object_0 as Class139;

        if (@class != null)
        {
            return(@class);
        }
        if (type_0 == null)
        {
            if (object_0 == null)
            {
                return(new Class166());
            }
            type_0 = object_0.GetType();
        }
        type_0 = Class102.smethod_1(type_0);
        if (type_0 == Class28.type_0)
        {
            @class = new Class166();
            if (object_0 != null && object_0.GetType() != Class28.type_0)
            {
                @class.method_1(object_0.GetType());
            }
        }
        else if (Class99.smethod_0 <Array>(type_0))
        {
            @class = new Class140();
        }
        else if (Class99.smethod_0 <string>(type_0))
        {
            @class = new Class143();
        }
        else if (Class99.smethod_0 <IntPtr>(type_0))
        {
            @class = new Class146();
        }
        else if (Class99.smethod_0 <UIntPtr>(type_0))
        {
            @class = new Class157();
        }
        else if (Class99.smethod_0 <ulong>(type_0))
        {
            @class = new Class165();
        }
        else if (Class99.smethod_0 <uint>(type_0))
        {
            @class = new Class163();
        }
        else if (Class99.smethod_0 <ushort>(type_0))
        {
            @class = new Class159();
        }
        else if (Class99.smethod_0 <long>(type_0))
        {
            @class = new Class156();
        }
        else if (Class99.smethod_0 <int>(type_0))
        {
            @class = new Class145();
        }
        else if (Class99.smethod_0 <short>(type_0))
        {
            @class = new Class141();
        }
        else if (Class99.smethod_0 <byte>(type_0))
        {
            @class = new Class164();
        }
        else if (Class99.smethod_0 <sbyte>(type_0))
        {
            @class = new Class161();
        }
        else if (Class99.smethod_0 <double>(type_0))
        {
            @class = new Class158();
        }
        else if (Class99.smethod_0 <float>(type_0))
        {
            @class = new Class162();
        }
        else if (Class99.smethod_0 <bool>(type_0))
        {
            @class = new Class144();
        }
        else if (Class99.smethod_0 <char>(type_0))
        {
            @class = new Class155();
        }
        else if (Class28.smethod_0(type_0))
        {
            Class166 class2 = new Class166();
            class2.method_1(type_0);
            @class = class2;
        }
        else
        {
            if (Class99.smethod_0 <Enum>(type_0))
            {
                Enum enum_;
                if (object_0 == null)
                {
                    if (type_0 == Class28.type_2)
                    {
                        enum_ = null;
                    }
                    else
                    {
                        enum_ = (Enum)Activator.CreateInstance(type_0);
                    }
                }
                else if (type_0 == Class28.type_2 && object_0 is Enum)
                {
                    enum_ = (Enum)object_0;
                }
                else
                {
                    enum_ = (Enum)Enum.ToObject(type_0, object_0);
                }
                return(new Class160(enum_));
            }
            if (Class99.smethod_0 <ValueType>(type_0))
            {
                if (object_0 == null)
                {
                    object object_;
                    if (type_0 == Class28.type_3)
                    {
                        object_ = null;
                    }
                    else
                    {
                        object_ = Activator.CreateInstance(type_0);
                    }
                    @class = new Class154(object_);
                }
                else
                {
                    if (object_0.GetType() != type_0)
                    {
                        try
                        {
                            object_0 = Convert.ChangeType(object_0, type_0);
                        }
                        catch
                        {
                        }
                    }
                    @class = new Class154(object_0);
                }
                return(@class);
            }
            @class = new Class166();
        }
        if (object_0 != null)
        {
            @class.vmethod_1(object_0);
        }
        return(@class);
    }
예제 #14
0
 internal Class986()
 {
     this.stringCollection_0 = new StringCollection();
     this.class157_0         = new Class157();
 }
예제 #15
0
    // Token: 0x06000EC8 RID: 3784 RVA: 0x00044F60 File Offset: 0x00043160
    private Class156 method_4(char char_1)
    {
        int        num        = this.int_0;
        int?       num2       = null;
        List <int> list       = null;
        int        num3       = 0;
        int?       nullable_  = null;
        int?       nullable_2 = null;
        int?       nullable_3 = null;

        while (this.int_0 < this.string_0.Length)
        {
            char c = this.string_0[this.int_0];
            if (c == ' ')
            {
                num2 = new int?(this.int_0);
                this.method_5();
            }
            else if (c == char_1)
            {
                int num4 = (num2 ?? this.int_0) - num;
                if (list != null)
                {
                    if (num4 == 0)
                    {
                        throw new JsonException("Array index expected.");
                    }
                    int item = Convert.ToInt32(this.string_0.Substring(num, num4), CultureInfo.InvariantCulture);
                    list.Add(item);
                    Class158 @class = new Class158();
                    @class.method_1(list);
                    return(@class);
                }
                else
                {
                    if (num3 > 0)
                    {
                        if (num4 > 0)
                        {
                            int value = Convert.ToInt32(this.string_0.Substring(num, num4), CultureInfo.InvariantCulture);
                            if (num3 == 1)
                            {
                                nullable_2 = new int?(value);
                            }
                            else
                            {
                                nullable_3 = new int?(value);
                            }
                        }
                        Class159 class2 = new Class159();
                        class2.method_1(nullable_);
                        class2.method_3(nullable_2);
                        class2.method_5(nullable_3);
                        return(class2);
                    }
                    if (num4 == 0)
                    {
                        throw new JsonException("Array index expected.");
                    }
                    int      value2 = Convert.ToInt32(this.string_0.Substring(num, num4), CultureInfo.InvariantCulture);
                    Class157 class3 = new Class157();
                    class3.method_1(new int?(value2));
                    return(class3);
                }
            }
            else if (c == ',')
            {
                int num5 = (num2 ?? this.int_0) - num;
                if (num5 == 0)
                {
                    throw new JsonException("Array index expected.");
                }
                if (list == null)
                {
                    list = new List <int>();
                }
                string value3 = this.string_0.Substring(num, num5);
                list.Add(Convert.ToInt32(value3, CultureInfo.InvariantCulture));
                this.int_0++;
                this.method_5();
                num  = this.int_0;
                num2 = null;
            }
            else if (c == '*')
            {
                this.int_0++;
                this.method_17("Path ended with open indexer.");
                this.method_5();
                if (this.string_0[this.int_0] != char_1)
                {
                    throw new JsonException("Unexpected character while parsing path indexer: " + c.ToString());
                }
                return(new Class157());
            }
            else if (c == ':')
            {
                int num6 = (num2 ?? this.int_0) - num;
                if (num6 > 0)
                {
                    int value4 = Convert.ToInt32(this.string_0.Substring(num, num6), CultureInfo.InvariantCulture);
                    if (num3 == 0)
                    {
                        nullable_ = new int?(value4);
                    }
                    else if (num3 == 1)
                    {
                        nullable_2 = new int?(value4);
                    }
                    else
                    {
                        nullable_3 = new int?(value4);
                    }
                }
                num3++;
                this.int_0++;
                this.method_5();
                num  = this.int_0;
                num2 = null;
            }
            else
            {
                if (!char.IsDigit(c) && c != '-')
                {
                    throw new JsonException("Unexpected character while parsing path indexer: " + c.ToString());
                }
                if (num2 != null)
                {
                    throw new JsonException("Unexpected character while parsing path indexer: " + c.ToString());
                }
                this.int_0++;
            }
        }
        throw new JsonException("Path ended with open indexer.");
    }
 public abstract void Visit(Class157 c);
예제 #17
0
    public void Initialize(int port, ICustomizeHandler customizeHandler, IBasicHandler basicHandler)
    {
        if (this.emptyAgileLogger_0 == null)
        {
            if (this.string_0 == null)
            {
                this.emptyAgileLogger_0 = new EmptyAgileLogger();
            }
            else
            {
                FileAgileLogger logger = new FileAgileLogger(this.string_0)
                {
                    MaxLength4ChangeFile = 0x100000L
                };
                this.emptyAgileLogger_0 = (EmptyAgileLogger)logger;
            }
        }
        Class16 class4 = new Class16();
        MessageForbiddenHandler class8 = new MessageForbiddenHandler();

        CJPlus.Rapid.WssOptions options = this.wssOptions_0 ?? new CJPlus.Rapid.WssOptions();
        this.object_0 = Class157.smethod_0((Enum6)0, true, options.X509Certificate2, options.SslProtocols, options.OnlyWssClient);
        BasicMessageTypeRoom room3 = new BasicMessageTypeRoom();

        room3.Initialize();
        this.int_0 = room3.Logon;
        this.int_1 = room3.HeartBeat;
        CustomizeMessageTypeRoom room4 = new CustomizeMessageTypeRoom();

        room4.Initialize();
        FileMessageTypeRoom room2 = new FileMessageTypeRoom();

        room2.Initialize();
        P2PSessionMessageTypeRoom room = new P2PSessionMessageTypeRoom();

        room.Initialize();
        FriendsMessageTypeRoom room5 = new FriendsMessageTypeRoom();

        room5.Initialize();
        GroupMessageTypeRoom room6 = new GroupMessageTypeRoom();

        room6.Initialize();
        ContactsMessageTypeRoom room7 = new ContactsMessageTypeRoom();

        room7.Initialize();
        this.class40_0 = new Class40(new IMessageTypeRoom[] { room3, room4, room2, room, room5, room6, room7 }, null);
        this.class40_0.method_2();
        this.class98_0             = new UserManager();
        this.class98_0.RelogonMode = RelogonMode.ReplaceOld;
        this.class98_0.method_2(this.int_2);
        this.class98_0.SetAgileLogger(this.emptyAgileLogger_0);
        this.class98_0.method_3((IConnection)this.object_0);
        this.class98_0.Initialize();
        this.class135_0 = new Class135(this.class98_0);
        RegularSender class5 = new RegularSender();

        class5.method_0(this.class98_0);
        class5.method_2(class8);
        class5.method_1((IAction)this.object_0);
        class5.method_3(this.emptyAgileLogger_0);
        if (basicHandler == null)
        {
            basicHandler = new EmptyBasicHandler();
        }
        Class159 class7 = new Class159();

        class7.Event_0 += new CbGeneric <string, IPEndPoint>(this.OnConnectionBound);
        class7.method_1(room3);
        class7.method_3(class4);
        class7.method_2(this.class98_0);
        class7.method_7(this.bool_2);
        class7.method_5(class5);
        class7.method_8(this.class21_0.DiagnosticsEnabled ? this.class64_0 : basicHandler);
        class7.method_9(this.class135_0);
        class7.method_10(this.igroupManager_0 != null);
        class7.method_12(this.bool_3);
        class7.method_14(this.bool_4);
        class7.method_15();
        this.class159_0 = class7;
        if (customizeHandler == null)
        {
            customizeHandler = new EmptyCustomizeHandler();
        }
        Server class2 = new Server();

        class2.SetStreamContract(class4);
        class2.SetAgileLogger(this.emptyAgileLogger_0);
        class2.SetICustomizeHandler(this.class21_0.DiagnosticsEnabled ? this.class64_0 : customizeHandler);
        class2.SetCustomizeMessageTypeRoom(room4);
        class2.method_1(class5);
        class2.SetUserManager(this.class98_0);
        class2.method_8(this.int_3);
        class2.method_11(this.class21_0.CheckResponseTTL4Query ? 10 : 0);
        class2.method_9(this.class135_0);
        class2.Event_0 += new CbGeneric <string, int, byte[], string>(this.method_6);
        class2.method_14(this.class21_0.CustomizeInfoHandleMode, this.class21_0.QueueWorkerThreadCount);
        this.class21_0.method_0((IConnection)this.object_0, this.class21_0.DiagnosticsEnabled ? this.class64_0.method_0() : null, class2.method_13());
        this.class112_0 = class2;
        Class132 class3 = new Class132();

        class3.method_1(room);
        class3.method_0(class4);
        class3.method_2(class5);
        class3.method_3(this.class98_0);
        class3.method_4(this.class135_0);
        class3.method_5(this.emptyAgileLogger_0);
        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.class21_0.TempFile4ResumedTTL;
        this.class13_0.method_2(class5);
        this.class13_0.method_3(class4);
        this.class13_0.imethod_1(0x100000);
        this.class13_0.method_4(new Class3(0x800));
        this.class13_0.method_7(this.class21_0.UseWorkThreadPool);
        this.class13_0.Initialize("_0", room2.FilePackageData);
        this.class27_0 = new Parameterized(port);
        this.class27_0.method_2(this.class21_0.CheckFileZeroSpeedSpanInSecs);
        this.class27_0.method_0(this.emptyAgileLogger_0);
        this.class27_0.method_11(this.class13_0);
        this.class27_0.method_13(room2);
        this.class27_0.method_12(this.class2_0);
        this.class27_0.method_14(class4);
        this.class27_0.method_15(class5);
        this.class27_0.method_3("_0");
        Class69 class6 = new Class69();

        class6.method_0(room2);
        class6.method_6(class5);
        class6.method_1(class4);
        class6.method_3(this.class13_0);
        class6.method_2(this.class2_0);
        class6.method_4(this.class27_0);
        this.class98_0.SomeOneDisconnected += new CbGeneric <UserData, DisconnectedType>(this.method_8);
        this.class25_0.method_6(this.class21_0.DiagnosticsEnabled ? this.class64_0 : this.ifriendsManager_0);
        this.class25_0.method_1(room5);
        this.class25_0.method_7(this.class135_0);
        this.class25_0.method_3(class4);
        this.class25_0.method_5(class5);
        this.class25_0.method_2(this.class98_0);
        this.class25_0.method_9();
        this.class139_0.SetMessageTypeRoom(room6);
        this.class139_0.method_2(class4);
        this.class139_0.method_4(class5);
        this.class139_0.method_0(this.class98_0);
        this.class139_0.SetGroupManager(this.class21_0.DiagnosticsEnabled ? this.class64_0 : this.igroupManager_0);
        this.class139_0.method_6(this.class135_0);
        this.class139_0.Init();
        this.class60_0.method_1(room7);
        this.class60_0.method_2(class4);
        this.class60_0.method_4(class5);
        this.class60_0.method_0(this.class98_0);
        this.class60_0.method_5(this.class21_0.DiagnosticsEnabled ? this.class64_0 : this.icontactsManager_0);
        this.class60_0.method_6(this.class135_0);
        this.class60_0.method_7();
        IProcess[]        processers = new IProcess[] { class7, class2, class6, class3, this.class25_0, this.class139_0, this.class60_0 };
        MessageDispatcher class9     = new MessageDispatcher(new Class144(new Class115(processers)), class8);

        class9.imethod_0(this.emptyAgileLogger_0);
        this.object_0.imethod_22(this);
        this.object_0.SetAgileLogger(this.emptyAgileLogger_0);
        this.object_0.LjXdpkRter(this.string_1);
        this.object_0.SetData(port);
        this.object_0.imethod_10(GlobalUtil.MaxLengthOfMessage);
        this.object_0.SetStreamContract(class4);
        this.object_0.imethod_12(class9);
        this.object_0.SocketSendBuffSize = this.class21_0.SocketSendBuffSize;
        this.object_0.imethod_26((this.class21_0.WriteTimeoutInSecs <= 0) ? -1 : (this.class21_0.WriteTimeoutInSecs * 0x3e8));
        this.object_0.MaxChannelCacheSize          = this.class21_0.MaxChannelCacheSize;
        this.object_0.Boolean_0                    = this.class21_0.Boolean_0;
        this.object_0.AsynConnectionEvent          = this.class21_0.AsynConnectionEvent;
        this.object_0.UncompletedSendingCount4Busy = this.class21_0.UncompletedSendingCount4Busy;
        ((BaseTcpEngine)this.object_0).method_1(new Class119(class2, this.class98_0));
        this.object_0.Initialize();
        if (this.bool_1)
        {
            this.class17_0 = new Class17(this.class98_0, new SecurityFileLogger(this.emptyAgileLogger_0));
            this.class17_0.method_2();
        }
        if (this.bool_3)
        {
            this.object_1 = this.method_9(port + 1);
        }
        this.class64_0.ieduNnurne(customizeHandler, basicHandler, this.igroupManager_0, this.ifriendsManager_0, this.icontactsManager_0);
        this.bool_0 = true;
    }