@@ -1115,29 +1115,28 @@ private void InitializeFSM()
1115
1115
{
1116
1116
When ( ThrottlerState . WaitExposedHandle , @event =>
1117
1117
{
1118
- if ( @event . FsmEvent is ThrottlerManager . Handle && @event . StateData is Uninitialized )
1118
+ if ( @event is { FsmEvent : ThrottlerManager . Handle handle , StateData : Uninitialized } )
1119
1119
{
1120
1120
// register to downstream layer and wait for origin
1121
1121
OriginalHandle . ReadHandlerSource . SetResult ( new ActorHandleEventListener ( Self ) ) ;
1122
1122
return
1123
1123
GoTo ( ThrottlerState . WaitOrigin )
1124
1124
. Using (
1125
- new ExposedHandle (
1126
- @event . FsmEvent . AsInstanceOf < ThrottlerManager . Handle > ( ) . ThrottlerHandle ) ) ;
1125
+ new ExposedHandle ( handle . ThrottlerHandle ) ) ;
1127
1126
}
1128
1127
return null ;
1129
1128
} ) ;
1130
1129
1131
1130
When ( ThrottlerState . WaitOrigin , @event =>
1132
1131
{
1133
- if ( @event . FsmEvent is InboundPayload && @event . StateData is ExposedHandle )
1132
+ if ( @event is { FsmEvent : InboundPayload payload , StateData : ExposedHandle handle } )
1134
1133
{
1135
- var b = @event . FsmEvent . AsInstanceOf < InboundPayload > ( ) . Payload ;
1134
+ var b = payload . Payload ;
1136
1135
ThrottledMessages . Enqueue ( b ) ;
1137
1136
var origin = PeekOrigin ( b ) ;
1138
1137
if ( origin != null )
1139
1138
{
1140
- Manager . Tell ( new ThrottlerManager . Checkin ( origin , @event . StateData . AsInstanceOf < ExposedHandle > ( ) . Handle ) ) ;
1139
+ Manager . Tell ( new ThrottlerManager . Checkin ( origin , handle . Handle ) ) ;
1141
1140
return GoTo ( ThrottlerState . WaitMode ) ;
1142
1141
}
1143
1142
return Stay ( ) ;
@@ -1147,17 +1146,16 @@ private void InitializeFSM()
1147
1146
1148
1147
When ( ThrottlerState . WaitMode , @event =>
1149
1148
{
1150
- if ( @event . FsmEvent is InboundPayload )
1149
+ if ( @event . FsmEvent is InboundPayload payload )
1151
1150
{
1152
- var b = @event . FsmEvent . AsInstanceOf < InboundPayload > ( ) . Payload ;
1151
+ var b = payload . Payload ;
1153
1152
ThrottledMessages . Enqueue ( b ) ;
1154
1153
return Stay ( ) ;
1155
1154
}
1156
1155
1157
- if ( @event . FsmEvent is ThrottleMode && @event . StateData is ExposedHandle )
1156
+ if ( @event is { FsmEvent : ThrottleMode mode , StateData : ExposedHandle handle } )
1158
1157
{
1159
- var mode = @event . FsmEvent . AsInstanceOf < ThrottleMode > ( ) ;
1160
- var exposedHandle = @event . StateData . AsInstanceOf < ExposedHandle > ( ) . Handle ;
1158
+ var exposedHandle = handle . Handle ;
1161
1159
InboundThrottleMode = mode ;
1162
1160
try
1163
1161
{
@@ -1191,16 +1189,15 @@ private void InitializeFSM()
1191
1189
1192
1190
When ( ThrottlerState . WaitUpstreamListener , @event =>
1193
1191
{
1194
- if ( @event . FsmEvent is InboundPayload )
1192
+ if ( @event . FsmEvent is InboundPayload payload )
1195
1193
{
1196
- var b = @event . FsmEvent . AsInstanceOf < InboundPayload > ( ) ;
1197
- ThrottledMessages . Enqueue ( b . Payload ) ;
1194
+ ThrottledMessages . Enqueue ( payload . Payload ) ;
1198
1195
return Stay ( ) ;
1199
1196
}
1200
1197
1201
- if ( @event . FsmEvent is ThrottlerManager . Listener )
1198
+ if ( @event . FsmEvent is ThrottlerManager . Listener listener )
1202
1199
{
1203
- UpstreamListener = @event . FsmEvent . AsInstanceOf < ThrottlerManager . Listener > ( ) . HandleEventListener ;
1200
+ UpstreamListener = listener . HandleEventListener ;
1204
1201
Self . Tell ( new Dequeue ( ) ) ;
1205
1202
return GoTo ( ThrottlerState . Throttling ) ;
1206
1203
}
@@ -1210,19 +1207,17 @@ private void InitializeFSM()
1210
1207
1211
1208
When ( ThrottlerState . WaitModeAndUpstreamListener , @event =>
1212
1209
{
1213
- if ( @event . FsmEvent is ThrottlerManager . ListenerAndMode )
1210
+ if ( @event . FsmEvent is ThrottlerManager . ListenerAndMode listenerAndMode )
1214
1211
{
1215
- var listenerAndMode = @event . FsmEvent . AsInstanceOf < ThrottlerManager . ListenerAndMode > ( ) ;
1216
1212
UpstreamListener = listenerAndMode . HandleEventListener ;
1217
1213
InboundThrottleMode = listenerAndMode . Mode ;
1218
1214
Self . Tell ( new Dequeue ( ) ) ;
1219
1215
return GoTo ( ThrottlerState . Throttling ) ;
1220
1216
}
1221
1217
1222
- if ( @event . FsmEvent is InboundPayload )
1218
+ if ( @event . FsmEvent is InboundPayload inboundPayload )
1223
1219
{
1224
- var b = @event . FsmEvent . AsInstanceOf < InboundPayload > ( ) ;
1225
- ThrottledMessages . Enqueue ( b . Payload ) ;
1220
+ ThrottledMessages . Enqueue ( inboundPayload . Payload ) ;
1226
1221
return Stay ( ) ;
1227
1222
}
1228
1223
@@ -1231,9 +1226,8 @@ private void InitializeFSM()
1231
1226
1232
1227
When ( ThrottlerState . Throttling , @event =>
1233
1228
{
1234
- if ( @event . FsmEvent is ThrottleMode )
1229
+ if ( @event . FsmEvent is ThrottleMode mode )
1235
1230
{
1236
- var mode = @event . FsmEvent . AsInstanceOf < ThrottleMode > ( ) ;
1237
1231
InboundThrottleMode = mode ;
1238
1232
if ( mode is Blackhole ) ThrottledMessages = new Queue < ByteString > ( ) ;
1239
1233
CancelTimer ( DequeueTimerName ) ;
@@ -1243,9 +1237,9 @@ private void InitializeFSM()
1243
1237
return Stay ( ) ;
1244
1238
}
1245
1239
1246
- if ( @event . FsmEvent is InboundPayload )
1240
+ if ( @event . FsmEvent is InboundPayload inboundPayload )
1247
1241
{
1248
- ForwardOrDelay ( @event . FsmEvent . AsInstanceOf < InboundPayload > ( ) . Payload ) ;
1242
+ ForwardOrDelay ( inboundPayload . Payload ) ;
1249
1243
return Stay ( ) ;
1250
1244
}
1251
1245
@@ -1269,9 +1263,9 @@ private void InitializeFSM()
1269
1263
WhenUnhandled ( @event =>
1270
1264
{
1271
1265
// we should always set the throttling mode
1272
- if ( @event . FsmEvent is ThrottleMode )
1266
+ if ( @event . FsmEvent is ThrottleMode mode )
1273
1267
{
1274
- InboundThrottleMode = @event . FsmEvent . AsInstanceOf < ThrottleMode > ( ) ;
1268
+ InboundThrottleMode = mode ;
1275
1269
Sender . Tell ( SetThrottleAck . Instance ) ;
1276
1270
return Stay ( ) ;
1277
1271
}
@@ -1281,9 +1275,9 @@ private void InitializeFSM()
1281
1275
return Stop ( ) ; // not notifying the upstream handler is intentional: we are relying on heartbeating
1282
1276
}
1283
1277
1284
- if ( @event . FsmEvent is FailWith )
1278
+ if ( @event . FsmEvent is FailWith failWith )
1285
1279
{
1286
- var reason = @event . FsmEvent . AsInstanceOf < FailWith > ( ) . FailReason ;
1280
+ var reason = failWith . FailReason ;
1287
1281
if ( UpstreamListener != null ) UpstreamListener . Notify ( new Disassociated ( reason ) ) ;
1288
1282
return Stop ( ) ;
1289
1283
}
@@ -1310,9 +1304,9 @@ private Address PeekOrigin(ByteString b)
1310
1304
try
1311
1305
{
1312
1306
var pdu = _codec . DecodePdu ( b ) ;
1313
- if ( pdu is Associate )
1307
+ if ( pdu is Associate associate )
1314
1308
{
1315
- return pdu . AsInstanceOf < Associate > ( ) . Info . Origin ;
1309
+ return associate . Info . Origin ;
1316
1310
}
1317
1311
return null ;
1318
1312
}
0 commit comments