Exemplo n.º 1
0
 /// <summary>
 /// Adds remote listener to stateless service
 /// </summary>
 public static ServiceFabricHostBuilder <OmexStatelessService, StatelessServiceContext> AddRemotingListener <TService>(
     this ServiceFabricHostBuilder <OmexStatelessService, StatelessServiceContext> builder,
     string name,
     FabricTransportRemotingListenerSettings?settings = null)
     where TService : class, IService =>
 builder
 .ConfigureServices((_, services) => services.TryAddTransient <TService>())
 .AddRemotingListener(name, (provider, _) => provider.GetRequiredService <TService>(), settings);
Exemplo n.º 2
0
        public void AddRemotingListener_ToStatelessServiceUsingIServiceTypeThatHasRegisteredDependencies_BuildDoesNotThrow()
        {
            string expectedName = nameof(AddRemotingListener_ToStatelessServiceUsingIServiceType_RegisterType);
            FabricTransportRemotingListenerSettings settings = new FabricTransportRemotingListenerSettings();
            HostBuilder builder = new HostBuilder();
            ServiceFabricHostBuilder <OmexStatelessService, StatelessServiceContext> sfBuilder =
                MockServiceFabricHostBuilder.CreateMockBuilder <OmexStatelessService, StatelessServiceContext>(builder);

            sfBuilder.ConfigureServices((_, services) => services.AddTransient <IMockServiceDependency, MockServiceDependency>());
            sfBuilder.AddRemotingListener <MockServiceWithDependencies>(expectedName, settings);

            IListenerBuilder <OmexStatelessService> value = builder.Build().Services.GetRequiredService <IListenerBuilder <OmexStatelessService> >();

            ICommunicationListener service = value.Build(MockServiceFabricServices.MockOmexStatelessService);

            Assert.IsNotNull(service);
            Assert.AreEqual(expectedName, value.Name);
            Assert.AreEqual(settings, GetSettings(value));
        }