@@ -200,10 +200,8 @@ public virtual async Task<Response<ConfigurationSetting>> AddConfigurationSettin
200
200
case 200 :
201
201
case 201 :
202
202
return await CreateResponseAsync ( response , cancellationToken ) . ConfigureAwait ( false ) ;
203
- case 412 :
204
- throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ;
205
203
default :
206
- throw new RequestFailedException ( response ) ;
204
+ throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ;
207
205
}
208
206
}
209
207
catch ( Exception e )
@@ -239,10 +237,8 @@ public virtual Response<ConfigurationSetting> AddConfigurationSetting(Configurat
239
237
case 200 :
240
238
case 201 :
241
239
return CreateResponse ( response ) ;
242
- case 412 :
243
- throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ;
244
240
default :
245
- throw new RequestFailedException ( response ) ;
241
+ throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ;
246
242
}
247
243
}
248
244
catch ( Exception e )
@@ -309,10 +305,9 @@ public virtual async Task<Response<ConfigurationSetting>> SetConfigurationSettin
309
305
return response . Status switch
310
306
{
311
307
200 => await CreateResponseAsync ( response , cancellationToken ) . ConfigureAwait ( false ) ,
312
- 409 => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
313
308
314
309
// Throws on 412 if resource was modified.
315
- _ => throw new RequestFailedException ( response ) ,
310
+ _ => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
316
311
} ;
317
312
}
318
313
catch ( Exception e )
@@ -352,10 +347,9 @@ public virtual Response<ConfigurationSetting> SetConfigurationSetting(Configurat
352
347
return response . Status switch
353
348
{
354
349
200 => CreateResponse ( response ) ,
355
- 409 => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
356
350
357
351
// Throws on 412 if resource was modified.
358
- _ => throw new RequestFailedException ( response ) ,
352
+ _ => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
359
353
} ;
360
354
}
361
355
catch ( Exception e )
@@ -441,10 +435,9 @@ private async Task<Response> DeleteConfigurationSettingAsync(string key, string
441
435
{
442
436
200 => response ,
443
437
204 => response ,
444
- 409 => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
445
438
446
439
// Throws on 412 if resource was modified.
447
- _ => throw new RequestFailedException ( response )
440
+ _ => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
448
441
} ;
449
442
}
450
443
catch ( Exception e )
@@ -470,10 +463,9 @@ private Response DeleteConfigurationSetting(string key, string label, MatchCondi
470
463
{
471
464
200 => response ,
472
465
204 => response ,
473
- 409 => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
474
466
475
467
// Throws on 412 if resource was modified.
476
- _ => throw new RequestFailedException ( response )
468
+ _ => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
477
469
} ;
478
470
}
479
471
catch ( Exception e )
@@ -596,7 +588,7 @@ internal virtual async Task<Response<ConfigurationSetting>> GetConfigurationSett
596
588
{
597
589
200 => await CreateResponseAsync ( response , cancellationToken ) . ConfigureAwait ( false ) ,
598
590
304 => CreateResourceModifiedResponse ( response ) ,
599
- _ => throw new RequestFailedException ( response ) ,
591
+ _ => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) )
600
592
} ;
601
593
}
602
594
catch ( Exception e )
@@ -633,7 +625,7 @@ internal virtual Response<ConfigurationSetting> GetConfigurationSetting(string k
633
625
{
634
626
200 => CreateResponse ( response ) ,
635
627
304 => CreateResourceModifiedResponse ( response ) ,
636
- _ => throw new RequestFailedException ( response ) ,
628
+ _ => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) )
637
629
} ;
638
630
}
639
631
catch ( Exception e )
@@ -1386,7 +1378,7 @@ private async ValueTask<Response<ConfigurationSetting>> SetReadOnlyAsync(string
1386
1378
200 => async
1387
1379
? await CreateResponseAsync ( response , cancellationToken ) . ConfigureAwait ( false )
1388
1380
: CreateResponse ( response ) ,
1389
- _ => throw new RequestFailedException ( response )
1381
+ _ => throw new RequestFailedException ( response , null , new ConfigurationRequestFailedDetailsParser ( ) ) ,
1390
1382
} ;
1391
1383
}
1392
1384
catch ( Exception e )
@@ -1469,22 +1461,24 @@ private static RequestContext CreateRequestContext(ErrorOptions errorOptions, Ca
1469
1461
1470
1462
private class ConfigurationRequestFailedDetailsParser : RequestFailedDetailsParser
1471
1463
{
1464
+ private const string TroubleshootingMessage =
1465
+ "For troubleshooting information, see https://aka.ms/azsdk/net/appconfiguration/troubleshoot." ;
1472
1466
public override bool TryParse ( Response response , out ResponseError error , out IDictionary < string , string > data )
1473
1467
{
1474
1468
switch ( response . Status )
1475
1469
{
1476
1470
case 409 :
1477
- error = new ResponseError ( null , "The setting is read only" ) ;
1471
+ error = new ResponseError ( null , $ "The setting is read only. { TroubleshootingMessage } ") ;
1478
1472
data = null ;
1479
1473
return true ;
1480
1474
case 412 :
1481
- error = new ResponseError ( null , "Setting was already present." ) ;
1475
+ error = new ResponseError ( null , $ "Setting was already present. { TroubleshootingMessage } ") ;
1482
1476
data = null ;
1483
1477
return true ;
1484
1478
default :
1485
- error = null ;
1479
+ error = new ResponseError ( null , TroubleshootingMessage ) ;
1486
1480
data = null ;
1487
- return false ;
1481
+ return true ;
1488
1482
}
1489
1483
}
1490
1484
}
0 commit comments