Esempio n. 1
0
        /// <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();
        }
Esempio n. 3
0
 /// <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)
 {
 }