local folder workspace
This commit is contained in:
@@ -6,19 +6,14 @@ namespace ModpackUpdater.Apps.Manager.Features.Workspaces.GitLabRepo;
|
||||
|
||||
internal class GitLabRepoWorkspace(GitLabRepoWorkspaceConfig config) : IWorkspace
|
||||
{
|
||||
private string? rawInstallInfos = null;
|
||||
private string? rawUpdateInfos = null;
|
||||
private string? rawInstallInfos;
|
||||
private string? rawUpdateInfos;
|
||||
|
||||
public WorkspaceConfig Config => ConfigX;
|
||||
|
||||
public GitLabRepoWorkspaceConfig ConfigX { get; } = config;
|
||||
|
||||
public IGitLabClient Gitlab { get; } = new GitLabClient(config.InstanceUrl, config.ApiToken);
|
||||
|
||||
public ModpackConfig? ModpackConfig { get; private set; }
|
||||
|
||||
public InstallInfos? InstallInfos { get; private set; }
|
||||
|
||||
public UpdateInfos? UpdateInfos { get; private set; }
|
||||
|
||||
public async Task<bool> Load()
|
||||
@@ -39,13 +34,17 @@ internal class GitLabRepoWorkspace(GitLabRepoWorkspaceConfig config) : IWorkspac
|
||||
|
||||
public async Task<bool> Save()
|
||||
{
|
||||
var failed = true;
|
||||
|
||||
if (InstallInfos != null)
|
||||
{
|
||||
var newInstallInfos = InstallInfos.ToString();
|
||||
if (newInstallInfos != rawInstallInfos)
|
||||
{
|
||||
await SaveContent(ConfigX.FileLocationInstallJson, newInstallInfos);
|
||||
rawInstallInfos = newInstallInfos;
|
||||
if (await SaveContent(ConfigX.FileLocationInstallJson, newInstallInfos))
|
||||
rawInstallInfos = newInstallInfos;
|
||||
else
|
||||
failed = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,12 +53,14 @@ internal class GitLabRepoWorkspace(GitLabRepoWorkspaceConfig config) : IWorkspac
|
||||
var newUpdateInfos = UpdateInfos.ToString();
|
||||
if (newUpdateInfos != rawUpdateInfos)
|
||||
{
|
||||
await SaveContent(ConfigX.FileLocationUpdateJson, newUpdateInfos);
|
||||
rawUpdateInfos = newUpdateInfos;
|
||||
if (await SaveContent(ConfigX.FileLocationUpdateJson, newUpdateInfos))
|
||||
rawUpdateInfos = newUpdateInfos;
|
||||
else
|
||||
failed = true;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
return failed;
|
||||
}
|
||||
|
||||
private async Task<string> GetContent(string path)
|
||||
|
||||
Reference in New Issue
Block a user