sync updates

This commit is contained in:
Luke Pulverenti
2014-12-27 17:52:41 -05:00
parent 0840bb9ba2
commit 7bce2e04b6
36 changed files with 109 additions and 104 deletions

View File

@@ -32,12 +32,12 @@ namespace MediaBrowser.Server.Implementations.Sync
private readonly IImageProcessor _imageProcessor;
private readonly ILogger _logger;
private readonly IUserManager _userManager;
private readonly IDtoService _dtoService;
private readonly Func<IDtoService> _dtoService;
private readonly IApplicationHost _appHost;
private ISyncProvider[] _providers = { };
public SyncManager(ILibraryManager libraryManager, ISyncRepository repo, IImageProcessor imageProcessor, ILogger logger, IUserManager userManager, IDtoService dtoService, IApplicationHost appHost)
public SyncManager(ILibraryManager libraryManager, ISyncRepository repo, IImageProcessor imageProcessor, ILogger logger, IUserManager userManager, Func<IDtoService> dtoService, IApplicationHost appHost)
{
_libraryManager = libraryManager;
_repo = repo;
@@ -323,9 +323,8 @@ namespace MediaBrowser.Server.Implementations.Sync
return _repo.GetJobItems(query);
}
public SyncedItem GetJobItemInfo(string id)
private SyncedItem GetJobItemInfo(SyncJobItem jobItem)
{
var jobItem = GetJobItem(id);
var job = _repo.GetJob(jobItem.JobId);
var libraryItem = _libraryManager.GetItemById(jobItem.ItemId);
@@ -338,7 +337,7 @@ namespace MediaBrowser.Server.Implementations.Sync
UserId = job.UserId
};
syncedItem.Item = _dtoService.GetBaseItemDto(libraryItem, new DtoOptions());
syncedItem.Item = _dtoService().GetBaseItemDto(libraryItem, new DtoOptions());
// TODO: this should be the media source of the transcoded output
syncedItem.Item.MediaSources = syncedItem.Item.MediaSources
@@ -365,5 +364,16 @@ namespace MediaBrowser.Server.Implementations.Sync
{
return Task.FromResult(true);
}
public List<SyncedItem> GetReadySyncItems(string targetId)
{
var jobItemResult = GetJobItems(new SyncJobItemQuery
{
TargetId = targetId,
//Status = SyncJobItemStatus.Transferring
});
return jobItemResult.Items.Select(GetJobItemInfo).ToList();
}
}
}

View File

@@ -36,7 +36,7 @@ namespace MediaBrowser.Server.Implementations.Sync
public async Task Initialize()
{
var dbFile = Path.Combine(_appPaths.DataPath, "sync7.db");
var dbFile = Path.Combine(_appPaths.DataPath, "sync8.db");
_connection = await SqliteExtensions.ConnectToDb(dbFile, _logger).ConfigureAwait(false);
@@ -298,7 +298,8 @@ namespace MediaBrowser.Server.Implementations.Sync
_deleteJobCommand.Transaction = transaction;
_deleteJobCommand.ExecuteNonQuery();
_deleteJobItemsCommand.GetParameter(index++).Value = new Guid(id);
index = 0;
_deleteJobItemsCommand.GetParameter(index++).Value = id;
_deleteJobItemsCommand.Transaction = transaction;
_deleteJobItemsCommand.ExecuteNonQuery();
@@ -607,11 +608,16 @@ namespace MediaBrowser.Server.Implementations.Sync
var info = new SyncJobItem
{
Id = reader.GetGuid(0).ToString("N"),
ItemId = reader.GetString(1),
MediaSourceId = reader.GetString(2),
JobId = reader.GetString(3)
ItemId = reader.GetString(1)
};
if (!reader.IsDBNull(2))
{
info.MediaSourceId = reader.GetString(2);
}
info.JobId = reader.GetString(3);
if (!reader.IsDBNull(4))
{
info.OutputPath = reader.GetString(4);