internal ConfigProvider(SiraLog siraLog, HSVConfig hsvConfig) { _siraLog = siraLog; _hsvConfig = hsvConfig; _jsonSerializerSettings = new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Include, NullValueHandling = NullValueHandling.Ignore, Formatting = Formatting.Indented, Converters = new List <JsonConverter> { new Vector3Converter() }, ContractResolver = ShouldNotSerializeContractResolver.Instance }; _hsvConfigsFolderPath = Path.Combine(UnityGame.UserDataPath, nameof(HitScoreVisualizer)); _hsvConfigsBackupFolderPath = Path.Combine(_hsvConfigsFolderPath, "Backups"); _migrationActions = new Dictionary <Version, Func <Configuration, bool> > { { new Version(2, 0, 0), RunMigration2_0_0 }, { new Version(2, 1, 0), RunMigration2_1_0 }, { new Version(2, 2, 3), RunMigration2_2_3 }, { new Version(3, 2, 0), RunMigration3_2_0 } }; _minimumMigratableVersion = _migrationActions.Keys.Min(); _maximumMigrationNeededVersion = _migrationActions.Keys.Max(); }
public void Init(IPALogger logger, PluginMetadata metadata) { Logger.log = logger; Configuration.Init(); if (metadata?.HVersion != null) { PluginVersion = metadata.HVersion; } }
private static bool CheckPluginAvailable(string pluginName, Hive.Versioning.Version minVersion) { PluginMetadata pluginMetadata = IPA.Loader.PluginManager.GetPluginFromId(pluginName); if (pluginMetadata == null) { return(false); } return(pluginMetadata.HVersion >= minVersion); }
private bool TryParseFrom(string str, StoredAs mode) { if (mode == StoredAs.SemVer) { StorageMode = StoredAs.SemVer; var result = Version.TryParse(str, out var version); SemverValue = version; return(result); } else { StringValue = str; StorageMode = StoredAs.String; return(true); } }
private Version(HVersion real) => UnderlyingVersion = real;
public AlmostVersion(Version ver) { SemverValue = ver; StorageMode = StoredAs.SemVer; }