Skip to content

Commit 4c4bce1

Browse files
committed
#nullable enable for new files
1 parent 3d7bfae commit 4c4bce1

20 files changed

+39
-9
lines changed

src/Orleans.Core.Abstractions/Placement/PlacementFilterAttribute.cs

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Orleans.Metadata;
44
using Orleans.Runtime;
55

6+
#nullable enable
67
namespace Orleans.Placement;
78

89
/// <summary>

src/Orleans.Core.Abstractions/Placement/PlacementFilterStrategy.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Orleans.Metadata;
44
using Orleans.Runtime;
55

6+
#nullable enable
67
namespace Orleans.Placement;
78

89
public abstract class PlacementFilterStrategy
@@ -65,7 +66,7 @@ public void PopulateGrainProperties(IServiceProvider services, Type grainClass,
6566
}
6667
}
6768

68-
protected string GetPlacementFilterGrainProperty(string key, GrainProperties properties)
69+
protected string? GetPlacementFilterGrainProperty(string key, GrainProperties properties)
6970
{
7071
var typeName = GetType().Name;
7172
return properties.Properties.TryGetValue($"{WellKnownGrainTypeProperties.PlacementFilter}.{typeName}.{key}", out var value) ? value : null;

src/Orleans.Core/Placement/IPlacementFilterDirector.cs

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using Orleans.Runtime;
33
using Orleans.Runtime.Placement;
44

5+
#nullable enable
56
namespace Orleans.Placement;
67

78
public interface IPlacementFilterDirector

src/Orleans.Core/Placement/PlacementFilterExtensions.cs

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using Microsoft.Extensions.DependencyInjection;
22

3+
#nullable enable
34
namespace Orleans.Placement;
45

56
public static class PlacementFilterExtensions

src/Orleans.Runtime/MembershipService/SiloMetadata/ISiloMetadataCache.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
namespace Orleans.Runtime.MembershipService.SiloMetadata;
21
#nullable enable
2+
namespace Orleans.Runtime.MembershipService.SiloMetadata;
3+
34
public interface ISiloMetadataCache
45
{
56
SiloMetadata GetMetadata(SiloAddress siloAddress);

src/Orleans.Runtime/MembershipService/SiloMetadata/ISiloMetadataClient.cs

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Threading.Tasks;
22
using Orleans.Services;
33

4+
#nullable enable
45
namespace Orleans.Runtime.MembershipService.SiloMetadata;
56

67
public interface ISiloMetadataClient : IGrainServiceClient<ISiloMetadataGrainService>

src/Orleans.Runtime/MembershipService/SiloMetadata/ISiloMetadataGrainService.cs

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Threading.Tasks;
22
using Orleans.Services;
33

4+
#nullable enable
45
namespace Orleans.Runtime.MembershipService.SiloMetadata;
56

67
[Alias("Orleans.Runtime.MembershipService.SiloMetadata.ISiloMetadataGrainService")]

src/Orleans.Runtime/MembershipService/SiloMetadata/SiloMetadaCache.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@
88
using Orleans.Configuration;
99
using Orleans.Internal;
1010

11-
namespace Orleans.Runtime.MembershipService.SiloMetadata;
1211
#nullable enable
12+
namespace Orleans.Runtime.MembershipService.SiloMetadata;
13+
1314
internal class SiloMetadataCache(
1415
ISiloMetadataClient siloMetadataClient,
1516
MembershipTableManager membershipTableManager,

src/Orleans.Runtime/MembershipService/SiloMetadata/SiloMetadata.cs

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Collections.Generic;
22
using System.Collections.Immutable;
33

4+
#nullable enable
45
namespace Orleans.Runtime.MembershipService.SiloMetadata;
56

67
[GenerateSerializer]

src/Orleans.Runtime/MembershipService/SiloMetadata/SiloMetadataClient.cs

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.Threading.Tasks;
33
using Orleans.Runtime.Services;
44

5+
#nullable enable
56
namespace Orleans.Runtime.MembershipService.SiloMetadata;
67

78
public class SiloMetadataClient(IServiceProvider serviceProvider)

src/Orleans.Runtime/MembershipService/SiloMetadata/SiloMetadataGrainService.cs

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using Microsoft.Extensions.Logging;
33
using Microsoft.Extensions.Options;
44

5+
#nullable enable
56
namespace Orleans.Runtime.MembershipService.SiloMetadata;
67

78
public class SiloMetadataGrainService : GrainService, ISiloMetadataGrainService

src/Orleans.Runtime/MembershipService/SiloMetadata/SiloMetadataHostingExtensions.cs

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
using Orleans.Placement;
77
using Orleans.Runtime.Placement.Filtering;
88

9+
#nullable enable
910
namespace Orleans.Runtime.MembershipService.SiloMetadata;
1011

1112
public static class SiloMetadataHostingExtensions

src/Orleans.Runtime/Placement/Filtering/PlacementFilterDirectorResolver.cs

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using Microsoft.Extensions.DependencyInjection;
33
using Orleans.Placement;
44

5+
#nullable enable
56
namespace Orleans.Runtime.Placement.Filtering;
67

78
/// <summary>

src/Orleans.Runtime/Placement/Filtering/PlacementFilterStrategyResolver.cs

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
using Orleans.Metadata;
77
using Orleans.Placement;
88

9+
#nullable enable
910
namespace Orleans.Runtime.Placement.Filtering;
1011

1112
/// <summary>

src/Orleans.Runtime/Placement/Filtering/PreferredMatchSiloMetadataPlacementFilterAttribute.cs

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.Diagnostics.CodeAnalysis;
33
using Orleans.Placement;
44

5+
#nullable enable
56
namespace Orleans.Runtime.Placement.Filtering;
67

78
/// <summary>

src/Orleans.Runtime/Placement/Filtering/PreferredMatchSiloMetadataPlacementFilterDirector.cs

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using System.Linq;
44
using Orleans.Placement;
55
using Orleans.Runtime.MembershipService.SiloMetadata;
6+
67
#nullable enable
78
namespace Orleans.Runtime.Placement.Filtering;
89

src/Orleans.Runtime/Placement/Filtering/PreferredMatchSiloMetadataPlacementFilterStrategy.cs

+8-2
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Orleans.Metadata;
44
using Orleans.Placement;
55

6+
#nullable enable
67
namespace Orleans.Runtime.Placement.Filtering;
78

89
public class PreferredMatchSiloMetadataPlacementFilterStrategy(string[] orderedMetadataKeys, int minCandidates, int order)
@@ -11,13 +12,18 @@ public class PreferredMatchSiloMetadataPlacementFilterStrategy(string[] orderedM
1112
public string[] OrderedMetadataKeys { get; set; } = orderedMetadataKeys;
1213
public int MinCandidates { get; set; } = minCandidates;
1314

14-
public PreferredMatchSiloMetadataPlacementFilterStrategy() : this([], 1, 0)
15+
public PreferredMatchSiloMetadataPlacementFilterStrategy() : this([], 2, 0)
1516
{
1617
}
1718

1819
public override void AdditionalInitialize(GrainProperties properties)
1920
{
20-
OrderedMetadataKeys = GetPlacementFilterGrainProperty("ordered-metadata-keys", properties).Split(",");
21+
var placementFilterGrainProperty = GetPlacementFilterGrainProperty("ordered-metadata-keys", properties);
22+
if (placementFilterGrainProperty is null)
23+
{
24+
throw new ArgumentException("Invalid ordered-metadata-keys property value.");
25+
}
26+
OrderedMetadataKeys = placementFilterGrainProperty.Split(",");
2127
var minCandidatesProperty = GetPlacementFilterGrainProperty("min-candidates", properties);
2228
if (!int.TryParse(minCandidatesProperty, out var parsedMinCandidates))
2329
{

src/Orleans.Runtime/Placement/Filtering/RequiredMatchSiloMetadataPlacementFilterAttribute.cs

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.Diagnostics.CodeAnalysis;
33
using Orleans.Placement;
44

5+
#nullable enable
56
namespace Orleans.Runtime.Placement.Filtering;
67

78
/// <summary>

src/Orleans.Runtime/Placement/Filtering/RequiredMatchSiloMetadataPlacementFilterDirector.cs

+4-3
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Orleans.Placement;
44
using Orleans.Runtime.MembershipService.SiloMetadata;
55

6+
#nullable enable
67
namespace Orleans.Runtime.Placement.Filtering;
78

89
internal class RequiredMatchSiloMetadataPlacementFilterDirector(ILocalSiloDetails localSiloDetails, ISiloMetadataCache siloMetadataCache)
@@ -28,7 +29,7 @@ public IEnumerable<SiloAddress> Filter(PlacementFilterStrategy filterStrategy, P
2829
});
2930
}
3031

31-
private static bool DoesMetadataMatch(string[] localMetadata, SiloMetadata siloMetadata, string[] metadataKeys)
32+
private static bool DoesMetadataMatch(string?[] localMetadata, SiloMetadata siloMetadata, string[] metadataKeys)
3233
{
3334
for (var i = 0; i < metadataKeys.Length; i++)
3435
{
@@ -40,9 +41,9 @@ private static bool DoesMetadataMatch(string[] localMetadata, SiloMetadata siloM
4041

4142
return true;
4243
}
43-
private static string[] GetMetadata(SiloMetadata siloMetadata, string[] metadataKeys)
44+
private static string?[] GetMetadata(SiloMetadata siloMetadata, string[] metadataKeys)
4445
{
45-
var result = new string[metadataKeys.Length];
46+
var result = new string?[metadataKeys.Length];
4647
for (var i = 0; i < metadataKeys.Length; i++)
4748
{
4849
result[i] = siloMetadata.Metadata?.GetValueOrDefault(metadataKeys[i]);

src/Orleans.Runtime/Placement/Filtering/RequiredMatchSiloMetadataPlacementFilterStrategy.cs

+7-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Orleans.Metadata;
44
using Orleans.Placement;
55

6+
#nullable enable
67
namespace Orleans.Runtime.Placement.Filtering;
78

89
public class RequiredMatchSiloMetadataPlacementFilterStrategy(string[] metadataKeys, int order)
@@ -16,7 +17,12 @@ public RequiredMatchSiloMetadataPlacementFilterStrategy() : this([], 0)
1617

1718
public override void AdditionalInitialize(GrainProperties properties)
1819
{
19-
MetadataKeys = GetPlacementFilterGrainProperty("metadata-keys", properties).Split(",");
20+
var placementFilterGrainProperty = GetPlacementFilterGrainProperty("metadata-keys", properties);
21+
if (placementFilterGrainProperty is null)
22+
{
23+
throw new ArgumentException("Invalid metadata-keys property value.");
24+
}
25+
MetadataKeys = placementFilterGrainProperty.Split(",");
2026
}
2127

2228
protected override IEnumerable<KeyValuePair<string, string>> GetAdditionalGrainProperties(IServiceProvider services, Type grainClass, GrainType grainType,

0 commit comments

Comments
 (0)