source: SRUAggregator/trunk/src/main/java/eu/clarin/sru/fcs/aggregator/app/DesktopDestroyedListener.java @ 2527

Last change on this file since 2527 was 2527, checked in by yana, 11 years ago

Logging organized, progress info about waiting for search results added, SRUThreadedClient is one per application now.

File size: 1.0 KB
Line 
1package eu.clarin.sru.fcs.aggregator.app;
2
3
4import eu.clarin.sru.fcs.aggregator.sresult.SearchResultsController;
5import java.util.Set;
6import java.util.logging.Logger;
7import org.zkoss.zk.ui.Desktop;
8import org.zkoss.zk.ui.util.DesktopCleanup;
9
10/**
11 *
12 * @author Yana Panchenko
13 */
14public class DesktopDestroyedListener implements DesktopCleanup {
15   
16    private static final Logger logger = Logger.getLogger(DesktopCleanup.class.getName());
17
18    @Override
19    public void cleanup(Desktop desktop) {
20        logger.fine("Cleaning up desktop...");
21        Object recordsController = desktop.getAttribute(SearchResultsController.class.getSimpleName());
22        Set<SearchResultsController> activeControllers = (Set<SearchResultsController>) desktop.getWebApp().getAttribute(WebAppListener.ACTIVE_SEARCH_CONTROLLERS);
23        if (recordsController != null) {
24            SearchResultsController srController = (SearchResultsController) recordsController;
25            srController.shutdown();
26            activeControllers.remove(srController);
27        }
28    }
29}
Note: See TracBrowser for help on using the repository browser.