mirror of
https://github.com/osukey/osukey.git
synced 2025-05-29 17:37:23 +09:00
Avoid using parameterless constructors in migration code
Minor performance improvement (less garbage).
This commit is contained in:
parent
42736c9995
commit
fd5198d667
@ -122,7 +122,10 @@ namespace osu.Game.Database
|
|||||||
|
|
||||||
foreach (var beatmap in beatmapSet.Beatmaps)
|
foreach (var beatmap in beatmapSet.Beatmaps)
|
||||||
{
|
{
|
||||||
var realmBeatmap = new BeatmapInfo
|
var ruleset = realm.Find<RulesetInfo>(beatmap.RulesetInfo.ShortName);
|
||||||
|
var metadata = getBestMetadata(beatmap.Metadata, beatmapSet.Metadata);
|
||||||
|
|
||||||
|
var realmBeatmap = new BeatmapInfo(ruleset, new BeatmapDifficulty(beatmap.BaseDifficulty), metadata)
|
||||||
{
|
{
|
||||||
DifficultyName = beatmap.DifficultyName,
|
DifficultyName = beatmap.DifficultyName,
|
||||||
Status = beatmap.Status,
|
Status = beatmap.Status,
|
||||||
@ -148,9 +151,6 @@ namespace osu.Game.Database
|
|||||||
CountdownOffset = beatmap.CountdownOffset,
|
CountdownOffset = beatmap.CountdownOffset,
|
||||||
MaxCombo = beatmap.MaxCombo,
|
MaxCombo = beatmap.MaxCombo,
|
||||||
Bookmarks = beatmap.Bookmarks,
|
Bookmarks = beatmap.Bookmarks,
|
||||||
Ruleset = realm.Find<RulesetInfo>(beatmap.RulesetInfo.ShortName),
|
|
||||||
Difficulty = new BeatmapDifficulty(beatmap.BaseDifficulty),
|
|
||||||
Metadata = getBestMetadata(beatmap.Metadata, beatmapSet.Metadata),
|
|
||||||
BeatmapSet = realmBeatmapSet,
|
BeatmapSet = realmBeatmapSet,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -180,7 +180,7 @@ namespace osu.Game.Database
|
|||||||
TitleUnicode = metadata.TitleUnicode,
|
TitleUnicode = metadata.TitleUnicode,
|
||||||
Artist = metadata.Artist,
|
Artist = metadata.Artist,
|
||||||
ArtistUnicode = metadata.ArtistUnicode,
|
ArtistUnicode = metadata.ArtistUnicode,
|
||||||
Author = new RealmUser
|
Author =
|
||||||
{
|
{
|
||||||
OnlineID = metadata.Author.Id,
|
OnlineID = metadata.Author.Id,
|
||||||
Username = metadata.Author.Username,
|
Username = metadata.Author.Username,
|
||||||
@ -248,7 +248,15 @@ namespace osu.Game.Database
|
|||||||
Logger.Log($"Migrated {written}/{count} scores...", LoggingTarget.Database);
|
Logger.Log($"Migrated {written}/{count} scores...", LoggingTarget.Database);
|
||||||
}
|
}
|
||||||
|
|
||||||
var realmScore = new ScoreInfo
|
var beatmap = realm.All<BeatmapInfo>().First(b => b.Hash == score.BeatmapInfo.Hash);
|
||||||
|
var ruleset = realm.Find<RulesetInfo>(score.Ruleset.ShortName);
|
||||||
|
var user = new RealmUser
|
||||||
|
{
|
||||||
|
OnlineID = score.User.OnlineID,
|
||||||
|
Username = score.User.Username
|
||||||
|
};
|
||||||
|
|
||||||
|
var realmScore = new ScoreInfo(beatmap, ruleset, user)
|
||||||
{
|
{
|
||||||
Hash = score.Hash,
|
Hash = score.Hash,
|
||||||
DeletePending = score.DeletePending,
|
DeletePending = score.DeletePending,
|
||||||
@ -262,8 +270,8 @@ namespace osu.Game.Database
|
|||||||
HasReplay = ((IScoreInfo)score).HasReplay,
|
HasReplay = ((IScoreInfo)score).HasReplay,
|
||||||
Date = score.Date,
|
Date = score.Date,
|
||||||
PP = score.PP,
|
PP = score.PP,
|
||||||
BeatmapInfo = realm.All<BeatmapInfo>().First(b => b.Hash == score.BeatmapInfo.Hash),
|
BeatmapInfo = beatmap,
|
||||||
Ruleset = realm.Find<RulesetInfo>(score.Ruleset.ShortName),
|
Ruleset = ruleset,
|
||||||
Rank = score.Rank,
|
Rank = score.Rank,
|
||||||
HitEvents = score.HitEvents,
|
HitEvents = score.HitEvents,
|
||||||
Passed = score.Passed,
|
Passed = score.Passed,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user