RestKit を使用して XML ファイルをマップしています。そのファイルには、クラスにマップされるいくつかの項目がありますListItem
。これらのリスト項目には、サムネイル画像ファイルへの参照があります。マッピングが完了したらすぐにサムネイルのダウンロードを開始するので、必要なときに確実に利用できるようになります。
これらのファイルが正しくダウンロードされていることを確認したいと思います。キャッシュ内のファイルの存在を確認することは問題になりませんが、すべてのファイルのダウンロードが成功した場合にのみコンテキストが保存されるようにしたいと考えています。
どの時点で保存が行われているのかわかりません。マッピング メソッドを呼び出した後
[objectManager loadObjectsAtResourcePath:@"data.xml" delegate:self];
マッピングが行われ、結果が得られます
- (void)objectLoader:(RKObjectLoader*)objectLoader didLoadObjects:(NSArray*)objects
ここで画像のダウンロードを開始しますが、その時点でコンテキストは既に保存されています。この動作を防ぐ方法がわかりません。
私が思いついた唯一のアイデアは、SQLファイルを複製し、複製ファイルを使用しobjectStore
て同期を実行することです。同期が成功すると、元の SQL が複製で上書きされます。
これを行うためのより良い方法を知っている人はいますか?マッピング プロセスで呼び出されているメソッドを見逃していませんか?