mirror of
https://dev.azure.com/TeilRad/sharee.bike%20App/_git/Code
synced 2024-11-05 10:36:30 +01:00
74 lines
2.2 KiB
C#
74 lines
2.2 KiB
C#
using System.Collections.Generic;
|
|
|
|
namespace TINK.Model.User.Account
|
|
{
|
|
/// <summary>
|
|
/// Holds email address and password.
|
|
/// </summary>
|
|
public class AccountMutable : IAccount
|
|
{
|
|
/// <summary>
|
|
/// Holds the account data.
|
|
/// </summary>
|
|
private Account m_oAccount;
|
|
|
|
/// <summary> Prevents an invalid instance to be created. </summary>
|
|
private AccountMutable()
|
|
{
|
|
}
|
|
|
|
public AccountMutable(IAccount p_oSource)
|
|
{
|
|
m_oAccount = new Account(p_oSource);
|
|
}
|
|
|
|
public void Copy(IAccount p_oSource)
|
|
{
|
|
m_oAccount = new Account(p_oSource);
|
|
}
|
|
|
|
/// <summary>
|
|
/// Mail address.
|
|
/// </summary>
|
|
public string Mail
|
|
{
|
|
get { return m_oAccount.Mail; }
|
|
set { m_oAccount = new Account(value, m_oAccount.Pwd, m_oAccount.SessionCookie, m_oAccount.Group, m_oAccount.DebugLevel); }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Password of the account.
|
|
/// </summary>
|
|
public string Pwd
|
|
{
|
|
get { return m_oAccount.Pwd; }
|
|
set { m_oAccount = new Account(m_oAccount.Mail, value, m_oAccount.SessionCookie, m_oAccount.Group, m_oAccount.DebugLevel); }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Session cookie used to sign in to copri.
|
|
/// </summary>
|
|
public string SessionCookie
|
|
{
|
|
get { return m_oAccount.SessionCookie; }
|
|
set { m_oAccount = new Account(m_oAccount.Mail, m_oAccount.Pwd, value, m_oAccount.Group, m_oAccount.DebugLevel); }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Holds the group of the bike (TINK, Konrad, ...).
|
|
/// </summary>
|
|
public IEnumerable<string> Group
|
|
{
|
|
get { return m_oAccount.Group; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Debug level used to determine which features are available.
|
|
/// </summary>
|
|
public Permissions DebugLevel
|
|
{
|
|
get { return m_oAccount.DebugLevel; }
|
|
set { m_oAccount = new Account(m_oAccount.Mail, m_oAccount.Pwd, m_oAccount.SessionCookie, m_oAccount.Group, value); }
|
|
}
|
|
}
|
|
}
|