X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2FDasSequenceFeatureFetcher.java;h=7e069e3d7b4feeef15d19c691b7059f258729537;hb=37de9310bec3501cbc6381e0c3dcb282fcaad812;hp=08070dbeebb0836a121f18feaaaf796cae5aa831;hpb=b2f9a8d7bce642ff4011bc6d49e02bb0569fbb11;p=jalview.git diff --git a/src/jalview/ws/DasSequenceFeatureFetcher.java b/src/jalview/ws/DasSequenceFeatureFetcher.java index 08070db..7e069e3 100644 --- a/src/jalview/ws/DasSequenceFeatureFetcher.java +++ b/src/jalview/ws/DasSequenceFeatureFetcher.java @@ -1,30 +1,35 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * * Jalview 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 3 of the License, or (at your option) any later version. + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. * * Jalview 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 Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.ws; import jalview.bin.Cache; import jalview.datamodel.DBRefEntry; +import jalview.datamodel.DBRefSource; import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceI; import jalview.gui.AlignFrame; import jalview.gui.Desktop; import jalview.gui.FeatureSettings; +import jalview.util.DBRefUtils; +import jalview.util.MessageManager; import jalview.util.UrlLink; import jalview.ws.dbsources.das.api.DasSourceRegistryI; import jalview.ws.dbsources.das.api.jalviewSourceI; @@ -178,13 +183,12 @@ public class DasSequenceFeatureFetcher int refCount = 0; for (int i = 0; i < sequences.length; i++) { - DBRefEntry[] dbref = sequences[i].getDBRef(); + DBRefEntry[] dbref = sequences[i].getDBRefs(); if (dbref != null) { for (int j = 0; j < dbref.length; j++) { - if (dbref[j].getSource().equals( - jalview.datamodel.DBRefSource.UNIPROT)) + if (dbref[j].getSource().equals(DBRefSource.UNIPROT)) { refCount++; break; @@ -202,9 +206,10 @@ public class DasSequenceFeatureFetcher reply = JOptionPane .showInternalConfirmDialog( Desktop.desktop, - "Do you want Jalview to find\n" - + "Uniprot Accession ids for given sequence names?", - "Find Uniprot Accession Ids", + MessageManager + .getString("info.you_want_jalview_to_find_uniprot_accessions"), + MessageManager + .getString("label.find_uniprot_accession_ids"), JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); } @@ -234,6 +239,7 @@ public class DasSequenceFeatureFetcher class FetchSeqFeatures implements Runnable { + @Override public void run() { startFetching(); @@ -243,10 +249,14 @@ public class DasSequenceFeatureFetcher class FetchDBRefs implements Runnable { + @Override public void run() { running = true; - new DBRefFetcher(sequences, af).fetchDBRefs(true); + boolean isNucleotide = af.getViewport().getAlignment().isNucleotide(); + new DBRefFetcher(sequences, af, null, af.featureSettings, + isNucleotide).fetchDBRefs(true); + startFetching(); setGuiFetchComplete(); } @@ -262,7 +272,9 @@ public class DasSequenceFeatureFetcher startTime = System.currentTimeMillis(); if (af != null) { - af.setProgressBar("Fetching DAS Sequence Features", startTime); + af.setProgressBar(MessageManager + .getString("status.fetching_das_sequence_features"), + startTime); } if (sourceRegistry == null) { @@ -274,8 +286,7 @@ public class DasSequenceFeatureFetcher { jalviewSourceI[] sources = sourceRegistry.getSources().toArray( new jalviewSourceI[0]); - String active = jalview.bin.Cache.getDefault("DAS_ACTIVE_SOURCE", - "uniprot"); + String active = Cache.getDefault("DAS_ACTIVE_SOURCE", "uniprot"); StringTokenizer st = new StringTokenizer(active, "\t"); selectedSources = new Vector(); String token; @@ -376,8 +387,7 @@ public class DasSequenceFeatureFetcher source)); for (String id : idl) { - List qid = Arrays.asList(new String[] - { id }); + List qid = Arrays.asList(new String[] { id }); try { DasGFFAdapter dga = featuresc.fetchData(source, qid); @@ -494,13 +504,13 @@ public class DasSequenceFeatureFetcher } catch (Exception ex) { Cache.log - .info("Error in 'experimental' mapping of features. Please try to reproduce and then report info to jalview-discuss@jalview.org."); - Cache.log.info("Mapping feature from " + f.getBegin() + .warn("Error in 'experimental' mapping of features. Please try to reproduce and then report info to jalview-discuss@jalview.org."); + Cache.log.warn("Mapping feature from " + f.getBegin() + " to " + f.getEnd() + " in dbref " + dbref.getAccessionId() + " in " + dbref.getSource()); - Cache.log.info("using das Source " + source); - Cache.log.info("Exception", ex); + Cache.log.warn("using das Source " + source); + Cache.log.warn("Exception", ex); } if (vf != null) @@ -535,7 +545,9 @@ public class DasSequenceFeatureFetcher if (af != null) { - af.setProgressBar("No DAS Sources Active", startTime); + af.setProgressBar( + MessageManager.getString("status.no_das_sources_active"), + startTime); } if (getFeatSettings() != null) { @@ -565,7 +577,9 @@ public class DasSequenceFeatureFetcher { if (af != null) { - af.setProgressBar("DAS Feature Fetching Cancelled", startTime); + af.setProgressBar(MessageManager + .getString("status.das_feature_fetching_cancelled"), + startTime); } cancelled = true; } @@ -580,12 +594,13 @@ public class DasSequenceFeatureFetcher if (!cancelled && af != null) { // only update the progress bar if we've completed the fetch normally - af.setProgressBar("DAS Feature Fetching Complete", startTime); + af.setProgressBar(MessageManager + .getString("status.das_feature_fetching_complete"), startTime); } if (af != null && af.featureSettings != null) { - af.featureSettings.setTableData(); + af.featureSettings.discoverAllFeatureData(); } if (getFeatSettings() != null) @@ -624,12 +639,13 @@ public class DasSequenceFeatureFetcher Object[] nextSequence(jalviewSourceI dasSource, SequenceI seq) { if (cancelled) + { return null; - DBRefEntry[] uprefs = jalview.util.DBRefUtils.selectRefs( - seq.getDBRef(), new String[] - { + } + DBRefEntry[] uprefs = DBRefUtils.selectRefs(seq.getDBRefs(), + new String[] { // jalview.datamodel.DBRefSource.PDB, - jalview.datamodel.DBRefSource.UNIPROT, + DBRefSource.UNIPROT, // jalview.datamodel.DBRefSource.EMBL - not tested on any EMBL coord // sys sources }); @@ -648,8 +664,8 @@ public class DasSequenceFeatureFetcher for (COORDINATES csys : dasSource.getVersion().getCOORDINATES()) { - if (jalview.util.DBRefUtils.isDasCoordinateSystem( - csys.getAuthority(), uprefs[j])) + if (DBRefUtils.isDasCoordinateSystem(csys.getAuthority(), + uprefs[j])) { debug("Launched fetcher for coordinate system " + csys.getAuthority()); @@ -666,7 +682,9 @@ public class DasSequenceFeatureFetcher qstring.add(uprefs[j].getAccessionId()); } else + { System.out.println("IGNORE " + csys.getAuthority()); + } } } } @@ -704,8 +722,7 @@ public class DasSequenceFeatureFetcher } } - return new Object[] - { ids, qstring }; + return new Object[] { ids, qstring }; } /** @@ -837,7 +854,7 @@ public class DasSequenceFeatureFetcher { for (String note : feat.getNOTE()) { - desc += (String) note; + desc += note; } }