Domain entities now inheriting from abstract entity

This commit is contained in:
Veljko Tosic
2026-02-11 02:21:25 +01:00
parent a4245fdd93
commit b54c72bb42
4 changed files with 17 additions and 18 deletions

View File

@@ -1,3 +1,4 @@
using AipsCore.Domain.Abstract;
using AipsCore.Domain.Common.ValueObjects; using AipsCore.Domain.Common.ValueObjects;
using AipsCore.Domain.Models.Shape.Enums; using AipsCore.Domain.Models.Shape.Enums;
using AipsCore.Domain.Models.Shape.ValueObjects; using AipsCore.Domain.Models.Shape.ValueObjects;
@@ -6,10 +7,8 @@ using AipsCore.Domain.Models.Whiteboard.ValueObjects;
namespace AipsCore.Domain.Models.Shape; namespace AipsCore.Domain.Models.Shape;
public abstract class Shape public abstract class Shape : DomainEntity<ShapeId>
{ {
public ShapeId Id { get; init; }
public WhiteboardId WhiteboardId { get; private set; } public WhiteboardId WhiteboardId { get; private set; }
public UserId AuthorId { get; private set; } public UserId AuthorId { get; private set; }
@@ -21,8 +20,8 @@ public abstract class Shape
public Color Color { get; private set; } public Color Color { get; private set; }
protected Shape(ShapeId id, WhiteboardId whiteboardId, UserId authorId, Position position, Color color) protected Shape(ShapeId id, WhiteboardId whiteboardId, UserId authorId, Position position, Color color)
: base(id)
{ {
Id = id;
Position = position; Position = position;
Color = color; Color = color;
AuthorId = authorId; AuthorId = authorId;
@@ -35,10 +34,10 @@ public abstract class Shape
int positionX, int positionY, int positionX, int positionY,
string color, UserId authorId) string color, UserId authorId)
{ {
AuthorId = authorId;
Id = new ShapeId(id); Id = new ShapeId(id);
Position = new Position(positionX, positionY); Position = new Position(positionX, positionY);
Color = new Color(color); Color = new Color(color);
AuthorId = authorId;
WhiteboardId = new WhiteboardId(whiteboardId); WhiteboardId = new WhiteboardId(whiteboardId);
} }
} }

View File

@@ -1,19 +1,19 @@
using AipsCore.Domain.Common.ValueObjects; using AipsCore.Domain.Abstract;
using AipsCore.Domain.Common.ValueObjects;
using AipsCore.Domain.Models.User.ValueObjects; using AipsCore.Domain.Models.User.ValueObjects;
namespace AipsCore.Domain.Models.User; namespace AipsCore.Domain.Models.User;
public class User public class User : DomainEntity<UserId>
{ {
public UserId Id { get; private set; }
public Email Email { get; private set; } public Email Email { get; private set; }
public Username Username { get; private set; } public Username Username { get; private set; }
public UserCreatedAt CreatedAt { get; private set; } public UserCreatedAt CreatedAt { get; private set; }
public UserDeletedAt DeletedAt { get; private set; } public UserDeletedAt DeletedAt { get; private set; }
public User(UserId id, Email email, Username username, UserCreatedAt createdAt, UserDeletedAt deletedAt) public User(UserId id, Email email, Username username, UserCreatedAt createdAt, UserDeletedAt deletedAt)
: base(id)
{ {
Id = id;
Email = email; Email = email;
Username = username; Username = username;
CreatedAt = createdAt; CreatedAt = createdAt;

View File

@@ -1,12 +1,12 @@
using AipsCore.Domain.Models.User.ValueObjects; using AipsCore.Domain.Abstract;
using AipsCore.Domain.Models.User.ValueObjects;
using AipsCore.Domain.Models.Whiteboard.Enums; using AipsCore.Domain.Models.Whiteboard.Enums;
using AipsCore.Domain.Models.Whiteboard.ValueObjects; using AipsCore.Domain.Models.Whiteboard.ValueObjects;
namespace AipsCore.Domain.Models.Whiteboard; namespace AipsCore.Domain.Models.Whiteboard;
public class Whiteboard public class Whiteboard : DomainEntity<WhiteboardId>
{ {
public WhiteboardId Id { get; private set; }
public UserId WhiteboardOwnerId { get; private set; } public UserId WhiteboardOwnerId { get; private set; }
public WhiteboardCode Code { get; private set; } public WhiteboardCode Code { get; private set; }
public WhiteboardTitle Title { get; private set; } public WhiteboardTitle Title { get; private set; }
@@ -26,8 +26,8 @@ public class Whiteboard
WhiteboardMaxParticipants maxParticipants, WhiteboardMaxParticipants maxParticipants,
WhiteboardJoinPolicy joinPolicy, WhiteboardJoinPolicy joinPolicy,
WhiteboardState state) WhiteboardState state)
: base(id)
{ {
Id = id;
WhiteboardOwnerId = whiteboardOwner.Id; WhiteboardOwnerId = whiteboardOwner.Id;
Code = code; Code = code;
Title = title; Title = title;
@@ -48,8 +48,8 @@ public class Whiteboard
WhiteboardMaxParticipants maxParticipants, WhiteboardMaxParticipants maxParticipants,
WhiteboardJoinPolicy joinPolicy, WhiteboardJoinPolicy joinPolicy,
WhiteboardState state) WhiteboardState state)
: base(id)
{ {
Id = id;
WhiteboardOwnerId = whiteboardOwnerId; WhiteboardOwnerId = whiteboardOwnerId;
Code = code; Code = code;
Title = title; Title = title;

View File

@@ -1,12 +1,12 @@
using AipsCore.Domain.Abstract;
using AipsCore.Domain.Models.User.ValueObjects; using AipsCore.Domain.Models.User.ValueObjects;
using AipsCore.Domain.Models.Whiteboard.ValueObjects; using AipsCore.Domain.Models.Whiteboard.ValueObjects;
using AipsCore.Domain.Models.WhiteboardMembership.ValueObjects; using AipsCore.Domain.Models.WhiteboardMembership.ValueObjects;
namespace AipsCore.Domain.Models.WhiteboardMembership; namespace AipsCore.Domain.Models.WhiteboardMembership;
public class WhiteboardMembership public class WhiteboardMembership : DomainEntity<WhiteboardMembershipId>
{ {
public WhiteboardMembershipId Id { get; private set; }
public WhiteboardId WhiteboardId { get; private set; } public WhiteboardId WhiteboardId { get; private set; }
public UserId UserId { get; private set; } public UserId UserId { get; private set; }
public WhiteboardMembershipIsBanned IsBanned { get; private set; } public WhiteboardMembershipIsBanned IsBanned { get; private set; }
@@ -22,8 +22,8 @@ public class WhiteboardMembership
WhiteboardMembershipEditingEnabled editingEnabled, WhiteboardMembershipEditingEnabled editingEnabled,
WhiteboardMembershipCanJoin canJoin, WhiteboardMembershipCanJoin canJoin,
WhiteboardMembershipLastInteractedAt lastInteractedAt) WhiteboardMembershipLastInteractedAt lastInteractedAt)
: base(id)
{ {
Id = id;
WhiteboardId = owner.Id; WhiteboardId = owner.Id;
UserId = user.Id; UserId = user.Id;
IsBanned = isBanned; IsBanned = isBanned;
@@ -40,8 +40,8 @@ public class WhiteboardMembership
WhiteboardMembershipEditingEnabled editingEnabled, WhiteboardMembershipEditingEnabled editingEnabled,
WhiteboardMembershipCanJoin canJoin, WhiteboardMembershipCanJoin canJoin,
WhiteboardMembershipLastInteractedAt lastInteractedAt) WhiteboardMembershipLastInteractedAt lastInteractedAt)
: base(id)
{ {
Id = id;
WhiteboardId = ownerId; WhiteboardId = ownerId;
UserId = userId; UserId = userId;
IsBanned = isBanned; IsBanned = isBanned;