Skip to content

Commit 7a97d1e

Browse files
committed
More cleanup
1 parent 029fcc9 commit 7a97d1e

File tree

157 files changed

+423
-943
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

157 files changed

+423
-943
lines changed

.tools/Bible.Alarm.AudioLinksHarvestor/Harvestors/Bible/JwBibleHarvester.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ internal async Task HarvestBibleLinks(
8989
logger.Information("Harvesting Bible chapter links for {PublicationName} of {Language} language.", publication.Value, language);
9090
await HarvestBibleLinks(languageCode, publicationCode);
9191

92-
if (!languageCodeToEditionsMapping.TryAdd(languageCode, new List<string>([publication.Key])))
92+
if (!languageCodeToEditionsMapping.TryAdd(languageCode, [publication.Key]))
9393
{
9494
languageCodeToEditionsMapping[languageCode].Add(publication.Key);
9595
}
@@ -108,7 +108,7 @@ internal async Task HarvestBibleLinks(
108108
}
109109
}
110110

111-
private bool ShouldSkipLanguage(string languageName)
111+
private static bool ShouldSkipLanguage(string languageName)
112112
{
113113
if (string.IsNullOrWhiteSpace(languageName))
114114
{

.tools/Bible.Alarm.AudioLinksHarvestor/Harvestors/Music/MusicHarvester.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ internal class MusicHarvester(ILogger logger, DownloadUtility downloadUtility)
1818
{
1919
private const int MaxConcurrentLanguageDownloads = 8;
2020

21-
private static Dictionary<string, string> vocalsPublicationCodeToNameMappings = new(new[]{
21+
private static Dictionary<string, string> vocalsPublicationCodeToNameMappings = new([
2222
new KeyValuePair<string, string>("osg","Original Songs"),
2323
new KeyValuePair<string, string>("sjjc","\"Sing Out Joyfully\" to Jehovah (2016)"),
2424
new KeyValuePair<string, string>("snv","Sing to Jehovah (2014) ")
25-
});
25+
]);
2626

2727
internal async Task HarvestVocalMusicLinks(bool isTestRun = false)
2828
{
@@ -85,7 +85,7 @@ internal async Task HarvestVocalMusicLinks(bool isTestRun = false)
8585
if (englishEntry.Code == "E")
8686
{
8787
logger.Information("TEST RUN: Processing only English language for publication {PublicationCode}", publication.Key);
88-
languageEntries = new List<(string Code, string Name)> { englishEntry };
88+
languageEntries = [englishEntry];
8989
}
9090
else
9191
{
@@ -104,7 +104,7 @@ internal async Task HarvestVocalMusicLinks(bool isTestRun = false)
104104

105105
try
106106
{
107-
await HarvestMusicLinks(publication.Key, new List<string>([publication.Key]), languageCode);
107+
await HarvestMusicLinks(publication.Key, [publication.Key], languageCode);
108108
languageCodeToNames[languageCode] = language;
109109

110110
lock (languageCodeToPublications)
@@ -160,9 +160,9 @@ internal async Task HarvestVocalMusicLinks(bool isTestRun = false)
160160

161161
}
162162

163-
private static Dictionary<string, string> melodyPublicationCodeToNameMappings = new(new[]{
163+
private static Dictionary<string, string> melodyPublicationCodeToNameMappings = new([
164164
new KeyValuePair<string, string>("iam","Sing Praises to Jehovah (1984)")
165-
});
165+
]);
166166

167167
internal async Task HarvestMusicMelodyLinks(bool isTestRun = false)
168168
{

.tools/Bible.Alarm.AudioLinksHarvestor/Utility/DbSeeder.cs

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -74,16 +74,11 @@ private async Task SeedBibleTranslations(string indexDir)
7474
foreach (var language in bibleLanguages)
7575
{
7676
var newLanguage = await db.Languages.FirstOrDefaultAsync(x => x.Code == language.Value.Code
77-
&& x.Name == language.Value.Name);
78-
if (newLanguage == null)
79-
{
80-
newLanguage = new Language
81-
{
82-
Code = language.Value.Code,
83-
Name = language.Value.Name
84-
};
85-
}
86-
77+
&& x.Name == language.Value.Name) ?? new Language
78+
{
79+
Code = language.Value.Code,
80+
Name = language.Value.Name
81+
};
8782
Dictionary<string, Publication> translations;
8883
try
8984
{
@@ -323,16 +318,11 @@ private async Task SeedVocals(string indexDir)
323318
foreach (var language in melodyLanguages)
324319
{
325320
var newLanguage = await db.Languages.FirstOrDefaultAsync(x => x.Code == language.Value.Code
326-
&& x.Name == language.Value.Name);
327-
if (newLanguage == null)
328-
{
329-
newLanguage = new Language
330-
{
331-
Code = language.Value.Code,
332-
Name = language.Value.Name
333-
};
334-
}
335-
321+
&& x.Name == language.Value.Name) ?? new Language
322+
{
323+
Code = language.Value.Code,
324+
Name = language.Value.Name
325+
};
336326
Dictionary<string, Publication> vocalMusicReleases;
337327
try
338328
{

.tools/Bible.Alarm.AudioLinksHarvestor/Utility/DownloadUtility.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public DownloadUtility(ILogger logger)
2626
.WaitAndRetryAsync(
2727
retryCount: 3,
2828
sleepDurationProvider: retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt - 1)),
29-
onRetry: (outcome, timespan, retryCount, context) =>
29+
onRetry: (_, timespan, retryCount, _) =>
3030
{
3131
this.logger.Warning("Retrying request (attempt {RetryCount}/3) after {DelaySeconds}s delay...", retryCount, timespan.TotalSeconds);
3232
});

.tools/Bible.Alarm.DbMigration/Program.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ static async Task ShowMigrationStatus(string? contextName)
100100
static async Task ListMigrationsForContext<TContext>() where TContext : DbContext
101101
{
102102
var factory = GetFactory<TContext>();
103-
using var context = factory.CreateDbContext(Array.Empty<string>());
103+
using var context = factory.CreateDbContext([]);
104104

105105
var migrations = await context.Database.GetPendingMigrationsAsync();
106106
var appliedMigrations = await context.Database.GetAppliedMigrationsAsync();
@@ -121,7 +121,7 @@ static async Task ListMigrationsForContext<TContext>() where TContext : DbContex
121121
static async Task ShowMigrationStatusForContext<TContext>() where TContext : DbContext
122122
{
123123
var factory = GetFactory<TContext>();
124-
using var context = factory.CreateDbContext(Array.Empty<string>());
124+
using var context = factory.CreateDbContext([]);
125125

126126
var pendingMigrations = await context.Database.GetPendingMigrationsAsync();
127127
var appliedMigrations = await context.Database.GetAppliedMigrationsAsync();

.tools/Bible.Alarm.VersionPatcher.Tests/Services/VersionPatchingServiceTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public async Task PatchAllPlatformsAsync_WhenOnePatcherFails_ShouldThrowExceptio
6565
windowsPatcherMock.Setup(x => x.PatchVersionAsync()).Returns(Task.CompletedTask);
6666

6767
// Act & Assert
68-
var action = async () => await service.PatchAllPlatformsAsync();
68+
var action = service.PatchAllPlatformsAsync;
6969
await action.Should().ThrowAsync<Exception>().WithMessage("iOS patcher failed");
7070
}
7171

.tools/Bible.Alarm.VersionPatcher.Tests/Services/VersionServiceTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@ public void IncrementVersionCode_ShouldIncrementCorrectly(string input, string e
4040
public void IncrementVersion_WithInvalidFormat_ShouldThrowArgumentException()
4141
{
4242
// Arrange
43-
var invalidVersion = "invalid";
43+
const string InvalidVersion = "invalid";
4444

4545
// Act & Assert
46-
var action = () => versionService.IncrementVersion(invalidVersion);
46+
var action = () => versionService.IncrementVersion(InvalidVersion);
4747
action.Should().Throw<ArgumentException>();
4848
}
4949

.tools/Bible.Alarm.VersionPatcher/Services/Infrastructure/IOSVersionPatcher.cs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
namespace Bible.Alarm.VersionPatcher.Services.Infrastructure;
88

9-
public class IosVersionPatcher(IVersionService versionService, IFileService fileService, IPathService pathService)
9+
public partial class IosVersionPatcher(IVersionService versionService, IFileService fileService, IPathService pathService)
1010
: IPlatformVersionPatcher
1111
{
1212
public string PlatformName => "iOS";
@@ -42,7 +42,7 @@ public async Task PatchVersionAsync()
4242
if (!string.IsNullOrEmpty(oldVersion))
4343
{
4444
var newVersion = versionService.IncrementVersion(oldVersion);
45-
var matchRegex = new Regex(@"<string>.*<\/string>");
45+
var matchRegex = MatchRegexGenerated();
4646
var newLine = matchRegex.Replace(nextLine, $"<string>{newVersion}</string>");
4747
output.AppendLine(newLine);
4848
i++; // Skip the next line since we processed it
@@ -75,7 +75,12 @@ public async Task PatchVersionAsync()
7575

7676
private static string ExtractVersionFromLine(string line)
7777
{
78-
var match = Regex.Match(line, @"<string>(.*?)</string>");
78+
var match = ExtractVersionRegex().Match(line);
7979
return match.Success ? match.Groups[1].Value.Trim() : string.Empty;
8080
}
81+
82+
[GeneratedRegex(@"<string>.*<\/string>")]
83+
private static partial Regex MatchRegexGenerated();
84+
[GeneratedRegex(@"<string>(.*?)</string>")]
85+
private static partial Regex ExtractVersionRegex();
8186
}

libraries/CommunityToolkit.Maui.MediaElement/Extensions/PageExtensions.shared.cs

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,22 +11,13 @@ internal static Page GetCurrentPage(this Page currentPage)
1111
return modal;
1212
}
1313

14-
if (currentPage is FlyoutPage fp)
14+
return currentPage switch
1515
{
16-
return GetCurrentPage(fp.Detail);
17-
}
18-
19-
if (currentPage is Shell shell && shell.CurrentItem?.CurrentItem is IShellSectionController ssc)
20-
{
21-
return ssc.PresentedPage;
22-
}
23-
24-
if (currentPage is IPageContainer<Page> pc)
25-
{
26-
return GetCurrentPage(pc.CurrentPage);
27-
}
28-
29-
return currentPage;
16+
FlyoutPage fp => GetCurrentPage(fp.Detail),
17+
Shell shell when (shell.CurrentItem?.CurrentItem is IShellSectionController ssc) => ssc.PresentedPage,
18+
IPageContainer<Page> pc => GetCurrentPage(pc.CurrentPage),
19+
_ => currentPage
20+
};
3021
}
3122

3223
internal record struct ParentWindow

libraries/CommunityToolkit.Maui.MediaElement/Handlers/MediaElementHandler.android.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,7 @@ IDispatcher GetDispatcher()
6161
{
6262
// Get dispatcher - try current thread first, then Application.Current dispatcher
6363
// After bootstrap completes, Application.Current.Dispatcher should always be available
64-
var dispatcher = Dispatcher.GetForCurrentThread();
65-
if (dispatcher == null)
66-
{
67-
// Try to get dispatcher from Application.Current (works in background services after bootstrap)
68-
dispatcher = Application.Current?.Dispatcher;
69-
}
70-
64+
var dispatcher = Dispatcher.GetForCurrentThread() ?? (Application.Current?.Dispatcher);
7165
if (dispatcher == null)
7266
{
7367
throw new InvalidOperationException("Dispatcher cannot be null - ensure bootstrap has completed before calling CreatePlatformView");

0 commit comments

Comments
 (0)