aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-08-10 15:09:10 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-08-10 15:09:10 -0400
commit1e9292c4543381338df3d0135f326801f0daf2b4 (patch)
tree2c5468b7f075863c2821b2cb0584dddc288ba168
parent4f6fb1a76ea3f6f088ce5d524c398b746977dea1 (diff)
update tv
-rw-r--r--MediaBrowser.Api/LiveTv/LiveTvService.cs5
-rw-r--r--MediaBrowser.Controller/LiveTv/ILiveTvManager.cs3
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListings.cs2
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListingsNorthAmerica.cs2
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/IEmbyListingProvider.cs2
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs28
6 files changed, 30 insertions, 12 deletions
diff --git a/MediaBrowser.Api/LiveTv/LiveTvService.cs b/MediaBrowser.Api/LiveTv/LiveTvService.cs
index bdec55561..e55103230 100644
--- a/MediaBrowser.Api/LiveTv/LiveTvService.cs
+++ b/MediaBrowser.Api/LiveTv/LiveTvService.cs
@@ -440,6 +440,9 @@ namespace MediaBrowser.Api.LiveTv
[ApiMember(Name = "Id", Description = "Provider id", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
public string Id { get; set; }
+ [ApiMember(Name = "Type", Description = "Provider Type", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
+ public string Type { get; set; }
+
[ApiMember(Name = "Location", Description = "Location", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
public string Location { get; set; }
@@ -535,7 +538,7 @@ namespace MediaBrowser.Api.LiveTv
public async Task<object> Get(GetLineups request)
{
- var info = await _liveTvManager.GetLineups(request.Id, request.Country, request.Location).ConfigureAwait(false);
+ var info = await _liveTvManager.GetLineups(request.Type, request.Id, request.Country, request.Location).ConfigureAwait(false);
return ToOptimizedSerializedResultUsingCache(info);
}
diff --git a/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs b/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs
index 889875383..e568b2eae 100644
--- a/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs
+++ b/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs
@@ -357,10 +357,11 @@ namespace MediaBrowser.Controller.LiveTv
/// <summary>
/// Gets the lineups.
/// </summary>
+ /// <param name="providerType">Type of the provider.</param>
/// <param name="providerId">The provider identifier.</param>
/// <param name="country">The country.</param>
/// <param name="location">The location.</param>
/// <returns>Task&lt;List&lt;NameIdPair&gt;&gt;.</returns>
- Task<List<NameIdPair>> GetLineups(string providerId, string country, string location);
+ Task<List<NameIdPair>> GetLineups(string providerType, string providerId, string country, string location);
}
}
diff --git a/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListings.cs b/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListings.cs
index 5edebb393..e446ff469 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListings.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListings.cs
@@ -48,7 +48,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings.Emby
public Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string country, string location)
{
- return GetListingsProvider(country).GetLineups(info, country, location);
+ return GetListingsProvider(country).GetLineups(country, location);
}
private IEmbyListingProvider GetListingsProvider(string country)
diff --git a/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListingsNorthAmerica.cs b/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListingsNorthAmerica.cs
index 4713e3074..6fc6975a8 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListingsNorthAmerica.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/EmbyListingsNorthAmerica.cs
@@ -43,7 +43,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings.Emby
return Task.FromResult(true);
}
- public async Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string country, string location)
+ public async Task<List<NameIdPair>> GetLineups(string country, string location)
{
// location = postal code
var path = await GetResponse<String>("https://data.emby.media/service/lineups?postalCode=" + location).ConfigureAwait(false);
diff --git a/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/IEmbyListingProvider.cs b/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/IEmbyListingProvider.cs
index 83477acfc..95c22b986 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/IEmbyListingProvider.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/Listings/Emby/IEmbyListingProvider.cs
@@ -13,6 +13,6 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings.Emby
Task<IEnumerable<ProgramInfo>> GetProgramsAsync(ListingsProviderInfo info, string channelNumber, DateTime startDateUtc, DateTime endDateUtc, CancellationToken cancellationToken);
Task AddMetadata(ListingsProviderInfo info, List<ChannelInfo> channels, CancellationToken cancellationToken);
Task Validate(ListingsProviderInfo info, bool validateLogin, bool validateListings);
- Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string country, string location);
+ Task<List<NameIdPair>> GetLineups(string country, string location);
}
}
diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
index aa883ce75..02ca7f0f6 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
@@ -2272,20 +2272,34 @@ namespace MediaBrowser.Server.Implementations.LiveTv
return info;
}
- public Task<List<NameIdPair>> GetLineups(string providerId, string country, string location)
+ public Task<List<NameIdPair>> GetLineups(string providerType, string providerId, string country, string location)
{
var config = GetConfiguration();
- var info = config.ListingProviders.FirstOrDefault(i => string.Equals(i.Id, providerId, StringComparison.OrdinalIgnoreCase));
+ if (string.IsNullOrWhiteSpace(providerId))
+ {
+ var provider = _listingProviders.FirstOrDefault(i => string.Equals(providerType, i.Type, StringComparison.OrdinalIgnoreCase));
- var provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase));
+ if (provider == null)
+ {
+ throw new ResourceNotFoundException();
+ }
- if (provider == null)
- {
- throw new ResourceNotFoundException();
+ return provider.GetLineups(null, country, location);
}
+ else
+ {
+ var info = config.ListingProviders.FirstOrDefault(i => string.Equals(i.Id, providerId, StringComparison.OrdinalIgnoreCase));
- return provider.GetLineups(info, country, location);
+ var provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase));
+
+ if (provider == null)
+ {
+ throw new ResourceNotFoundException();
+ }
+
+ return provider.GetLineups(info, country, location);
+ }
}
}
}