add connect linking

This commit is contained in:
Luke Pulverenti
2014-09-14 11:10:51 -04:00
parent 4f3ea6c6c3
commit 5c615fa024
42 changed files with 542 additions and 78 deletions

View File

@@ -0,0 +1,20 @@

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
}
}

View File

@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Connect
{
public class ConnectUser
{
public string Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
}
public class ConnectUserQuery
{
public string Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
}
}

View File

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

namespace MediaBrowser.Controller.Connect
{
public class ConnectUserLink
{
public string Username { get; set; }
public string UserId { get; set; }
public string LocalUserId { get; set; }
}
}

View File

@@ -1,8 +1,35 @@

using System.Threading.Tasks;
namespace MediaBrowser.Controller.Connect
{
public interface IConnectManager
{
/// <summary>
/// Gets the wan API address.
/// </summary>
/// <value>The wan API address.</value>
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);
/// <summary>
/// Removes the link.
/// </summary>
/// <param name="userId">The user identifier.</param>
/// <returns>Task.</returns>
Task RemoveLink(string userId);
}
}