public class Lineup extends Object
Only an EpgClient can instantiate objects of this class.
When there's a discrepancy between the descriptions of data found in this source code and that found here then the latter web source will always take precedence!
Modifier and Type | Method and Description |
---|---|
void |
fetchDetails(boolean fetchAirings)
Fill in the details of this Lineup object
|
String |
getId() |
Date |
getLastModified() |
String |
getLocation() |
String |
getName() |
Map<String,List<String>> |
getPhysicalStationMap() |
Station |
getStation(String stationId)
Return the Station object for a given Station id in the lineup
|
Map<String,List<String>> |
getStationMap() |
Station[] |
getStations() |
String |
getType() |
String |
getUri() |
boolean |
hasPhysicalMapping() |
String |
toString() |
public void fetchDetails(boolean fetchAirings) throws IOException
You must call this method before calling any of the object's accessor methods. The Lineup object is built in a JIT manner.
Until this method is called, a Lineup object only contains minimal data to help identify the lineup it represents. Since most of the details of a Lineup are gathered thru the construction of other objects, their construction is relatively expensive and is therefore implemented in a JIT manner. EpgClients that are accessing data from a local cache (i.e. ZipEpgClient) can usually safely call this method with fetchAirings=true whereas EpgClients hitting the remote Schedules Direct servers to fill this object in will probably want to do it on demand unless you know you need access to all the airings in all the lineup's stations. Either way, building a complete Lineup object over the network is going to be very slow; even slowing if you request all airings to be pulled down as well. Even ZipEpgClient should avoid pulling in all Airings for a Lineup unless you know you're going to need them all. Even with a local cache, building up the complete Lineup with all metadata and airings is still very expensive.
fetchAirings
- If true, all Stations will fill in their Airings as well, otherwise Stations will fill Airings in as neededIOException
- On any IO errorInvalidJsonObjectException
- If the JSON response from upstream is not in the expected formatpublic boolean hasPhysicalMapping()
public Date getLastModified()
public String getLocation()
public String getName()
public Map<String,List<String>> getStationMap()
public Map<String,List<String>> getPhysicalStationMap()
public Station[] getStations()
public Station getStation(String stationId)
stationId
- The station id to fetchpublic String getUri()
public String getType()
public String getId()
Copyright © 2012–2014 Battams, Derek. All rights reserved.