/** * DOCUMENT ME! * * @param e DOCUMENT ME! */ private void fortfuehrungsTableListSelectionChanged(final ListSelectionEvent e) { final int selectedIndex = jXTable1.getSelectedRow(); final CidsBean selectedFortfuehrungBean; if (selectedIndex >= 0) { final int rowIndex = jXTable1.convertRowIndexToModel(selectedIndex); selectedFortfuehrungBean = ((FortfuehrungenTableModel) jXTable1.getModel()).getCidsBeanByIndex(rowIndex); } else { selectedFortfuehrungBean = null; } if (selectedFortfuehrungBean != null) { new SwingWorker<Set<Integer>, Void>() { @Override protected Set<Integer> doInBackground() throws Exception { lstKassenzeichen.setEnabled(false); cbxAbgearbeitet.setEnabled(false); jProgressBar1.setVisible(true); final List<CidsBean> geomBeans = (List<CidsBean>) selectedFortfuehrungBean.getBeanCollectionProperty( FortfuehrungPropertyConstants.PROP__GEOMETRIEN); final KassenzeichenGeomSearch geomSearch = new KassenzeichenGeomSearch(); final Set<Integer> kassenzeichennummern = new HashSet<Integer>(); for (final CidsBean geomBean : geomBeans) { if (geomBean != null) { try { final Geometry geom = (Geometry) geomBean.getProperty(GeomPropertyConstants.PROP__GEO_FIELD); geomSearch.setGeometry(geom.buffer(FLURSTUECKBUFFER_FOR_KASSENZEICHEN_GEOMSEARCH)); kassenzeichennummern.addAll( (Collection<Integer>) SessionManager.getProxy() .customServerSearch(SessionManager.getSession().getUser(), geomSearch)); } catch (final Exception ex) { LOG.error("fehler beim suchen von kassenzeichen über eine geometrie", ex); } } } return kassenzeichennummern; } @Override protected void done() { try { final Set<Integer> kassenzeichennummern = get(); setDetailEnabled(true); setKassenzeichenNummern(kassenzeichennummern); cbxAbgearbeitet.setSelected( (Boolean) selectedFortfuehrungBean.getProperty( FortfuehrungPropertyConstants.PROP__IST_ABGEARBEITET)); final CidsBean urlBean = (CidsBean) selectedFortfuehrungBean.getProperty( FortfuehrungPropertyConstants.PROP__DOKUMENTURL); final String protPrefix = (String) urlBean.getProperty("url_base_id.prot_prefix"); final String server = (String) urlBean.getProperty("url_base_id.server"); final String path = (String) urlBean.getProperty("url_base_id.path"); final String objectName = (String) urlBean.getProperty("object_name"); final String urlString = protPrefix + server + path + objectName; setDokumentLink(urlString); } catch (final Exception ex) { setKassenzeichenNummern(null); cbxAbgearbeitet.setSelected(false); LOG.fatal("", ex); } lstKassenzeichen.setEnabled(true); cbxAbgearbeitet.setEnabled(true); jProgressBar1.setVisible(false); } }.execute(); } else { setDetailEnabled(false); setKassenzeichenNummern(null); cbxAbgearbeitet.setSelected(false); setDokumentLink(null); } }