指定在同步时是禁用还是启用部分下载。
setKeepPartialDownload( Boolean value )
value 如果同步时启用对部分下载的保存,则设置为 true;如果放弃部分下载,则设置为 false。
UltraLite 能够重新启动由于通信错误而失败的下载。UltraLite 在接收下载的过程中对其进行处理。如果下载被中断,则部分下载事务仍保留在数据库中,并且可在下一次同步过程中恢复。
要指示 UltraLite 应保存部分下载,请指定 Connection.syncParms.setKeepPartialDownload(true);否则当发生错误时将回退下载。
如果保留了部分下载,则当 connection.synchronize 退出时,输出字段 connection.SyncResult.getPartialDownloadRetained 将设置为 true。如果设置了 getPartialDownloadRetained,则可以继续下载。为此,使用 connection.syncParms.setResumePartialDownload(true) 调用 connection.synchronize。可能仍需要将 KeepPartialDownload 设置为 true,以免发生其它通信错误。如果跳过某一下载,将不执行任何上载。
您在恢复下载期间接收的下载将与下载最初开始时一样旧。如果您需要最新数据,则可以在专门的恢复下载完成后再立即进行一次下载。
在恢复下载时,许多 SyncParms 字段是无关的字段。您会收到在最初下载时请求的发布。只需要设置字段 setResumePartialDownload(boolean) 和 setUserName(String)。如果您愿意,也可以设置字段 setKeepPartialDownload(boolean)、setDownloadOnly(boolean) 和 setDisableConcurrency(boolean),三个字段都会正常工作。
如果不再需要现有的部分下载,可以调用 Connection.rollbackPartialDownload 回退失败的下载事务。此外,如果您尝试再次同步但没有指定 ResumePartialDownload,则部分下载在下次同步开始之前将回退。
请参见如何处理同步失败。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |