public override ServiceHost GetNewServiceHost(WindowsServiceDescription description) { var host = _hostBuilder.ManufactureServiceHost(description); _hostBuilder.AddEndpoints(host, description); _hostBuilder.ConfigureAuthorization(host); _hostBuilder.WireUpEvents(host, description.HostEventResponder); return host; }
public override void AddEndpoints(ServiceHost host, WindowsServiceDescription description) { foreach (var item in description.Endpoints) { var address = GetEndpointUri(item.Binding, item.Port, item.Address); var endpoint = host.AddServiceEndpoint(item.Contract, item.Binding, address); if (item.Binding is WebHttpBinding) endpoint.Behaviors.Add(new WebHttpBehavior()); } }
public override ServiceHost ManufactureServiceHost(WindowsServiceDescription description) { if (description.ServiceType != null) { return new ServiceHost(description.ServiceType); } if (description.ServiceObject != null) { return new ServiceHost(description.ServiceObject); } throw new InvalidOperationException(Strings.EXCEPTION_ServiceDescriptionNeedsTypeOrObject); }
public abstract ServiceHost ManufactureServiceHost(WindowsServiceDescription description);
public abstract void AddEndpoints(ServiceHost host, WindowsServiceDescription description);
protected void BuildHost(WindowsServiceDescription description) { Host?.Close(); Host = _hostFactory.GetNewServiceHost(description); }
public abstract ServiceHost GetNewServiceHost(WindowsServiceDescription description);