29 lines
839 B
C#
29 lines
839 B
C#
using Modules.Library.Core.Domain.MediaContent.Items;
|
|
|
|
namespace Modules.Library.Core.Domain.MediaContent;
|
|
|
|
public abstract class MediaContentItem : Entity, IOrderableItem, IVariantItem, ICompletable
|
|
{
|
|
[Required]
|
|
public CommonProperties.CommonProperties CommonProperties { get; set; } = default!;
|
|
|
|
public uint Order { get; private set; }
|
|
|
|
public uint Variant { get; private set; }
|
|
|
|
|
|
|
|
public bool Completed { get; private set; }
|
|
|
|
public TimeSpan ExpirationTime { get; private set; } = TimeSpan.Zero;
|
|
|
|
|
|
public void SetOrder(uint order) => Order = order;
|
|
|
|
public void SetVariant(uint variant) => Variant = variant;
|
|
|
|
|
|
public void SetCompleted() => Completed = true;
|
|
public void SetNotCompleted() => Completed = false;
|
|
public void SetExpirationTime(TimeSpan value) => ExpirationTime = value;
|
|
} |