protected override void AddPlugins(ItemModel source, Endpoint endpoint) { //create the plugin & populate the plugin using values from item var settings = new JsonServiceEndpointSettings { Host = GetStringValue(source, JsonServiceEndpointItemModel.Host), Protocol = GetStringValue(source, JsonServiceEndpointItemModel.Protocol), Scheme = GetStringValue(source, JsonServiceEndpointItemModel.AuthorizationScheme), Parameter = GetStringValue(source, JsonServiceEndpointItemModel.AuthorizationParameter) }; //add the plugin to the endpoint endpoint.Plugins.Add(settings); }
public HttpClient GetHttpClient(JsonServiceEndpointSettings endpointSettings) { var client = new HttpClient { BaseAddress = new Uri(endpointSettings.Protocol.ToLowerInvariant() + "://" + endpointSettings.Host) }; client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); //Authentication if (!string.IsNullOrEmpty(endpointSettings.Scheme) && !string.IsNullOrEmpty(endpointSettings.Parameter)) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(endpointSettings.Scheme, endpointSettings.Parameter); } return(client); }