using Microsoft.WindowsAzure.Storage.Table; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tango.MachineService.Security { public class RefreshTokenEntity : TableEntity where T : class { /// /// Initializes a new instance of the class. /// public RefreshTokenEntity() { } public RefreshTokenEntity(String identity, String accessToken, String refreshToken, DateTime expiration, T obj) { PartitionKey = MachineServiceConfig.REFRESH_TOKENS_TABLE_PARTITION; Identity = identity; AccessToken = accessToken; RefreshToken = refreshToken; Expiration = expiration; RefreshTokenEncoder encoder = new RefreshTokenEncoder(); Object = encoder.Encode(obj); } [IgnoreProperty] public String RefreshToken { get { return RowKey; } set { RowKey = value; } } public String Identity { get; set; } public String AccessToken { get; set; } public DateTime Expiration { get; set; } public String Object { get; set; } public T GetObject() { RefreshTokenEncoder encoder = new RefreshTokenEncoder(); return encoder.Decode(RefreshToken); } } }