Ejemplo n.º 1
0
        internal static async Task GetMappingAsync(Model.Version version, Side side)
        {
            FileDownloadervar = new FileDownloader();

            FileDownloadervar.DownloadProgressChanged += (sender, e) =>
            {
                MappingDownloadProgressChanged.Invoke(sender, e);
                Debug.WriteLine(e.ProgressPercentage);
            };
            FileDownloadervar.DownloadFileCompleted += (sender, e) =>
            {
                if (e.State == CompletedState.Succeeded)
                {
                    Debug.WriteLine("download mapping success");
                    MappingDownloadCompleted.Invoke(sender, e);
                }
                else
                {
                    Debug.WriteLine("download mapping failed");
                }
            };

            VersionInfo versioninfo = await Json.GetWebRequestObjectAsync <VersionInfo>(version.JsonUrl);

            VersioninfoCache = versioninfo;

            if (side == Side.Client)
            {
                FileDownloadervar.DownloadFileAsync(versioninfo.Downloads.ClientMappings.url, WorkingFile.MappingInfoTxt);
            }
            else
            {
                FileDownloadervar.DownloadFileAsync(versioninfo.Downloads.ServerMappings.url, WorkingFile.MappingInfoTxt);
            }
        }
Ejemplo n.º 2
0
 internal static async void ExcuteDecompileAysnc(Model.Version version, Side side)
 {
     Version = version;
     Side    = side;
     FileHelper.LoadSpecialSourceLib();
     FileHelper.LoadCFRLib();
     MappingService.MappingDownloadCompleted       += MappingService_MappingDownloadCompleted;
     MappingService.MappingDownloadProgressChanged += MappingService_MappingDownloadProgressChanged;
     await MappingService.GetMappingAsync(version, side);
 }
Ejemplo n.º 3
0
        public static Model.Version GetVersion()
        {
            DAL.VersionDSTableAdapters.VersionTableAdapter adapter = new DAL.VersionDSTableAdapters.VersionTableAdapter();
            VersionDS.VersionDataTable table = adapter.GetVersion();
            if (table.Rows.Count == 0)
            {
                return(null);
            }

            Model.Version version = GetVersionFromRow(table[0]);
            return(version);
        }
Ejemplo n.º 4
0
        private HastyPacket ConnectPacket()
        {
            var writer    = new OctetWriter();
            var outStream = new StreamWriter(writer);

            var protocolVersion = new Model.Version(0, 0, 1);
            var cmd             = new ConnectCommand(protocolVersion, realm);

            ConnectSerializer.SerializeConnect(outStream, cmd);
            var payload = writer.Close();

            var packet = PacketCreator.Create(Commands.Connect, payload);

            return(packet);
        }
Ejemplo n.º 5
0
        // Getting class lastest version info
        private Model.Version GetLastestVersionByType(Type type)
        {
            var attribute = type.GetCustomAttributes(attributeType, false).First() as VersionControlAttribute;

            Model.Version resultVersion = new Model.Version();

            ConfigStartupVersionState(attribute, resultVersion);

            var methodsOfClass = FindMethodsWithAttribute(type);

            foreach (var method in methodsOfClass)
            {
                attribute = method.GetCustomAttributes(attributeType, false).First() as VersionControlAttribute;

                if (attribute.commitDateTime > resultVersion.date)
                {
                   ConfigStartupVersionState(attribute, resultVersion);
                }
            }

            return resultVersion;
        }