mirror of
https://github.com/geometer/FBReaderJ.git
synced 2025-10-05 10:49:24 +02:00
more refactoring: String -> ZLNetworkException (code is still not compilable)
This commit is contained in:
parent
b2f140c612
commit
b5aea623a2
12 changed files with 120 additions and 101 deletions
|
@ -82,40 +82,46 @@ abstract class ItemsLoadingRunnable implements Runnable {
|
|||
myUpdateInterval = updateIntervalMillis;
|
||||
}
|
||||
|
||||
public abstract String doBefore();
|
||||
public abstract void doBefore() throws ZLNetworkException;
|
||||
public abstract void doLoading(NetworkOperationData.OnNewItemListener doWithListener) throws ZLNetworkException;
|
||||
|
||||
public abstract String getResourceKey();
|
||||
|
||||
|
||||
public final void run() {
|
||||
String err = doBefore();
|
||||
if (err != null) {
|
||||
myHandler.sendFinish(err, false);
|
||||
try {
|
||||
doBefore();
|
||||
} catch (ZLNetworkException e) {
|
||||
myHandler.sendFinish(e.getMessage(), false);
|
||||
return;
|
||||
}
|
||||
err = doLoading(new NetworkOperationData.OnNewItemListener() {
|
||||
private long myUpdateTime;
|
||||
private int myItemsNumber;
|
||||
public void onNewItem(INetworkLink link, NetworkLibraryItem item) {
|
||||
myHandler.addItem(link, item);
|
||||
++myItemsNumber;
|
||||
final long now = System.currentTimeMillis();
|
||||
if (now > myUpdateTime) {
|
||||
myHandler.sendUpdateItems();
|
||||
myUpdateTime = now + myUpdateInterval;
|
||||
String error = null;
|
||||
try {
|
||||
doLoading(new NetworkOperationData.OnNewItemListener() {
|
||||
private long myUpdateTime;
|
||||
private int myItemsNumber;
|
||||
public void onNewItem(INetworkLink link, NetworkLibraryItem item) {
|
||||
myHandler.addItem(link, item);
|
||||
++myItemsNumber;
|
||||
final long now = System.currentTimeMillis();
|
||||
if (now > myUpdateTime) {
|
||||
myHandler.sendUpdateItems();
|
||||
myUpdateTime = now + myUpdateInterval;
|
||||
}
|
||||
}
|
||||
}
|
||||
public boolean confirmInterrupt() {
|
||||
return confirmInterruptLoading();
|
||||
}
|
||||
public void commitItems(INetworkLink link) {
|
||||
myHandler.commitItems(link);
|
||||
}
|
||||
});
|
||||
public boolean confirmInterrupt() {
|
||||
return confirmInterruptLoading();
|
||||
}
|
||||
public void commitItems(INetworkLink link) {
|
||||
myHandler.commitItems(link);
|
||||
}
|
||||
});
|
||||
} catch (ZLNetworkException e) {
|
||||
error = e.getMessage();
|
||||
}
|
||||
|
||||
myHandler.sendUpdateItems();
|
||||
myHandler.ensureItemsProcessed();
|
||||
myHandler.sendFinish(err, isLoadingInterrupted());
|
||||
myHandler.sendFinish(error, isLoadingInterrupted());
|
||||
myHandler.ensureFinishProcessed();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue