aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2016-03-22 00:16:37 -0400
committerLuke <luke.pulverenti@gmail.com>2016-03-22 00:16:37 -0400
commit95f5859837c3fa1598b2677b3c114f28e80e1192 (patch)
tree0a5bdfb4f82fd1bc00054312329de0b15e55d2cf /MediaBrowser.Server.Implementations
parent86eec4bad3057816459d823cbddfee1249edf095 (diff)
parent49c678037a329f35de0ff09999b79cd8a1d4694d (diff)
Merge pull request #1573 from MediaBrowser/dev
Dev
Diffstat (limited to 'MediaBrowser.Server.Implementations')
-rw-r--r--MediaBrowser.Server.Implementations/Library/LibraryManager.cs2
-rw-r--r--MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs149
-rw-r--r--MediaBrowser.Server.Implementations/Session/SessionManager.cs4
3 files changed, 4 insertions, 151 deletions
diff --git a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
index 50d365335..ad3cd2576 100644
--- a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
+++ b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
@@ -430,7 +430,7 @@ namespace MediaBrowser.Server.Implementations.Library
}
else if (parent != null)
{
- await parent.RemoveChild(item, CancellationToken.None).ConfigureAwait(false);
+ parent.RemoveChild(item);
}
await ItemRepository.DeleteItem(item.Id, CancellationToken.None).ConfigureAwait(false);
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
index a6e92171f..0b337b2a1 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
@@ -63,8 +63,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
private readonly string _criticReviewsPath;
- private IDbCommand _deleteChildrenCommand;
- private IDbCommand _saveChildrenCommand;
private IDbCommand _deleteItemCommand;
private IDbCommand _deletePeopleCommand;
@@ -138,9 +136,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
"create index if not exists idx_AncestorIds1 on AncestorIds(AncestorId)",
"create index if not exists idx_AncestorIds2 on AncestorIds(AncestorIdText)",
- "create table if not exists ChildrenIds (ParentId GUID, ItemId GUID, PRIMARY KEY (ParentId, ItemId))",
- "create index if not exists idx_ChildrenIds on ChildrenIds(ParentId,ItemId)",
-
"create table if not exists People (ItemId GUID, Name TEXT NOT NULL, Role TEXT, PersonType TEXT, SortOrder int, ListOrder int)",
"create index if not exists idxPeopleItemId on People(ItemId)",
"create index if not exists idxPeopleName on People(Name)",
@@ -477,19 +472,10 @@ namespace MediaBrowser.Server.Implementations.Persistence
}
_saveItemCommand.CommandText += ")";
- _deleteChildrenCommand = _connection.CreateCommand();
- _deleteChildrenCommand.CommandText = "delete from ChildrenIds where ParentId=@ParentId";
- _deleteChildrenCommand.Parameters.Add(_deleteChildrenCommand, "@ParentId");
-
_deleteItemCommand = _connection.CreateCommand();
_deleteItemCommand.CommandText = "delete from TypedBaseItems where guid=@Id";
_deleteItemCommand.Parameters.Add(_deleteItemCommand, "@Id");
- _saveChildrenCommand = _connection.CreateCommand();
- _saveChildrenCommand.CommandText = "replace into ChildrenIds (ParentId, ItemId) values (@ParentId, @ItemId)";
- _saveChildrenCommand.Parameters.Add(_saveChildrenCommand, "@ParentId");
- _saveChildrenCommand.Parameters.Add(_saveChildrenCommand, "@ItemId");
-
// People
_deletePeopleCommand = _connection.CreateCommand();
_deletePeopleCommand.CommandText = "delete from People where ItemId=@Id";
@@ -1375,63 +1361,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
}
}
- public IEnumerable<Guid> GetChildren(Guid parentId)
- {
- if (parentId == Guid.Empty)
- {
- throw new ArgumentNullException("parentId");
- }
-
- CheckDisposed();
-
- using (var cmd = _connection.CreateCommand())
- {
- cmd.CommandText = "select ItemId from ChildrenIds where ParentId = @ParentId";
-
- cmd.Parameters.Add(cmd, "@ParentId", DbType.Guid).Value = parentId;
-
- using (var reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess | CommandBehavior.SingleResult))
- {
- while (reader.Read())
- {
- yield return reader.GetGuid(0);
- }
- }
- }
- }
-
- public IEnumerable<BaseItem> GetChildrenItems(Guid parentId)
- {
- if (parentId == Guid.Empty)
- {
- throw new ArgumentNullException("parentId");
- }
-
- CheckDisposed();
-
- using (var cmd = _connection.CreateCommand())
- {
- cmd.CommandText = "select " + string.Join(",", _retriveItemColumns) + " from TypedBaseItems where guid in (select ItemId from ChildrenIds where ParentId = @ParentId)";
-
- cmd.Parameters.Add(cmd, "@ParentId", DbType.Guid).Value = parentId;
-
- //Logger.Debug(cmd.CommandText);
-
- using (var reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess | CommandBehavior.SingleResult))
- {
- while (reader.Read())
- {
- var item = GetItem(reader);
-
- if (item != null)
- {
- yield return item;
- }
- }
- }
- }
- }
-
public IEnumerable<BaseItem> GetItemsOfType(Type type)
{
if (type == null)
@@ -2392,11 +2321,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
transaction = _connection.BeginTransaction();
- // First delete children
- _deleteChildrenCommand.GetParameter(0).Value = id;
- _deleteChildrenCommand.Transaction = transaction;
- _deleteChildrenCommand.ExecuteNonQuery();
-
// Delete people
_deletePeopleCommand.GetParameter(0).Value = id;
_deletePeopleCommand.Transaction = transaction;
@@ -2455,79 +2379,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
}
}
- public async Task SaveChildren(Guid parentId, IEnumerable<Guid> children, CancellationToken cancellationToken)
- {
- if (parentId == Guid.Empty)
- {
- throw new ArgumentNullException("parentId");
- }
-
- if (children == null)
- {
- throw new ArgumentNullException("children");
- }
-
- CheckDisposed();
-
- await WriteLock.WaitAsync(cancellationToken).ConfigureAwait(false);
-
- IDbTransaction transaction = null;
-
- try
- {
- transaction = _connection.BeginTransaction();
-
- // First delete
- _deleteChildrenCommand.GetParameter(0).Value = parentId;
- _deleteChildrenCommand.Transaction = transaction;
-
- _deleteChildrenCommand.ExecuteNonQuery();
-
- foreach (var id in children)
- {
- cancellationToken.ThrowIfCancellationRequested();
-
- _saveChildrenCommand.GetParameter(0).Value = parentId;
- _saveChildrenCommand.GetParameter(1).Value = id;
-
- _saveChildrenCommand.Transaction = transaction;
-
- _saveChildrenCommand.ExecuteNonQuery();
- }
-
- transaction.Commit();
- }
- catch (OperationCanceledException)
- {
- if (transaction != null)
- {
- transaction.Rollback();
- }
-
- throw;
- }
- catch (Exception e)
- {
- Logger.ErrorException("Failed to save children:", e);
-
- if (transaction != null)
- {
- transaction.Rollback();
- }
-
- throw;
- }
- finally
- {
- if (transaction != null)
- {
- transaction.Dispose();
- }
-
- WriteLock.Release();
- }
- }
-
public List<string> GetPeopleNames(InternalPeopleQuery query)
{
if (query == null)
diff --git a/MediaBrowser.Server.Implementations/Session/SessionManager.cs b/MediaBrowser.Server.Implementations/Session/SessionManager.cs
index 824e5e0e8..98127d39a 100644
--- a/MediaBrowser.Server.Implementations/Session/SessionManager.cs
+++ b/MediaBrowser.Server.Implementations/Session/SessionManager.cs
@@ -705,7 +705,9 @@ namespace MediaBrowser.Server.Implementations.Session
MediaInfo = info.Item,
DeviceName = session.DeviceName,
ClientName = session.Client,
- DeviceId = session.DeviceId
+ DeviceId = session.DeviceId,
+ IsPaused = info.IsPaused,
+ PlaySessionId = info.PlaySessionId
}, _logger);