try {
new Helper().parse(br);
final Object result = fault ? new JSExn(objects.elementAt(0)) : objects.size() == 0 ? null : objects.elementAt(0);
- Scheduler.add(new Scheduler.Task() { public void perform() {
- try {
- callback.unpause(result);
- } catch (Exception e) {
- // FIXME
- Log.log(this, e);
- }
- }});
+ Scheduler.add(new Scheduler.Task() { public void perform() throws Exception { callback.unpause(result); }});
} finally {
tracker.clear();
objects.setSize(0);
}
- } catch (Exception e) {
- // FIXME
- Log.log(this, e);
+ } catch (final JSExn e) {
+ Scheduler.add(new Scheduler.Task() { public void perform() throws Exception { callback.unpause(e); }});
+ } catch (final IOException e) {
+ Scheduler.add(new Scheduler.Task() { public void perform() throws Exception { callback.unpause(new JSExn(e)); }});
+ } catch (final XML.XMLException e) {
+ Scheduler.add(new Scheduler.Task() { public void perform() throws Exception { callback.unpause(new JSExn(e)); }});
}
}
}