Skip to content

Commit

Permalink
Use folders provided in options over config (#610)
Browse files Browse the repository at this point in the history
* Use folders provided in options over config

* Use simpler collection initialisation for folder

* Fix NRE when checking for Any folders

* Add GetFolder to Addition Export and Import Methods.

---------

Co-authored-by: Kevin Jump <kevin@thejumps.co.uk>
  • Loading branch information
ljfio and KevinJump authored Apr 15, 2024
1 parent efdefba commit 60a2cd7
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 9 deletions.
3 changes: 1 addition & 2 deletions uSync.BackOffice/Models/SyncActionOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ public class SyncActionOptions
/// <summary>
/// array of usync folders you want to import - files will be merged as part of the process.
/// </summary>
public string[] Folders { get; set; }

public string[] Folders { get; set; } = [];
}
}
22 changes: 15 additions & 7 deletions uSync.BackOffice/Services/SyncActionService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
using System.Linq;

using Microsoft.Extensions.Logging;

using uSync.BackOffice.Configuration;
using uSync.BackOffice.Models;
using uSync.BackOffice.SyncHandlers;
Expand Down Expand Up @@ -70,7 +69,7 @@ public SyncActionResult ReportHandler(SyncActionOptions options, uSyncCallbacks
var handlerSet = !string.IsNullOrWhiteSpace(options.Set)
? options.Set : _uSyncConfig.Settings.DefaultSet;

var folders = _uSyncConfig.GetFolders();
var folders = GetFolders(options);

var actions = _uSyncService.ReportHandler(options.Handler,
new uSyncImportOptions
Expand All @@ -86,13 +85,23 @@ public SyncActionResult ReportHandler(SyncActionOptions options, uSyncCallbacks
return new SyncActionResult(actions);
}

private string[] GetFolders(SyncActionOptions options)
{
if (options.Folders.Length != 0)
return options.Folders;

if (!string.IsNullOrEmpty(options.Folder))
return [options.Folder];

return _uSyncConfig.GetFolders();
}

public SyncActionResult ImportHandler(SyncActionOptions options, uSyncCallbacks callbacks)
{
var handlerSet = !string.IsNullOrWhiteSpace(options.Set)
? options.Set : _uSyncConfig.Settings.DefaultSet;

var folders = _uSyncConfig.GetFolders();
var folders = GetFolders(options);

var actions = _uSyncService.ImportHandler(options.Handler, new uSyncImportOptions
{
Expand All @@ -115,7 +124,7 @@ public SyncActionResult ImportPost(SyncActionOptions options, uSyncCallbacks cal
var handlerSet = !string.IsNullOrWhiteSpace(options.Set)
? options.Set : _uSyncConfig.Settings.DefaultSet;

var folders = _uSyncConfig.GetFolders();
var folders = GetFolders(options);

var actions = _uSyncService.PerformPostImport(
folders,
Expand All @@ -132,7 +141,7 @@ public SyncActionResult ExportHandler(SyncActionOptions options, uSyncCallbacks
var handlerSet = !string.IsNullOrWhiteSpace(options.Set)
? options.Set : _uSyncConfig.Settings.DefaultSet;

var folders = _uSyncConfig.GetFolders();
var folders = GetFolders(options);

var actions = _uSyncService.ExportHandler(options.Handler, new uSyncImportOptions
{
Expand Down Expand Up @@ -175,8 +184,7 @@ private string MakeValidImportFolder(string folder)
_logger.LogDebug("Using Custom Folder: {fullPath}", folder);
return folder;
}



return string.Empty;
}

Expand Down

0 comments on commit 60a2cd7

Please sign in to comment.