X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FDasSourceBrowser.java;h=8570ac38dc44f1f015ab660042380a98c16561f7;hb=bd894ca9f2aae448653d7431ab8a170e1105e85c;hp=7237329ea37a64e8d1a6dabfafe7d9a28b640b01;hpb=0abc5cc2ec2fb7d2dbb01adabd031299115ff8b8;p=jalview.git
diff --git a/src/jalview/gui/DasSourceBrowser.java b/src/jalview/gui/DasSourceBrowser.java
old mode 100755
new mode 100644
index 7237329..8570ac3
--- a/src/jalview/gui/DasSourceBrowser.java
+++ b/src/jalview/gui/DasSourceBrowser.java
@@ -1,911 +1,864 @@
-/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4)
- * Copyright (C) 2008 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
- */
-package jalview.gui;
-
-import java.util.*;
-
-import java.awt.*;
-import java.awt.event.*;
-import javax.swing.*;
-import javax.swing.event.*;
-import javax.swing.table.*;
-
-import org.biojava.dasobert.dasregistry.*;
-import jalview.jbgui.*;
-import jalview.util.*;
-
-public class DasSourceBrowser extends GDasSourceBrowser implements
- Runnable, ListSelectionListener
-{
- static DasSource[] dasSources = null;
-
- Hashtable localSources = null;
-
- Vector selectedSources;
-
- public static String DEFAULT_REGISTRY = "http://www.dasregistry.org/das1/sources/";
-
- /**
- * true if thread is running and we are talking to DAS registry service
- */
- public boolean loadingDasSources = false;
-
- protected static String getDasRegistryURL()
- {
- String registry = jalview.bin.Cache.getDefault("DAS_REGISTRY_URL",
- DEFAULT_REGISTRY);
-
- if (registry.indexOf("/registry/das1/sources/") > -1)
- {
- jalview.bin.Cache.setProperty(jalview.bin.Cache.DAS_REGISTRY_URL, DEFAULT_REGISTRY);
- registry = DEFAULT_REGISTRY;
- }
- return registry;
- }
-
- public DasSourceBrowser()
- {
- String registry = getDasRegistryURL();
-
- registryURL.setText(registry);
-
- setSelectedFromProperties();
-
- displayFullDetails(null);
- table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
-
- filter1.addListSelectionListener(this);
- filter2.addListSelectionListener(this);
- filter3.addListSelectionListener(this);
-
- // Ask to be notified of selection changes.
- ListSelectionModel rowSM = table.getSelectionModel();
- rowSM.addListSelectionListener(new ListSelectionListener()
- {
- public void valueChanged(ListSelectionEvent e)
- {
- ListSelectionModel lsm = (ListSelectionModel) e.getSource();
- if (!lsm.isSelectionEmpty())
- {
- int selectedRow = lsm.getMinSelectionIndex();
- displayFullDetails(table.getValueAt(selectedRow, 0).toString());
- }
- }
- });
-
- table.addMouseListener(new MouseAdapter()
- {
- public void mouseClicked(MouseEvent evt)
- {
- if (evt.getClickCount() == 2
- || SwingUtilities.isRightMouseButton(evt))
- {
- editRemoveLocalSource(evt);
- }
- }
- });
-
- if (dasSources != null)
- {
- init();
- }
- }
-
- public void paintComponent(java.awt.Graphics g)
- {
- if (dasSources == null && !loadingDasSources)
- {
- Thread worker = new Thread(this);
- worker.start();
- }
- }
-
- void init()
- {
- int dSize = dasSources.length;
- Object[][] data = new Object[dSize][2];
- for (int i = 0; i < dSize; i++)
- {
- data[i][0] = dasSources[i].getNickname();
- data[i][1] = new Boolean(selectedSources.contains(dasSources[i]
- .getNickname()));
- }
-
- refreshTableData(data);
- setCapabilities(dasSources);
-
- javax.swing.SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- TableSorter sorter = (TableSorter) table.getModel();
- sorter.setSortingStatus(1, TableSorter.DESCENDING);
- sorter.setSortingStatus(1, TableSorter.NOT_SORTED);
- }
- });
-
- progressBar.setIndeterminate(false);
- progressBar.setVisible(false);
- addLocal.setVisible(true);
- refresh.setVisible(true);
- }
-
- public void refreshTableData(Object[][] data)
- {
- TableSorter sorter = new TableSorter(new DASTableModel(data));
- sorter.setTableHeader(table.getTableHeader());
- table.setModel(sorter);
- }
-
- void displayFullDetails(String nickName)
- {
-
- StringBuffer text = new StringBuffer(
- "");
-
- if (nickName == null)
- {
- fullDetails.setText(text + "Select a DAS service from the table"
- + " to read a full description here.");
- return;
- }
-
- int dSize = dasSources.length;
- for (int i = 0; i < dSize; i++)
- {
- if (!dasSources[i].getNickname().equals(nickName))
- {
- continue;
- }
-
- DasSource ds = dasSources[i];
-
- text.append("Id: "
- + dasSources[i].getId() + "
");
- text.append("Nickname: "
- + dasSources[i].getNickname() + "
");
- text.append("URL: "
- + dasSources[i].getUrl() + "
");
-
- text
- .append("Admin Email: "
- + dasSources[i].getAdminemail() + "" + "
");
-
- text.append("Registered at: "
- + dasSources[i].getRegisterDate() + "
");
-
- text.append("Last successful test: "
- + dasSources[i].getLeaseDate() + "
");
-
- text.append("Labels: ");
- for (int s = 0; s < dasSources[i].getLabels().length; s++)
- {
- text.append(dasSources[i].getLabels()[s]);
- if (s < dasSources[i].getLabels().length - 1)
- {
- text.append(",");
- }
- text.append(" ");
- }
- text.append("
");
-
- text.append("Capabilities: ");
- String[] scap = dasSources[i].getCapabilities();
- for (int j = 0; j < scap.length; j++)
- {
- text.append(scap[j]);
- if (j < scap.length - 1)
- {
- text.append(", ");
- }
- }
- text.append("
");
-
- text.append("Coordinates: ");
- DasCoordinateSystem[] dcs = ds.getCoordinateSystem();
- for (int j = 0; j < dcs.length; j++)
- {
- text.append("(" + dcs[j].getUniqueId() + ") "
- + dcs[j].getCategory() + ", " + dcs[j].getName());
- if (dcs[j].getNCBITaxId() != 0)
- {
- text.append(", " + dcs[j].getNCBITaxId());
- }
- if (dcs[j].getOrganismName().length() > 0)
- {
- text.append(", " + dcs[j].getOrganismName());
- }
-
- text.append("
");
- }
-
- text.append("Description: "
- + dasSources[i].getDescription() + "
");
-
- if (dasSources[i].getHelperurl() != null
- && dasSources[i].getHelperurl().length() > 0)
- {
- text.append("Go to site");
- }
-
- text.append("