Skip to content

Commit 3b170f7

Browse files
Merge pull request #2 from sator-imaging/optimize--cli
optimize: cli
2 parents 883a31f + 95b3d78 commit 3b170f7

File tree

2 files changed

+30
-31
lines changed

2 files changed

+30
-31
lines changed

cli/Program.cs

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -292,15 +292,9 @@ static int PerformMerge(FileInfo input, DirectoryInfo buildOutputDir, DirectoryI
292292
mergedDll.MoveTo(mergedDllPath, overwrite: true);
293293

294294
// Check if destination exists and handle force flag
295-
if (File.Exists(destPath) && !force)
295+
if (!Utils.PromptOverwrite(destPath, force))
296296
{
297-
Console.Write($"{mergedFileName} already exists in output directory. Overwrite? (y/N): ");
298-
var response = Console.ReadLine()?.Trim().ToLowerInvariant();
299-
if (response != "y")
300-
{
301-
Console.WriteLine($"Skipped: {mergedFileName}");
302-
return 0;
303-
}
297+
return 0;
304298
}
305299

306300
// Copy to actual output directory
@@ -340,15 +334,9 @@ static int MoveDllFiles(DirectoryInfo sourceDir, DirectoryInfo destDir, bool for
340334
var destPath = Path.Combine(destDir.FullName, dllFile.Name);
341335

342336
// Check if destination exists and handle force flag
343-
if (File.Exists(destPath) && !force)
337+
if (!Utils.PromptOverwrite(destPath, force))
344338
{
345-
Console.Write($"{dllFile.Name} already exists in output directory. Overwrite? (y/N): ");
346-
var response = Console.ReadLine()?.Trim().ToLowerInvariant();
347-
if (response != "y")
348-
{
349-
Console.WriteLine($"Skipped: {dllFile.Name}");
350-
continue;
351-
}
339+
continue;
352340
}
353341

354342
Console.WriteLine($"Moving: {dllFile.Name}");

cli/Utils.cs

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -54,26 +54,37 @@ public static int ExecuteProcess(string exe, string arguments, bool disableSucce
5454
}
5555

5656

57+
public static bool PromptOverwrite(string filePath, bool force)
58+
{
59+
if (!File.Exists(filePath))
60+
{
61+
return true;
62+
}
63+
64+
if (force)
65+
{
66+
Console.WriteLine($"Overwriting: {Path.GetFileName(filePath)}");
67+
return true;
68+
}
69+
70+
Console.Write($"{Path.GetFileName(filePath)} already exists. Overwrite? (y/N): ");
71+
var response = Console.ReadLine()?.Trim().ToLowerInvariant();
72+
if (response == "y")
73+
{
74+
return true;
75+
}
76+
77+
Console.WriteLine($"Skipped: {Path.GetFileName(filePath)}");
78+
return false;
79+
}
80+
5781
public static void GenerateUnityMeta(FileInfo dllFile, bool force)
5882
{
5983
var metaPath = dllFile.FullName + ".meta";
6084

61-
if (File.Exists(metaPath))
85+
if (!PromptOverwrite(metaPath, force))
6286
{
63-
if (force)
64-
{
65-
Console.WriteLine($"Overwriting: {dllFile.Name}.meta");
66-
}
67-
else
68-
{
69-
Console.Write($"{dllFile.Name}.meta already exists. Overwrite? (y/N): ");
70-
var response = Console.ReadLine()?.Trim().ToLowerInvariant();
71-
if (response != "y")
72-
{
73-
Console.WriteLine($"Skipped: {dllFile.Name}.meta");
74-
return;
75-
}
76-
}
87+
return;
7788
}
7889

7990
// 2022.3.12 or newer: https://qiita.com/amenone_games/items/762cbea245f95b212cfa

0 commit comments

Comments
 (0)