added a notifications service

This commit is contained in:
Luke Pulverenti
2013-07-06 17:23:32 -04:00
parent b3054a6a22
commit 53450bd514
36 changed files with 1368 additions and 114 deletions

View File

@@ -59,6 +59,11 @@
<Compile Include="Net\WebSocketMessage.cs" />
<Compile Include="Net\WebSocketMessageType.cs" />
<Compile Include="Net\WebSocketState.cs" />
<Compile Include="Notifications\Notification.cs" />
<Compile Include="Notifications\NotificationLevel.cs" />
<Compile Include="Notifications\NotificationQuery.cs" />
<Compile Include="Notifications\NotificationResult.cs" />
<Compile Include="Notifications\NotificationsSummary.cs" />
<Compile Include="Querying\ArtistsQuery.cs" />
<Compile Include="Querying\ItemReviewsResult.cs" />
<Compile Include="Querying\ItemsByNameQuery.cs" />

View File

@@ -0,0 +1,33 @@
using System;
namespace MediaBrowser.Model.Notifications
{
public class Notification
{
public Guid Id { get; set; }
public Guid UserId { get; set; }
public DateTime Date { get; set; }
public bool IsRead { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public string Url { get; set; }
public string Category { get; set; }
public string RelatedId { get; set; }
public NotificationLevel Level { get; set; }
public Notification()
{
Id = Guid.NewGuid();
Date = DateTime.UtcNow;
}
}
}

View File

@@ -0,0 +1,10 @@

namespace MediaBrowser.Model.Notifications
{
public enum NotificationLevel
{
Normal,
Warning,
Error
}
}

View File

@@ -0,0 +1,15 @@
using System;
namespace MediaBrowser.Model.Notifications
{
public class NotificationQuery
{
public Guid? UserId { get; set; }
public bool? IsRead { get; set; }
public int? StartIndex { get; set; }
public int? Limit { get; set; }
}
}

View File

@@ -0,0 +1,9 @@

namespace MediaBrowser.Model.Notifications
{
public class NotificationResult
{
public Notification[] Notifications { get; set; }
public int TotalRecordCount { get; set; }
}
}

View File

@@ -0,0 +1,9 @@

namespace MediaBrowser.Model.Notifications
{
public class NotificationsSummary
{
public int UnreadCount { get; set; }
public NotificationLevel MaxUnreadNotificationLevel { get; set; }
}
}

View File

@@ -36,5 +36,11 @@ namespace MediaBrowser.Model.Tasks
/// </summary>
/// <value>The id.</value>
public Guid Id { get; set; }
/// <summary>
/// Gets or sets the error message.
/// </summary>
/// <value>The error message.</value>
public string ErrorMessage { get; set; }
}
}