AdvancedLauncher.Management.Internal.UpdateManager.CheckUpdates C# (CSharp) Method

CheckUpdates() public method

public CheckUpdates ( GameModel model ) : VersionPair
model AdvancedLauncher.SDK.Model.Config.GameModel
return AdvancedLauncher.SDK.Model.VersionPair
        public VersionPair CheckUpdates(GameModel model)
        {
            if (model == null) {
                throw new ArgumentException("model argument cannot be null");
            }
            string versionFile = ConfigurationManager.GetLocalVersionFile(model);
            if (File.Exists(ConfigurationManager.GetLocalVersionFile(model))) {
                int verCurrent = -1;
                int verRemote = -1;

                using (StreamReader streamReader = new StreamReader(versionFile)) {
                    verCurrent = GetVersion(streamReader.ReadToEnd());
                }

                using (WebClientEx webClient = new WebClientEx()) {
                    string result;
                    try {
                        result = webClient.DownloadString(ConfigurationManager.GetConfiguration(model).VersionRemoteURL);
                        verRemote = GetVersion(result);
                    } catch {
                        return null;
                    }

                    if (verRemote < 0 || verCurrent < 0) {
                        return null;
                    }
                    return new VersionPair(verCurrent, verRemote);
                }
            }
            return null;
        }