in src/Microsoft.ServiceFabric.AspNetCore/WebHostBuilderServiceFabricExtension.cs [26:56]
public static IWebHostBuilder UseServiceFabricIntegration(this IWebHostBuilder hostBuilder, AspNetCoreCommunicationListener listener, ServiceFabricIntegrationOptions options)
{
if (hostBuilder == null)
{
throw new ArgumentNullException("hostBuilder");
}
// Check if 'UseServiceFabricIntegration' has already been called.
if (hostBuilder.GetSetting(SettingName) == true.ToString())
{
return hostBuilder;
}
// Set flag to prevent double service configuration
hostBuilder.UseSetting(SettingName, true.ToString());
// Configure listener to use PartitionId and ReplicaId as urlSuffix only when specified in options.
if (options.HasFlag(ServiceFabricIntegrationOptions.UseUniqueServiceUrl))
{
// notify listener to use urlSuffix when giving url to Service Fabric Runtime from OpenAsync()
listener.ConfigureToUseUniqueServiceUrl();
}
hostBuilder.ConfigureServices(services =>
{
// Configure MiddleWare
services.AddSingleton<IStartupFilter>(new ServiceFabricSetupFilter(listener.UrlSuffix, options));
});
return hostBuilder;
}