From fef35d0505c6485954b1eb233a5ea67e33fe1138 Mon Sep 17 00:00:00 2001 From: Bond_009 Date: Sun, 20 Oct 2019 21:12:03 +0200 Subject: Add clearer exceptions, warnings and docs --- .../Library/DefaultAuthenticationProvider.cs | 5 ++++- Emby.Server.Implementations/Library/UserManager.cs | 20 ++++++-------------- .../Library/UserViewManager.cs | 20 ++++++++++---------- 3 files changed, 20 insertions(+), 25 deletions(-) (limited to 'Emby.Server.Implementations/Library') diff --git a/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs b/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs index c95b00ede..a1143471d 100644 --- a/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs +++ b/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs @@ -59,7 +59,10 @@ namespace Emby.Server.Implementations.Library if (_cryptographyProvider.GetSupportedHashMethods().Contains(readyHash.Id) || _cryptographyProvider.DefaultHashMethod == readyHash.Id) { - byte[] calculatedHash = _cryptographyProvider.ComputeHash(readyHash.Id, passwordbytes, readyHash.Salt); + byte[] calculatedHash = _cryptographyProvider.ComputeHash( + readyHash.Id, + passwordbytes, + readyHash.Salt); if (calculatedHash.SequenceEqual(readyHash.Hash)) { diff --git a/Emby.Server.Implementations/Library/UserManager.cs b/Emby.Server.Implementations/Library/UserManager.cs index 52b2f56ff..3d1030d4b 100644 --- a/Emby.Server.Implementations/Library/UserManager.cs +++ b/Emby.Server.Implementations/Library/UserManager.cs @@ -179,12 +179,7 @@ namespace Emby.Server.Implementations.Library _defaultPasswordResetProvider = passwordResetProviders.OfType().First(); } - /// - /// Gets a User by Id. - /// - /// The id. - /// User. - /// + /// public User GetUserById(Guid id) { if (id == Guid.Empty) @@ -196,11 +191,7 @@ namespace Emby.Server.Implementations.Library return user; } - /// - /// Gets the user by identifier. - /// - /// The identifier. - /// User. + /// public User GetUserById(string id) => GetUserById(new Guid(id)); @@ -428,7 +419,6 @@ namespace Emby.Server.Implementations.Library { try { - var authenticationResult = provider is IRequiresResolvedUser requiresResolvedUser ? await requiresResolvedUser.Authenticate(username, password, resolvedUser).ConfigureAwait(false) : await provider.Authenticate(username, password).ConfigureAwait(false); @@ -538,6 +528,8 @@ namespace Emby.Server.Implementations.Library defaultName = "MyJellyfinUser"; } + _logger.LogWarning("No users, creating one with username {UserName}", defaultName); + var name = MakeValidUsername(defaultName); var user = InstantiateNewUser(name); @@ -601,7 +593,7 @@ namespace Emby.Server.Implementations.Library catch (Exception ex) { // Have to use a catch-all unfortunately because some .net image methods throw plain Exceptions - _logger.LogError(ex, "Error generating PrimaryImageAspectRatio for {user}", user.Name); + _logger.LogError(ex, "Error generating PrimaryImageAspectRatio for {User}", user.Name); } } @@ -625,7 +617,7 @@ namespace Emby.Server.Implementations.Library } catch (Exception ex) { - _logger.LogError(ex, "Error getting {imageType} image info for {imagePath}", image.Type, image.Path); + _logger.LogError(ex, "Error getting {ImageType} image info for {ImagePath}", image.Type, image.Path); return null; } } diff --git a/Emby.Server.Implementations/Library/UserViewManager.cs b/Emby.Server.Implementations/Library/UserViewManager.cs index 88e2a8fa6..474884e42 100644 --- a/Emby.Server.Implementations/Library/UserViewManager.cs +++ b/Emby.Server.Implementations/Library/UserViewManager.cs @@ -42,6 +42,11 @@ namespace Emby.Server.Implementations.Library { var user = _userManager.GetUserById(query.UserId); + if (user == null) + { + throw new ArgumentException("User Id does not exists.", nameof(query)); + } + var folders = _libraryManager.GetUserRootFolder() .GetChildren(user, true) .OfType() @@ -54,7 +59,7 @@ namespace Emby.Server.Implementations.Library foreach (var folder in folders) { var collectionFolder = folder as ICollectionFolder; - var folderViewType = collectionFolder == null ? null : collectionFolder.CollectionType; + var folderViewType = collectionFolder?.CollectionType; if (UserView.IsUserSpecific(folder)) { @@ -130,16 +135,11 @@ namespace Emby.Server.Implementations.Library { var index = orders.IndexOf(i.Id.ToString("N", CultureInfo.InvariantCulture)); - if (index == -1) + if (index == -1 + && i is UserView view + && view.DisplayParentId != Guid.Empty) { - var view = i as UserView; - if (view != null) - { - if (!view.DisplayParentId.Equals(Guid.Empty)) - { - index = orders.IndexOf(view.DisplayParentId.ToString("N", CultureInfo.InvariantCulture)); - } - } + index = orders.IndexOf(view.DisplayParentId.ToString("N", CultureInfo.InvariantCulture)); } return index == -1 ? int.MaxValue : index; -- cgit v1.2.3 From 24c076eff300726f55ee856a230c0c6a25c462de Mon Sep 17 00:00:00 2001 From: Bond-009 Date: Tue, 29 Oct 2019 17:50:01 +0100 Subject: Update Emby.Server.Implementations/Library/UserViewManager.cs Co-Authored-By: dkanada --- Emby.Server.Implementations/Library/UserViewManager.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Emby.Server.Implementations/Library') diff --git a/Emby.Server.Implementations/Library/UserViewManager.cs b/Emby.Server.Implementations/Library/UserViewManager.cs index 474884e42..620d2f083 100644 --- a/Emby.Server.Implementations/Library/UserViewManager.cs +++ b/Emby.Server.Implementations/Library/UserViewManager.cs @@ -44,7 +44,7 @@ namespace Emby.Server.Implementations.Library if (user == null) { - throw new ArgumentException("User Id does not exists.", nameof(query)); + throw new ArgumentException("User Id does not exist.", nameof(query)); } var folders = _libraryManager.GetUserRootFolder() -- cgit v1.2.3 From d7335f6ae6c9cb2b5000ca9be9c8b7f6f268af2a Mon Sep 17 00:00:00 2001 From: Bond_009 Date: Fri, 22 Nov 2019 17:02:28 +0100 Subject: Reword exception message --- Emby.Server.Implementations/Library/UserViewManager.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Emby.Server.Implementations/Library') diff --git a/Emby.Server.Implementations/Library/UserViewManager.cs b/Emby.Server.Implementations/Library/UserViewManager.cs index 620d2f083..9c9977642 100644 --- a/Emby.Server.Implementations/Library/UserViewManager.cs +++ b/Emby.Server.Implementations/Library/UserViewManager.cs @@ -44,7 +44,7 @@ namespace Emby.Server.Implementations.Library if (user == null) { - throw new ArgumentException("User Id does not exist.", nameof(query)); + throw new ArgumentException("User Id specified in the query does not exist.", nameof(query)); } var folders = _libraryManager.GetUserRootFolder() -- cgit v1.2.3