diff options
| author | Patrick Barron <barronpm@gmail.com> | 2023-10-06 15:35:26 -0400 |
|---|---|---|
| committer | Patrick Barron <barronpm@gmail.com> | 2023-10-06 15:35:26 -0400 |
| commit | 0e51ffa16983e6133d6b6ea295d84b0121241d79 (patch) | |
| tree | 9baa8f4128ded52562181d7fa27120d893bb42e7 /MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs | |
| parent | 8a7a1cc72337a5190ac093a471c2bf3369022be2 (diff) | |
Add TryReadInt to XmlReaderExtensions
Diffstat (limited to 'MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs')
| -rw-r--r-- | MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs | 41 |
1 files changed, 14 insertions, 27 deletions
diff --git a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs index af405d7559..eb7c021426 100644 --- a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs +++ b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs @@ -325,20 +325,16 @@ namespace MediaBrowser.XbmcMetadata.Parsers } case "playcount": + if (reader.TryReadInt(out var count) + && Guid.TryParse(nfoConfiguration.UserId, out var playCountUserId)) { - var val = reader.ReadElementContentAsString(); - if (int.TryParse(val, NumberStyles.Integer, CultureInfo.InvariantCulture, out var count) - && Guid.TryParse(nfoConfiguration.UserId, out var playCountUserId)) - { - var user = _userManager.GetUserById(playCountUserId); - userData = _userDataManager.GetUserData(user, item); - userData.PlayCount = count; - _userDataManager.SaveUserData(user, item, userData, UserDataSaveReason.Import, CancellationToken.None); - } - - break; + var user = _userManager.GetUserById(playCountUserId); + userData = _userDataManager.GetUserData(user, item); + userData.PlayCount = count; + _userDataManager.SaveUserData(user, item, userData, UserDataSaveReason.Import, CancellationToken.None); } + break; case "lastplayed": if (reader.TryReadDateTime(Logger, out var lastPlayed) && Guid.TryParse(nfoConfiguration.UserId, out var lastPlayedUserId)) @@ -398,17 +394,13 @@ namespace MediaBrowser.XbmcMetadata.Parsers item.CustomRating = reader.ReadNormalizedString(); break; case "runtime": + var runtimeText = reader.ReadElementContentAsString(); + if (int.TryParse(runtimeText.AsSpan().LeftPart(' '), NumberStyles.Integer, CultureInfo.InvariantCulture, out var runtime)) { - var text = reader.ReadElementContentAsString(); - - if (int.TryParse(text.AsSpan().LeftPart(' '), NumberStyles.Integer, CultureInfo.InvariantCulture, out var runtime)) - { - item.RunTimeTicks = TimeSpan.FromMinutes(runtime).Ticks; - } - - break; + item.RunTimeTicks = TimeSpan.FromMinutes(runtime).Ticks; } + break; case "aspectratio": var aspectRatio = reader.ReadNormalizedString(); if (!string.IsNullOrEmpty(aspectRatio) && item is IHasAspectRatio hasAspectRatio) @@ -502,17 +494,12 @@ namespace MediaBrowser.XbmcMetadata.Parsers break; case "year": + if (reader.TryReadInt(out var productionYear) && productionYear > 1850) { - var val = reader.ReadElementContentAsString(); - - if (int.TryParse(val, out var productionYear) && productionYear > 1850) - { - item.ProductionYear = productionYear; - } - - break; + item.ProductionYear = productionYear; } + break; case "rating": { var rating = reader.ReadElementContentAsString(); |
