Initial commit carried over from private repo. This is V2.
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
namespace MessengerApi.Db.Contracts.Entities
|
||||
{
|
||||
public interface IEntity
|
||||
{
|
||||
Guid Id { get; }
|
||||
}
|
||||
|
||||
public interface IEntity<T> : IEntity where T : class, IEntity
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
using MessengerApi.Db.Contracts.Entities;
|
||||
|
||||
namespace MessengerApi.Db.Entities
|
||||
{
|
||||
public class Message : IEntity<Message>
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public DateTime CreatedUtc { get; set; }
|
||||
|
||||
public Guid FromId { get; set; }
|
||||
|
||||
public Guid ToId { get; set; }
|
||||
|
||||
public bool IsDelivered { get; set; }
|
||||
|
||||
public bool IsAcknowledged { get; set; }
|
||||
|
||||
public string PayloadType { get; set; }
|
||||
|
||||
public string Payload { get; set; }
|
||||
|
||||
public int? PayloadLifespanInSeconds { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using MessengerApi.Db.Contracts.Entities;
|
||||
|
||||
namespace MessengerApi.Db.Entities
|
||||
{
|
||||
public class User : IEntity<User>
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public Guid ApiKey { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
|
||||
public bool IsEnabled { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using MessengerApi.Db.Contracts.Entities;
|
||||
|
||||
namespace MessengerApi.Db.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// Describes allowed message route (who can message whom).
|
||||
/// </summary>
|
||||
public class UserRoute : IEntity<UserRoute>
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public User From { get; set; }
|
||||
|
||||
public User To { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user