BuildIt.Config.Core.Services.ConfigurationHelpers.CheckMinimumVersion C# (CSharp) Method

CheckMinimumVersion() public static method

public static CheckMinimumVersion ( this configurationService, bool retrieveCached = false, string minVerKey = Constants.AppConfigurationMinVersionKey ) : Task
configurationService this
retrieveCached bool
minVerKey string
return Task
        public static async Task<bool> CheckMinimumVersion(this IAppConfigurationService configurationService, bool retrieveCached = false, string minVerKey = Constants.AppConfigurationMinVersionKey)
        {
            if (configurationService == null) return false;

            configurationService.Mapper.EnsurePresence(minVerKey, true);
            var appConfig = await configurationService.LoadAppConfig(false, retrieveCached);
            if (appConfig == null) return false;

            var minimumVersionMappedValue = appConfig.GetValueForKey<string>(minVerKey);
            var appVerFromPlatform = configurationService.VersionService?.GetVersion();

            if (appVerFromPlatform == null || minimumVersionMappedValue == null)
            {
                return false;
            }

            // Check the minimum required version first
            Version versionToCheck;
            return !Version.TryParse(minimumVersionMappedValue, out versionToCheck) || versionToCheck <= appVerFromPlatform;
        }