64 lines
1.4 KiB
C#

using gehGassi.Dto.Common;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using gehGassi.Domain.Common;
namespace gehGassi.Domain.Pushnotifications
{
/// <summary>
/// Repräsentiert eine Installation für ein Gerät für Pushnotifications
/// </summary>
public class DeviceInstallation
{
/// <summary>
/// Eindeutige Id des Devices am Gerät
/// </summary>
[Required]
[MaxLength(128)]
public string InstallationId { get; set; }
/// <summary>
/// Plattform
/// </summary>
[Required]
public Platform Platform { get; set; }
/// <summary>
/// Notification-Platform die verwendet werden soll
/// </summary>
[Required]
public NotificationPlatform NotificationPlatform { get; set; }
/// <summary>
/// Welcher Pushnotification-Channel wurde gebucht
/// </summary>
[Required]
[MaxLength(512)]
public string Channel { get; set; }
/// <summary>
/// Sprache am Gerät
/// </summary>
[Required]
[MaxLength(2)]
public string Language { get; set; }
/// <summary>
/// Liste der Tags für welche das Gerät registriert werden soll
/// </summary>
public List<string> Tags { get; set; }
/// <summary>
/// Erstellt eine Instanz
/// </summary>
public DeviceInstallation()
{
Tags = new List<string>();
}
}
}