big big update
This commit is contained in:
50
OwnChar/Manager/Modules/CharacterManager.cs
Normal file
50
OwnChar/Manager/Modules/CharacterManager.cs
Normal file
@@ -0,0 +1,50 @@
|
||||
using OwnChar.Api;
|
||||
using OwnChar.Model;
|
||||
|
||||
namespace OwnChar.Manager.Modules;
|
||||
|
||||
public class CharacterManager(OwnCharManager manager) : OwnCharManagerModule(manager), ICharacterManager
|
||||
{
|
||||
public IEnumerable<Character>? GetCharacters(Group? group)
|
||||
{
|
||||
Manager.CheckLogin();
|
||||
|
||||
if (group != null)
|
||||
return Manager.DataManager?.GetCharacters(Manager.CurrentUser!, group);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public IEnumerable<Character>? GetCharacters(UserProfile? profile)
|
||||
{
|
||||
Manager.CheckLogin();
|
||||
|
||||
if (profile != null)
|
||||
return Manager.DataManager?.GetCharacters(Manager.CurrentUser!, profile);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public Character? CreateCharacter(string? name)
|
||||
{
|
||||
return CreateCharacter(name, null);
|
||||
}
|
||||
|
||||
public Character? CreateCharacter(string? name, Group? destination)
|
||||
{
|
||||
ArgumentException.ThrowIfNullOrWhiteSpace(name, nameof(name));
|
||||
|
||||
Manager.CheckLogin();
|
||||
|
||||
return Manager.DataManager?.CreateCharacter(Manager.CurrentUser!, name, destination);
|
||||
}
|
||||
|
||||
public bool DeleteCharacter(Character? character)
|
||||
{
|
||||
ArgumentNullException.ThrowIfNull(character, nameof(character));
|
||||
|
||||
Manager.CheckLogin();
|
||||
|
||||
return Manager.DataManager?.DeleteCharacter(Manager.CurrentUser!, character) ?? false;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user