internal static Uri ToAddVenueUri(this VenueServiceSettings extendee)
        {
            var uri     = new Uri(extendee.ApiUrl);
            var trimmed = uri.AbsoluteUri.TrimEnd('/');

            return(new Uri($"{trimmed}/AddVenue"));
        }
コード例 #2
0
        public VenueService(
            ILogger <VenueService> logger,
            HttpClient httpClient,
            IOptions <VenueServiceSettings> settings)
        {
            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }

            if (httpClient == null)
            {
                throw new ArgumentNullException(nameof(httpClient));
            }

            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            _logger     = logger;
            _settings   = settings.Value;
            _httpClient = httpClient;
            _httpClient.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", _settings.ApiKey);

            _getVenueByIdUri         = settings.Value.ToGetVenueByIdUri();
            _getVenueByPRNAndNameUri = settings.Value.ToGetVenuesByPRNAndNameUri();
            _updateVenueUri          = settings.Value.ToUpdateVenueUrl();
            _searchVenueUri          = settings.Value.ToSearchVenueUri();
            _addVenueUri             = settings.Value.ToAddVenueUri();
        }
        public VenueService(
            ILogger <VenueService> logger,
            //HttpClient httpClient,   // getting "cannot access disposed object" exceptions from the bulk file uploader
            IOptions <VenueServiceSettings> settings)
        {
            Throw.IfNull(logger, nameof(logger));
            //Throw.IfNull(httpClient, nameof(httpClient));
            Throw.IfNull(settings, nameof(settings));

            _logger   = logger;
            _settings = settings.Value;
            //_httpClient = httpClient;

            _getVenueByIdUri         = settings.Value.ToGetVenueByIdUri();
            _getVenueByVenueIdUri    = settings.Value.ToGetVenueByVenueIdUri();
            _getVenueByLocationIdUri = settings.Value.ToGetVenueByLocationIdUri();
            _getVenueByPRNAndNameUri = settings.Value.ToGetVenuesByPRNAndNameUri();
            _updateVenueUri          = settings.Value.ToUpdateVenueUrl();
            _searchVenueUri          = settings.Value.ToSearchVenueUri();
            _addVenueUri             = settings.Value.ToAddVenueUri();
        }
 internal static Uri ToAddVenueUri(this VenueServiceSettings extendee)
 {
     return(new Uri(extendee.ApiUrl + "addvenue"));
 }
 internal static Uri ToSearchVenueUri(this VenueServiceSettings extendee)
 {
     return(new Uri(extendee.ApiUrl + "GetVenuesByPRN"));
 }
 internal static Uri ToGetVenuesByPRNAndNameUri(this VenueServiceSettings extendee)
 {
     return(new Uri(extendee.ApiUrl + "GetVenuesByPRNAndName"));
 }
 internal static Uri ToGetVenueByVenueIdUri(this VenueServiceSettings extendee)
 {
     return(new Uri(extendee.ApiUrl + "GetVenueByVenueId"));
 }
 internal static Uri ToUpdateVenueUrl(this VenueServiceSettings extendee)
 {
     return(new Uri(extendee.ApiUrl + "UpdateVenueById"));
 }
コード例 #9
0
 internal static Uri ToAddVenueUri(this VenueServiceSettings extendee)
 {
     return(new Uri($"{extendee.ApiUrl + "addvenue?code=" + extendee.ApiKey}"));
 }
コード例 #10
0
 internal static Uri ToSearchVenueUri(this VenueServiceSettings extendee)
 {
     return(new Uri($"{extendee.ApiUrl + "GetVenuesByPRN?code=" + extendee.ApiKey}"));
 }
コード例 #11
0
 internal static Uri ToGetVenueByVenueIdUri(this VenueServiceSettings extendee)
 {
     return(new Uri($"{extendee.ApiUrl + "GetVenueByVenueId?code=" + extendee.ApiKey}"));
 }
コード例 #12
0
 internal static Uri ToUpdateVenueUrl(this VenueServiceSettings extendee)
 {
     return(new Uri($"{extendee.ApiUrl + "UpdateVenueById?code=" + extendee.ApiKey}"));
 }
コード例 #13
0
 internal static Uri ToGetAllVenues(this VenueServiceSettings extendee)
 {
     return(new Uri($"{extendee.ApiUrl + "getAllVenues?code=" + extendee.ApiKey}"));
 }