@ -160,9 +160,9 @@ namespace Emby.Server.Implementations.Library
return Users . FirstOrDefault ( u = > string . Equals ( u . Name , name , StringComparison . OrdinalIgnoreCase ) ) ;
}
public async Task Initialize ( )
public void Initialize ( )
{
Users = await LoadUsers ( ) . ConfigureAwait ( false ) ;
Users = LoadUsers ( ) ;
var users = Users . ToList ( ) ;
@ -174,7 +174,7 @@ namespace Emby.Server.Implementations.Library
if ( ! user . ConnectLinkType . HasValue | | user . ConnectLinkType . Value = = UserLinkType . LinkedUser )
{
user . Policy . IsAdministrator = true ;
await UpdateUserPolicy ( user , user . Policy , false ) . ConfigureAwait ( false ) ;
UpdateUserPolicy ( user , user . Policy , false ) ;
}
}
}
@ -294,12 +294,12 @@ namespace Emby.Server.Implementations.Library
if ( success )
{
user . LastActivityDate = user . LastLoginDate = DateTime . UtcNow ;
await UpdateUser ( user ) . ConfigureAwait ( false ) ;
await UpdateInvalidLoginAttemptCount ( user , 0 ) . ConfigureAwait ( false ) ;
UpdateUser ( user ) ;
UpdateInvalidLoginAttemptCount ( user , 0 ) ;
}
else
{
await UpdateInvalidLoginAttemptCount ( user , user . Policy . InvalidLoginAttemptCount + 1 ) . ConfigureAwait ( false ) ;
UpdateInvalidLoginAttemptCount ( user , user . Policy . InvalidLoginAttemptCount + 1 ) ;
}
_logger . Info ( "Authentication request for {0} {1}." , user . Name , success ? "has succeeded" : "has been denied" ) ;
@ -307,7 +307,7 @@ namespace Emby.Server.Implementations.Library
return success ? user : null ;
}
private async Task UpdateInvalidLoginAttemptCount ( User user , int newValue )
private void UpdateInvalidLoginAttemptCount ( User user , int newValue )
{
if ( user . Policy . InvalidLoginAttemptCount ! = newValue | | newValue > 0 )
{
@ -327,7 +327,7 @@ namespace Emby.Server.Implementations.Library
//fireLockout = true;
}
await UpdateUserPolicy ( user , user . Policy , false ) . ConfigureAwait ( false ) ;
UpdateUserPolicy ( user , user . Policy , false ) ;
if ( fireLockout )
{
@ -372,7 +372,7 @@ namespace Emby.Server.Implementations.Library
/// Loads the users from the repository
/// </summary>
/// <returns>IEnumerable{User}.</returns>
private async Task < IEnumerable < User > > LoadUsers ( )
private List < User > LoadUsers ( )
{
var users = UserRepository . RetrieveAllUsers ( ) . ToList ( ) ;
@ -385,14 +385,14 @@ namespace Emby.Server.Implementations.Library
user . DateLastSaved = DateTime . UtcNow ;
await UserRepository . SaveUser ( user , CancellationToken . Non e) . ConfigureAwait ( fals e) ;
UserRepository . SaveUser ( user , CancellationToken . Non e) ;
users . Add ( user ) ;
user . Policy . IsAdministrator = true ;
user . Policy . EnableContentDeletion = true ;
user . Policy . EnableRemoteControlOfOtherUsers = true ;
await UpdateUserPolicy ( user , user . Policy , false ) . ConfigureAwait ( false ) ;
UpdateUserPolicy ( user , user . Policy , false ) ;
}
return users ;
@ -539,7 +539,7 @@ namespace Emby.Server.Implementations.Library
/// <param name="user">The user.</param>
/// <exception cref="System.ArgumentNullException">user</exception>
/// <exception cref="System.ArgumentException"></exception>
public async Task UpdateUser ( User user )
public void UpdateUser ( User user )
{
if ( user = = null )
{
@ -554,7 +554,7 @@ namespace Emby.Server.Implementations.Library
user . DateModified = DateTime . UtcNow ;
user . DateLastSaved = DateTime . UtcNow ;
await UserRepository . SaveUser ( user , CancellationToken . Non e) . ConfigureAwait ( fals e) ;
UserRepository . SaveUser ( user , CancellationToken . Non e) ;
OnUserUpdated ( user ) ;
}
@ -599,7 +599,7 @@ namespace Emby.Server.Implementations.Library
user . DateLastSaved = DateTime . UtcNow ;
await UserRepository . SaveUser ( user , CancellationToken . Non e) . ConfigureAwait ( fals e) ;
UserRepository . SaveUser ( user , CancellationToken . Non e) ;
EventHelper . QueueEventIfNotNull ( UserCreated , this , new GenericEventArgs < User > { Argument = user } , _logger ) ;
@ -653,7 +653,7 @@ namespace Emby.Server.Implementations.Library
{
var configPath = GetConfigurationFilePath ( user ) ;
await UserRepository . DeleteUser ( user , CancellationToken . Non e) . ConfigureAwait ( fals e) ;
UserRepository . DeleteUser ( user , CancellationToken . Non e) ;
try
{
@ -667,7 +667,7 @@ namespace Emby.Server.Implementations.Library
DeleteUserPolicy ( user ) ;
// Force this to be lazy loaded again
Users = await LoadUsers ( ) . ConfigureAwait ( false ) ;
Users = LoadUsers ( ) ;
OnUserDeleted ( user ) ;
}
@ -681,17 +681,17 @@ namespace Emby.Server.Implementations.Library
/// Resets the password by clearing it.
/// </summary>
/// <returns>Task.</returns>
public Task ResetPassword ( User user )
public void ResetPassword ( User user )
{
return ChangePassword ( user , GetSha1String ( string . Empty ) ) ;
ChangePassword ( user , GetSha1String ( string . Empty ) ) ;
}
public Task ResetEasyPassword ( User user )
public void ResetEasyPassword ( User user )
{
return ChangeEasyPassword ( user , GetSha1String ( string . Empty ) ) ;
ChangeEasyPassword ( user , GetSha1String ( string . Empty ) ) ;
}
public async Task ChangePassword ( User user , string newPasswordSha1 )
public void ChangePassword ( User user , string newPasswordSha1 )
{
if ( user = = null )
{
@ -709,12 +709,12 @@ namespace Emby.Server.Implementations.Library
user . Password = newPasswordSha1 ;
await UpdateUser ( user ) . ConfigureAwait ( false ) ;
UpdateUser ( user ) ;
EventHelper . FireEventIfNotNull ( UserPasswordChanged , this , new GenericEventArgs < User > ( user ) , _logger ) ;
}
public async Task ChangeEasyPassword ( User user , string newPasswordSha1 )
public void ChangeEasyPassword ( User user , string newPasswordSha1 )
{
if ( user = = null )
{
@ -727,7 +727,7 @@ namespace Emby.Server.Implementations.Library
user . EasyPassword = newPasswordSha1 ;
await UpdateUser ( user ) . ConfigureAwait ( false ) ;
UpdateUser ( user ) ;
EventHelper . FireEventIfNotNull ( UserPasswordChanged , this , new GenericEventArgs < User > ( user ) , _logger ) ;
}
@ -842,7 +842,7 @@ namespace Emby.Server.Implementations.Library
} ;
}
public async Task < PinRedeemResult > RedeemPasswordResetPin ( string pin )
public PinRedeemResult RedeemPasswordResetPin ( string pin )
{
DeletePinFile ( ) ;
@ -863,12 +863,12 @@ namespace Emby.Server.Implementations.Library
foreach ( var user in users )
{
await ResetPassword ( user ) . ConfigureAwait ( false ) ;
ResetPassword ( user ) ;
if ( user . Policy . IsDisabled )
{
user . Policy . IsDisabled = false ;
await UpdateUserPolicy ( user , user . Policy , tru e) . ConfigureAwait ( fals e) ;
UpdateUserPolicy ( user , user . Policy , tru e) ;
}
usersReset . Add ( user . Name ) ;
}
@ -945,13 +945,13 @@ namespace Emby.Server.Implementations.Library
}
private readonly object _policySyncLock = new object ( ) ;
public Task UpdateUserPolicy ( string userId , UserPolicy userPolicy )
public void UpdateUserPolicy ( string userId , UserPolicy userPolicy )
{
var user = GetUserById ( userId ) ;
return UpdateUserPolicy ( user , userPolicy , true ) ;
UpdateUserPolicy ( user , userPolicy , true ) ;
}
private async Task UpdateUserPolicy ( User user , UserPolicy userPolicy , bool fireEvent )
private void UpdateUserPolicy ( User user , UserPolicy userPolicy , bool fireEvent )
{
// The xml serializer will output differently if the type is not exact
if ( userPolicy . GetType ( ) ! = typeof ( UserPolicy ) )
@ -970,7 +970,7 @@ namespace Emby.Server.Implementations.Library
user . Policy = userPolicy ;
}
await UpdateConfiguration ( user , user . Configuration , tru e) . ConfigureAwait ( fals e) ;
UpdateConfiguration ( user , user . Configuration , tru e) ;
}
private void DeleteUserPolicy ( User user )
@ -1032,13 +1032,13 @@ namespace Emby.Server.Implementations.Library
}
private readonly object _configSyncLock = new object ( ) ;
public Task UpdateConfiguration ( string userId , UserConfiguration config )
public void UpdateConfiguration ( string userId , UserConfiguration config )
{
var user = GetUserById ( userId ) ;
return UpdateConfiguration ( user , config , true ) ;
UpdateConfiguration ( user , config , true ) ;
}
private async Task UpdateConfiguration ( User user , UserConfiguration config , bool fireEvent )
private void UpdateConfiguration ( User user , UserConfiguration config , bool fireEvent )
{
var path = GetConfigurationFilePath ( user ) ;