예제 #1
0
        public HueBridgeScoutService(string baseAddress, HueBridgeScout hbScout, VLogger logger)
        {
            this.logger = logger;
            this.hueBridgeScout = hbScout;

            service = new ServiceHost(this, new Uri(baseAddress));

            var contract = ContractDescription.GetContract(typeof(IHueBridgeScoutContract));

            var webBinding = new WebHttpBinding();
            var webEndPoint = new ServiceEndpoint(contract, webBinding, new EndpointAddress(baseAddress));
            webEndPoint.EndpointBehaviors.Add(new WebHttpBehavior());

            service.AddServiceEndpoint(webEndPoint);

            service.Description.Behaviors.Add(new ServiceMetadataBehavior());
            service.AddServiceEndpoint(typeof(IMetadataExchange), MetadataExchangeBindings.CreateMexHttpBinding(), "mex");

            service.Open();
        }
예제 #2
0
        public HueBridgeScoutService(string baseAddress, HueBridgeScout hbScout, VLogger logger)
        {
            this.logger         = logger;
            this.hueBridgeScout = hbScout;

            service = new ServiceHost(this, new Uri(baseAddress));

            var contract = ContractDescription.GetContract(typeof(IHueBridgeScoutContract));

            var webBinding  = new WebHttpBinding();
            var webEndPoint = new ServiceEndpoint(contract, webBinding, new EndpointAddress(baseAddress));

            webEndPoint.EndpointBehaviors.Add(new WebHttpBehavior());

            service.AddServiceEndpoint(webEndPoint);

            service.Description.Behaviors.Add(new ServiceMetadataBehavior());
            service.AddServiceEndpoint(typeof(IMetadataExchange), MetadataExchangeBindings.CreateMexHttpBinding(), "mex");

            service.Open();
        }