IChannelLineupProvider
用于替换EPG内频道列表的数据提供商对象。
详情
该提供商用于将EPG内的所有频道设置/替换为一组全新的频道。使用不同频道列表多次调用add() 函数,可创建一组新频道,然后在最终调用commit() 函数时,用这组新频道替换EPG以前的所有频道。如果在调用commit() 之前销毁提供商对象,则队伍中的所有变更都将丢失。请注意,此接口并非线程安全。请勿出于应用于不同线程之目的为该对象创建多个实例,以免发生不确定行为。如果此对象的任一方法已出现错误,请弃用此对象并创建一个新实例。
方法
add()
add(
channels):Promise<void>
将频道列表添加到提交队列。
参数
channels
要插入的频道数组。
返回值
Promise<void>
详情
该函数可调用一次或多次,从而为EPG添加频道数据。引入数据将仅在调用commit() 函数时提交。
抛出
如果在同一个IChannelLineupProvider的任一方法已抛出错误后继续调用该函数,则出现IllegalStateError。
抛出
如果提供的频道全都无效,则抛出InvalidArgumentError。错误消息将包括插入失败的总数和前5个失败频道的原因。错误消息示例请参阅开发者指南。
抛出
如果该函数遇到不可恢复的错误(如数据存储连接问题等),则抛出InternalError。错误消息将包含失败的频道以及导致失败的错误。
抛出
如果该函数遇到因引入的数据超过存储限制导致的错误,则抛出StorageLimitError。如果您遇到此错误,请咨询您的亚马逊联系人。
commit()
commit(
version):Promise<void>
将现有频道数据替换为添加到提交队列中的待处理频道数据。
参数
version
string
表示正在提交的频道时间表版本的字符串。
返回值
Promise<void>
详情
在使用add() 函数将所有数据添加到提交队列后,应调用该函数。在提交提供商后,所有既有频道将从数据存储中移除,并替换为添加到该提供商对象的所有频道。调用成功后,EpgLineupInformation.getLastCommittedChannelLineupVersion()将开始返回该版本值。
抛出
如果在提供商采用的某种方法抛出错误后继续调用该函数,则抛出IllegalStateError。
抛出
如果数据无法提交到数据存储,则抛出InternalError。
Last updated: 2025年9月30日

