};
}  public void debug() { LOG.debug("UpdateListener: Line: " + LocationStep.this.toString()); }
    protected void registerUpdateListener() {        if (listener == null) {            listener = new UpdateListener() {                public void documentUpdated(DocumentImpl document, int event) {                    if (event == UpdateListener.ADD) {                        // clear all                        currentDocs = null;                        currentSet = null;                        cached = null;                    } else {                        if (currentDocs != null                                && currentDocs.contains(document.getDocId())) {                            currentDocs = null;                            currentSet = null;                        }                        if (cached != null                                && cached.getResult().getDocumentSet()                                        .contains(document.getDocId()))                            cached = null;                    }                };            };            NotificationService service = context.getBroker().getBrokerPool()                    .getNotificationService();            service.subscribe(listener);        }    }