3 import jalview.jbgui.GEBIFetchPanel;
4 import jalview.ws.dbsources.PDBRestClient;
5 import jalview.ws.uimodel.PDBSearchOptionListModel;
6 import jalview.ws.uimodel.PDBSearchResultPojo;
7 import jalview.ws.uimodel.PDBSummaryListModel;
9 import javax.swing.DefaultListModel;
10 import javax.swing.SwingUtilities;
12 @SuppressWarnings("serial")
13 public class EBIFetchPanel extends GEBIFetchPanel
15 private SequenceFetcher seqFetcher;
17 public EBIFetchPanel()
21 public EBIFetchPanel(SequenceFetcher seqFetcher)
24 this.seqFetcher = seqFetcher;
27 public static void main(String[] args)
29 SwingUtilities.invokeLater(new Runnable()
39 public void searchStringAction()
42 jListSearchResult.setModel(new DefaultListModel<PDBSummaryListModel>());
43 mainFrame.setTitle("PDB Sequence Fetcher");
44 if (search.getText().trim().length() > 0)
46 long startTime = System.currentTimeMillis();
48 PDBSearchResultPojo resultList = new PDBRestClient().searchResult(
49 ((PDBSearchOptionListModel) searchFeild.getSelectedItem()).getCode(),
51 if (resultList.getSearchSummary() != null)
53 jListSearchResult.setModel(resultList.getSearchSummary());
55 long endTime = System.currentTimeMillis();
56 mainFrame.setTitle("PDB Sequence Fetcher - "
57 + resultList.getItemFound() + " results ("
58 + (endTime - startTime) + " milli secs)");
64 public void okActionPerformed()
66 processPDBResponseData();
71 public void backActionPerformed()
73 System.out.println("back! pressed!");
77 public void cancelActionPerformed()
82 private void processPDBResponseData()
85 StringBuilder selectedIds = new StringBuilder();
86 for (PDBSummaryListModel dataSelected : jListSearchResult
87 .getSelectedValuesList())
89 selectedIds.append(";").append(dataSelected.getPdbId());
91 String ids = selectedIds.deleteCharAt(0).toString();
92 seqFetcher.textArea.setText(ids);
93 Thread worker = new Thread(seqFetcher);
95 // Thread worker = new Thread(this);
102 // for (PDBSummaryListModel sum : jListSearchResult
103 // .getSelectedValuesList())
105 // System.out.println("you selected ------------> " + sum.getPdbId());
107 // seqFetcher.guiWindow.setProgressBar(MessageManager
108 // .getString("status.processing"), Thread.currentThread()
112 // Thread.sleep(1000 * 2);
113 // } catch (InterruptedException e)
115 // e.printStackTrace();
117 // seqFetcher.guiWindow.setProgressBar(null, Thread.currentThread()