From 71862c7f0fdae6244e72ae2ff9221dea428f61a3 Mon Sep 17 00:00:00 2001 From: Ivan Smolin Date: Wed, 23 Nov 2016 18:51:29 +0300 Subject: [PATCH] use deferred --- .../LeadKit/Classes/Cursors/FixedPageCursor.swift | 13 ++++--------- LeadKit/LeadKit/Classes/Cursors/StaticCursor.swift | 10 +++------- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/LeadKit/LeadKit/Classes/Cursors/FixedPageCursor.swift b/LeadKit/LeadKit/Classes/Cursors/FixedPageCursor.swift index 09914bd9..116b642e 100644 --- a/LeadKit/LeadKit/Classes/Cursors/FixedPageCursor.swift +++ b/LeadKit/LeadKit/Classes/Cursors/FixedPageCursor.swift @@ -38,11 +38,9 @@ public class FixedPageCursor: CursorType where Cursor.LoadRe } public func loadNextBatch() -> Observable { - return Observable.create { observer in + return Observable.deferred { if self.exhausted { - observer.onError(CursorError.exhausted) - - return Disposables.create() + throw CursorError.exhausted } let restOfLoaded = self.cursor.count - self.count @@ -51,14 +49,11 @@ public class FixedPageCursor: CursorType where Cursor.LoadRe let startIndex = self.count self.count += min(restOfLoaded, self.pageSize) - observer.onNext(startIndex..: CursorType { } public func loadNextBatch() -> Observable { - return Observable.create { observer in + return Observable.deferred { if self.exhausted { - observer.onError(CursorError.exhausted) - - return Disposables.create() + throw CursorError.exhausted } self.count = self.content.count self.exhausted = true - observer.onNext(0..