Add logging to !submissionInfo writing failure

This commit is contained in:
Matt Nadareski
2022-10-20 12:23:35 -07:00
parent 6cc2351bf7
commit e199e5a08c
3 changed files with 18 additions and 16 deletions

View File

@@ -165,6 +165,7 @@
- Add disc type parsing for Aaru and DIC
- Fix multiple DiscType for DIC
- Fix multiple DiscType* for DIC
- Add logging to !submissionInfo writing failure
### 2.3 (2022-02-05)
- Start overhauling Redump information pulling, again

View File

@@ -375,18 +375,18 @@ namespace MPF.Library
// Write the text output
resultProgress?.Report(Result.Success("Writing information to !submissionInfo.txt..."));
bool success = InfoTool.WriteOutputData(this.OutputDirectory, formattedValues);
if (success)
resultProgress?.Report(Result.Success("Writing complete!"));
(bool txtSuccess, string txtResult) = InfoTool.WriteOutputData(this.OutputDirectory, formattedValues);
if (txtSuccess)
resultProgress?.Report(Result.Success(txtResult));
else
resultProgress?.Report(Result.Failure("Writing could not complete!"));
resultProgress?.Report(Result.Failure(txtResult));
// Write the copy protection output
if (Options.ScanForProtection && Options.OutputSeparateProtectionFile)
{
resultProgress?.Report(Result.Success("Writing protection to !protectionInfo.txt..."));
success = InfoTool.WriteProtectionData(this.OutputDirectory, submissionInfo);
if (success)
bool scanSuccess = InfoTool.WriteProtectionData(this.OutputDirectory, submissionInfo);
if (scanSuccess)
resultProgress?.Report(Result.Success("Writing complete!"));
else
resultProgress?.Report(Result.Failure("Writing could not complete!"));
@@ -396,8 +396,8 @@ namespace MPF.Library
if (Options.OutputSubmissionJSON)
{
resultProgress?.Report(Result.Success($"Writing information to !submissionInfo.json{(Options.IncludeArtifacts ? ".gz" : string.Empty)}..."));
success = InfoTool.WriteOutputData(this.OutputDirectory, submissionInfo, Options.IncludeArtifacts);
if (success)
bool jsonSuccess = InfoTool.WriteOutputData(this.OutputDirectory, submissionInfo, Options.IncludeArtifacts);
if (jsonSuccess)
resultProgress?.Report(Result.Success("Writing complete!"));
else
resultProgress?.Report(Result.Failure("Writing could not complete!"));
@@ -407,11 +407,11 @@ namespace MPF.Library
if (Options.CompressLogFiles)
{
resultProgress?.Report(Result.Success("Compressing log files..."));
(bool compressSuccess, string statement) = InfoTool.CompressLogFiles(this.OutputDirectory, this.OutputFilename, this.Parameters);
(bool compressSuccess, string compressResult) = InfoTool.CompressLogFiles(this.OutputDirectory, this.OutputFilename, this.Parameters);
if (compressSuccess)
resultProgress?.Report(Result.Success(statement));
resultProgress?.Report(Result.Success(compressResult));
else
resultProgress?.Report(Result.Failure(statement));
resultProgress?.Report(Result.Failure(compressResult));
}
resultProgress?.Report(Result.Success("Submission information process complete!"));

View File

@@ -975,11 +975,11 @@ namespace MPF.Library
/// <param name="outputDirectory">Output folder to write to</param>
/// <param name="lines">Preformatted list of lines to write out to the file</param>
/// <returns>True on success, false on error</returns>
public static bool WriteOutputData(string outputDirectory, List<string> lines)
public static (bool, string) WriteOutputData(string outputDirectory, List<string> lines)
{
// Check to see if the inputs are valid
if (lines == null)
return false;
return (false, "No formatted data found to write!");
// Now write out to a generic file
try
@@ -987,16 +987,17 @@ namespace MPF.Library
using (StreamWriter sw = new StreamWriter(File.Open(Path.Combine(outputDirectory, "!submissionInfo.txt"), FileMode.Create, FileAccess.Write)))
{
foreach (string line in lines)
{
sw.WriteLine(line);
}
}
}
catch (Exception ex)
{
// We don't care what the error is right now
return false;
return (false, $"Writing could not complete: {ex}");
}
return true;
return (true, "Writing complete!");
}
/// <summary>