aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorMichalis Adamidis <gsnerf@gsnerf.de>2014-09-15 02:20:45 +0200
committerMichalis Adamidis <gsnerf@gsnerf.de>2014-09-15 02:20:45 +0200
commit671d302a92f79ec9c65dbae9c46a342038bfee96 (patch)
tree4b48ad27a1f01dff2e2e07aef8975fed2cb6d71e /MediaBrowser.Controller
parent7690608ed578d3c1dbf3849122107af503855a81 (diff)
parent6babe4f5103c83d75da1924027f6e13aea165085 (diff)
Merge branch 'master' of https://github.com/MediaBrowser/MediaBrowser
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Connect/ConnectInvitationRequest.cs20
-rw-r--r--MediaBrowser.Controller/Connect/ConnectUser.cs8
-rw-r--r--MediaBrowser.Controller/Connect/ConnectUserLink.cs10
-rw-r--r--MediaBrowser.Controller/Connect/IConnectManager.cs9
-rw-r--r--MediaBrowser.Controller/Connect/UserLinkResult.cs8
-rw-r--r--MediaBrowser.Controller/Entities/User.cs2
-rw-r--r--MediaBrowser.Controller/MediaBrowser.Controller.csproj3
-rw-r--r--MediaBrowser.Controller/Net/AuthenticatedAttribute.cs9
-rw-r--r--MediaBrowser.Controller/Net/IAuthService.cs7
9 files changed, 28 insertions, 48 deletions
diff --git a/MediaBrowser.Controller/Connect/ConnectInvitationRequest.cs b/MediaBrowser.Controller/Connect/ConnectInvitationRequest.cs
deleted file mode 100644
index 91516723b..000000000
--- a/MediaBrowser.Controller/Connect/ConnectInvitationRequest.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-namespace MediaBrowser.Controller.Connect
-{
- public class ConnectInvitationRequest
- {
- public string LocalUserId { get; set; }
-
- public string Username { get; set; }
-
- public string RequesterUserId { get; set; }
-
- public ConnectUserType Type { get; set; }
- }
-
- public enum ConnectUserType
- {
- LinkedUser = 1,
- Guest = 2
- }
-}
diff --git a/MediaBrowser.Controller/Connect/ConnectUser.cs b/MediaBrowser.Controller/Connect/ConnectUser.cs
index c640f9095..389330cec 100644
--- a/MediaBrowser.Controller/Connect/ConnectUser.cs
+++ b/MediaBrowser.Controller/Connect/ConnectUser.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
+
namespace MediaBrowser.Controller.Connect
{
public class ConnectUser
@@ -11,6 +6,7 @@ namespace MediaBrowser.Controller.Connect
public string Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
+ public bool IsActive { get; set; }
}
public class ConnectUserQuery
diff --git a/MediaBrowser.Controller/Connect/ConnectUserLink.cs b/MediaBrowser.Controller/Connect/ConnectUserLink.cs
deleted file mode 100644
index 93de6d8b4..000000000
--- a/MediaBrowser.Controller/Connect/ConnectUserLink.cs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-namespace MediaBrowser.Controller.Connect
-{
- public class ConnectUserLink
- {
- public string Username { get; set; }
- public string UserId { get; set; }
- public string LocalUserId { get; set; }
- }
-}
diff --git a/MediaBrowser.Controller/Connect/IConnectManager.cs b/MediaBrowser.Controller/Connect/IConnectManager.cs
index 6c2128cd3..7c1e14c30 100644
--- a/MediaBrowser.Controller/Connect/IConnectManager.cs
+++ b/MediaBrowser.Controller/Connect/IConnectManager.cs
@@ -11,19 +11,12 @@ namespace MediaBrowser.Controller.Connect
string WanApiAddress { get; }
/// <summary>
- /// Gets the user information.
- /// </summary>
- /// <param name="userId">The user identifier.</param>
- /// <returns>ConnectUserInfo.</returns>
- ConnectUserLink GetUserInfo(string userId);
-
- /// <summary>
/// Links the user.
/// </summary>
/// <param name="userId">The user identifier.</param>
/// <param name="connectUsername">The connect username.</param>
/// <returns>Task.</returns>
- Task LinkUser(string userId, string connectUsername);
+ Task<UserLinkResult> LinkUser(string userId, string connectUsername);
/// <summary>
/// Removes the link.
diff --git a/MediaBrowser.Controller/Connect/UserLinkResult.cs b/MediaBrowser.Controller/Connect/UserLinkResult.cs
new file mode 100644
index 000000000..4ed57cfc2
--- /dev/null
+++ b/MediaBrowser.Controller/Connect/UserLinkResult.cs
@@ -0,0 +1,8 @@
+
+namespace MediaBrowser.Controller.Connect
+{
+ public class UserLinkResult
+ {
+ public bool IsPending { get; set; }
+ }
+}
diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs
index c0c7a6c53..e0682c9ee 100644
--- a/MediaBrowser.Controller/Entities/User.cs
+++ b/MediaBrowser.Controller/Entities/User.cs
@@ -2,6 +2,7 @@
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Configuration;
+using MediaBrowser.Model.Connect;
using MediaBrowser.Model.Serialization;
using System;
using System.IO;
@@ -34,6 +35,7 @@ namespace MediaBrowser.Controller.Entities
public string ConnectUserName { get; set; }
public string ConnectUserId { get; set; }
+ public UserLinkType ConnectLinkType { get; set; }
public string ConnectAccessKey { get; set; }
/// <summary>
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
index 1d23a82a9..6d881da4f 100644
--- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj
+++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
@@ -99,10 +99,9 @@
<Compile Include="Collections\CollectionCreationOptions.cs" />
<Compile Include="Collections\CollectionEvents.cs" />
<Compile Include="Collections\ICollectionManager.cs" />
- <Compile Include="Connect\ConnectInvitationRequest.cs" />
<Compile Include="Connect\ConnectUser.cs" />
- <Compile Include="Connect\ConnectUserLink.cs" />
<Compile Include="Connect\IConnectManager.cs" />
+ <Compile Include="Connect\UserLinkResult.cs" />
<Compile Include="Dlna\ControlRequest.cs" />
<Compile Include="Dlna\ControlResponse.cs" />
<Compile Include="Dlna\DlnaIconResponse.cs" />
diff --git a/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs b/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs
index 329dbaa46..31bb7c66b 100644
--- a/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs
+++ b/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs
@@ -1,5 +1,6 @@
using ServiceStack.Web;
using System;
+using System.Linq;
namespace MediaBrowser.Controller.Net
{
@@ -13,6 +14,8 @@ namespace MediaBrowser.Controller.Net
/// <value><c>true</c> if [allow local]; otherwise, <c>false</c>.</value>
public bool AllowLocal { get; set; }
+ public string Roles { get; set; }
+
/// <summary>
/// The request filter is executed before the service.
/// </summary>
@@ -21,7 +24,11 @@ namespace MediaBrowser.Controller.Net
/// <param name="requestDto">The request DTO</param>
public void RequestFilter(IRequest request, IResponse response, object requestDto)
{
- AuthService.Authenticate(request, response, requestDto, AllowLocal);
+ var roles = (Roles ?? string.Empty).Split(',')
+ .Where(i => !string.IsNullOrWhiteSpace(i))
+ .ToArray();
+
+ AuthService.Authenticate(request, response, requestDto, AllowLocal, roles);
}
/// <summary>
diff --git a/MediaBrowser.Controller/Net/IAuthService.cs b/MediaBrowser.Controller/Net/IAuthService.cs
index dca70f58f..69014d0ff 100644
--- a/MediaBrowser.Controller/Net/IAuthService.cs
+++ b/MediaBrowser.Controller/Net/IAuthService.cs
@@ -1,9 +1,14 @@
using ServiceStack.Web;
+using System.Collections.Generic;
namespace MediaBrowser.Controller.Net
{
public interface IAuthService
{
- void Authenticate(IRequest request, IResponse response, object requestDto, bool allowLocal);
+ void Authenticate(IRequest request,
+ IResponse response,
+ object requestDto,
+ bool allowLocal,
+ string[] roles);
}
}