update dlna profiles

This commit is contained in:
Luke Pulverenti
2015-02-06 22:25:23 -05:00
parent 7320567b9e
commit 504e2099e2
31 changed files with 125 additions and 102 deletions

View File

@@ -74,7 +74,7 @@ namespace MediaBrowser.Server.Implementations.HttpServer.Security
ValidateUserAccess(user, request, authAttribtues, auth);
}
var info = (AuthenticationInfo)request.Items["OriginalAuthenticationInfo"];
var info = GetTokenInfo(request);
if (!IsExemptFromRoles(auth, authAttribtues, info))
{
@@ -199,6 +199,13 @@ namespace MediaBrowser.Server.Implementations.HttpServer.Security
}
}
private AuthenticationInfo GetTokenInfo(IServiceRequest request)
{
object info;
request.Items.TryGetValue("OriginalAuthenticationInfo", out info);
return info as AuthenticationInfo;
}
private bool IsValidConnectKey(string token)
{
if (string.IsNullOrEmpty(token))
@@ -216,7 +223,7 @@ namespace MediaBrowser.Server.Implementations.HttpServer.Security
throw new SecurityException("Access token is invalid or expired.");
}
var info = (AuthenticationInfo)request.Items["OriginalAuthenticationInfo"];
var info = GetTokenInfo(request);
if (info == null)
{

View File

@@ -203,6 +203,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
cancellationToken.ThrowIfCancellationRequested();
CheckDisposed();
await _writeLock.WaitAsync(cancellationToken).ConfigureAwait(false);
IDbTransaction transaction = null;
@@ -271,6 +273,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
throw new ArgumentNullException("id");
}
CheckDisposed();
using (var cmd = _connection.CreateCommand())
{
cmd.CommandText = "select type,data from TypedBaseItems where guid = @guid";
@@ -355,6 +359,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
/// <exception cref="System.ArgumentNullException">id</exception>
public IEnumerable<ChapterInfo> GetChapters(Guid id)
{
CheckDisposed();
return _chapterRepository.GetChapters(id);
}
@@ -367,6 +372,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
/// <exception cref="System.ArgumentNullException">id</exception>
public ChapterInfo GetChapter(Guid id, int index)
{
CheckDisposed();
return _chapterRepository.GetChapter(id, index);
}
@@ -386,6 +392,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
/// </exception>
public Task SaveChapters(Guid id, IEnumerable<ChapterInfo> chapters, CancellationToken cancellationToken)
{
CheckDisposed();
return _chapterRepository.SaveChapters(id, chapters, cancellationToken);
}
@@ -400,6 +407,15 @@ namespace MediaBrowser.Server.Implementations.Persistence
private readonly object _disposeLock = new object();
private bool _disposed;
private void CheckDisposed()
{
if (_disposed)
{
throw new ObjectDisposedException(GetType().Name + " has been disposed and cannot be accessed.");
}
}
/// <summary>
/// Releases unmanaged and - optionally - managed resources.
/// </summary>
@@ -408,6 +424,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
if (dispose)
{
_disposed = true;
try
{
lock (_disposeLock)
@@ -456,6 +474,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
throw new ArgumentNullException("parentId");
}
CheckDisposed();
using (var cmd = _connection.CreateCommand())
{
cmd.CommandText = "select ItemId from ChildrenIds where ParentId = @ParentId";
@@ -479,6 +499,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
throw new ArgumentNullException("parentId");
}
CheckDisposed();
using (var cmd = _connection.CreateCommand())
{
cmd.CommandText = "select type,data from TypedBaseItems where guid in (select ItemId from ChildrenIds where ParentId = @ParentId)";
@@ -507,6 +529,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
throw new ArgumentNullException("type");
}
CheckDisposed();
using (var cmd = _connection.CreateCommand())
{
cmd.CommandText = "select type,data from TypedBaseItems where type = @type";
@@ -535,6 +559,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
throw new ArgumentNullException("id");
}
CheckDisposed();
await _writeLock.WaitAsync(cancellationToken).ConfigureAwait(false);
IDbTransaction transaction = null;
@@ -598,6 +624,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
throw new ArgumentNullException("children");
}
CheckDisposed();
await _writeLock.WaitAsync(cancellationToken).ConfigureAwait(false);
IDbTransaction transaction = null;
@@ -659,11 +687,13 @@ namespace MediaBrowser.Server.Implementations.Persistence
public IEnumerable<MediaStream> GetMediaStreams(MediaStreamQuery query)
{
CheckDisposed();
return _mediaStreamsRepository.GetMediaStreams(query);
}
public Task SaveMediaStreams(Guid id, IEnumerable<MediaStream> streams, CancellationToken cancellationToken)
{
CheckDisposed();
return _mediaStreamsRepository.SaveMediaStreams(id, streams, cancellationToken);
}
}

View File

@@ -172,6 +172,8 @@ namespace MediaBrowser.Server.Implementations.Sync
throw new ArgumentNullException("id");
}
CheckDisposed();
var guid = new Guid(id);
if (guid == Guid.Empty)
@@ -277,6 +279,8 @@ namespace MediaBrowser.Server.Implementations.Sync
throw new ArgumentNullException("job");
}
CheckDisposed();
await _writeLock.WaitAsync().ConfigureAwait(false);
IDbTransaction transaction = null;
@@ -348,6 +352,8 @@ namespace MediaBrowser.Server.Implementations.Sync
throw new ArgumentNullException("id");
}
CheckDisposed();
await _writeLock.WaitAsync().ConfigureAwait(false);
IDbTransaction transaction = null;
@@ -407,6 +413,8 @@ namespace MediaBrowser.Server.Implementations.Sync
throw new ArgumentNullException("query");
}
CheckDisposed();
using (var cmd = _connection.CreateCommand())
{
cmd.CommandText = BaseJobSelectText;
@@ -491,6 +499,8 @@ namespace MediaBrowser.Server.Implementations.Sync
throw new ArgumentNullException("id");
}
CheckDisposed();
var guid = new Guid(id);
using (var cmd = _connection.CreateCommand())
@@ -618,6 +628,8 @@ namespace MediaBrowser.Server.Implementations.Sync
throw new ArgumentNullException("jobItem");
}
CheckDisposed();
await _writeLock.WaitAsync().ConfigureAwait(false);
IDbTransaction transaction = null;
@@ -764,6 +776,15 @@ namespace MediaBrowser.Server.Implementations.Sync
GC.SuppressFinalize(this);
}
private bool _disposed;
private void CheckDisposed()
{
if (_disposed)
{
throw new ObjectDisposedException(GetType().Name + " has been disposed and cannot be accessed.");
}
}
private readonly object _disposeLock = new object();
/// <summary>
@@ -774,6 +795,8 @@ namespace MediaBrowser.Server.Implementations.Sync
{
if (dispose)
{
_disposed = true;
try
{
lock (_disposeLock)