/// <summary> /// Starts this component. /// Starts WCF service if it is enabled. /// </summary> public override void Start() { var service = new SBService(_subscriptionsManager, _sendingManager, _receivingManager); if (UseWcfSettingsFromConfig) { _logger.LogDebugMessage(nameof(WcfService), "Creating WCF host using configuration"); _wcfServiceHost = new ServiceHost(service); } else { _logger.LogDebugMessage(nameof(WcfService), "Creating WCF host using specified binding and address"); _wcfServiceHost = new ServiceHostWithoutConfiguration(service); _wcfServiceHost.AddServiceEndpoint(typeof(IServiceBusService), Binding, Address); _wcfServiceHost.AddServiceEndpoint(typeof(IServiceBusInterop), Binding, Address); _wcfServiceHost.AddServiceEndpoint(typeof(ICallbackSubscriber), Binding, Address); } _logger.LogDebugMessage(nameof(WcfService), "Opening WCF host"); _wcfServiceHost.Open(); _logger.LogDebugMessage(nameof(WcfService), "WCF host opened"); base.Start(); }
/// <summary> /// Starts this component. /// Starts WCF service if it is enabled. /// </summary> public override void Start() { var service = new SBService(_subscriptionsManager, _sendingManager, _receivingManager, _statisticsService, _objectRepository); if (UseWcfSettingsFromConfig) { _logger.LogDebugMessage(nameof(WcfService), "Creating WCF host using configuration"); _wcfServiceHost = new ServiceHost(service); } else { _logger.LogDebugMessage(nameof(WcfService), "Creating WCF host using specified binding and address"); _wcfServiceHost = new ServiceHostWithoutConfiguration(service); _wcfServiceHost.AddServiceEndpoint(typeof(IServiceBusService), Binding, Address); _wcfServiceHost.AddServiceEndpoint(typeof(IServiceBusInterop), Binding, Address); _wcfServiceHost.AddServiceEndpoint(typeof(ICallbackSubscriber), Binding, Address); if (PublishWSDL) { _wcfServiceHost.Description.Behaviors.Remove <ServiceMetadataBehavior>(); _wcfServiceHost.Description.Behaviors.Add(new ServiceMetadataBehavior() { HttpGetUrl = Address, HttpGetEnabled = true, }); } } _logger.LogDebugMessage(nameof(WcfService), "Opening WCF host"); _wcfServiceHost.Open(); _logger.LogDebugMessage(nameof(WcfService), "WCF host opened"); base.Start(); }
/// <summary> /// Initializes new instance of <see cref="ServiceHostWithoutConfiguration"/> class /// with specified service instance. /// </summary> /// <param name="service">The WCF service instance for hosting.</param> public ServiceHostWithoutConfiguration(SBService service) : base(service) { }