} catch (EXistException e) { e.printStackTrace(); } finally { pool.release(broker); }
	protected void processQuery(DocumentSet in_docs) {		terms = new String[containsExpr.size()];		boolean skip_preselect = false;		int j = 0;		for (Iterator i = containsExpr.iterator(); i.hasNext(); j++) {			terms[j] = (String) i.next();		}		DBBroker broker = null;		try {			broker = pool.get();			if (terms == null)				throw new RuntimeException("no search terms");			hits = new NodeSet[terms.length][];			for (int k = 0; k < terms.length; k++) {				String t[] = { terms[k] };				hits[k] = broker.getNodesContaining(in_docs, t);			}		} catch (EXistException e) {			e.printStackTrace();		} finally {			pool.release(broker);		}	}