X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FJalviewLite.java;h=0f3feb261947df17fbc1011f194f0da2e04b04fc;hb=230fac58c5afe1843bf7177834fe1bd1d7e6f9d5;hp=ae84ba5332559440e5095c62dc57260e97207ca4;hpb=26ba864a6c290121fe6cf616794d2d0bea65fb7d;p=jalview.git diff --git a/src/jalview/bin/JalviewLite.java b/src/jalview/bin/JalviewLite.java index ae84ba5..0f3feb2 100644 --- a/src/jalview/bin/JalviewLite.java +++ b/src/jalview/bin/JalviewLite.java @@ -37,6 +37,8 @@ import jalview.datamodel.SequenceGroup; import jalview.datamodel.SequenceI; import jalview.io.AnnotationFile; import jalview.io.AppletFormatAdapter; +import jalview.io.DataSourceType; +import jalview.io.FileFormatI; import jalview.io.FileParse; import jalview.io.IdentifyFile; import jalview.io.JPredFile; @@ -63,6 +65,7 @@ import java.awt.event.ActionEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.BufferedReader; +import java.io.IOException; import java.io.InputStreamReader; import java.net.URL; import java.util.ArrayList; @@ -100,6 +103,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getSelectedSequences() */ + @Override public String getSelectedSequences() { return getSelectedSequencesFrom(getDefaultTargetFrame()); @@ -110,6 +114,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getSelectedSequences(java.lang.String) */ + @Override public String getSelectedSequences(String sep) { return getSelectedSequencesFrom(getDefaultTargetFrame(), sep); @@ -122,6 +127,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getSelectedSequencesFrom(jalview.appletgui * .AlignFrame) */ + @Override public String getSelectedSequencesFrom(AlignFrame alf) { return getSelectedSequencesFrom(alf, separator); // ""+0x00AC); @@ -134,6 +140,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getSelectedSequencesFrom(jalview.appletgui * .AlignFrame, java.lang.String) */ + @Override public String getSelectedSequencesFrom(AlignFrame alf, String sep) { StringBuffer result = new StringBuffer(""); @@ -162,6 +169,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#highlight(java.lang.String, * java.lang.String, java.lang.String) */ + @Override public void highlight(String sequenceId, String position, String alignedPosition) { @@ -175,6 +183,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#highlightIn(jalview.appletgui.AlignFrame, * java.lang.String, java.lang.String, java.lang.String) */ + @Override public void highlightIn(final AlignFrame alf, final String sequenceId, final String position, final String alignedPosition) { @@ -231,6 +240,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#select(java.lang.String, * java.lang.String) */ + @Override public void select(String sequenceIds, String columns) { selectIn(getDefaultTargetFrame(), sequenceIds, columns, separator); @@ -242,6 +252,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#select(java.lang.String, * java.lang.String, java.lang.String) */ + @Override public void select(String sequenceIds, String columns, String sep) { selectIn(getDefaultTargetFrame(), sequenceIds, columns, sep); @@ -253,6 +264,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#selectIn(jalview.appletgui.AlignFrame, * java.lang.String, java.lang.String) */ + @Override public void selectIn(AlignFrame alf, String sequenceIds, String columns) { selectIn(alf, sequenceIds, columns, separator); @@ -264,6 +276,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#selectIn(jalview.appletgui.AlignFrame, * java.lang.String, java.lang.String, java.lang.String) */ + @Override public void selectIn(final AlignFrame alf, String sequenceIds, String columns, String sep) { @@ -459,6 +472,9 @@ public class JalviewLite extends Applet implements if (csel != null) { List cs = csel.getSelected(); + // note - the following actually clears cs as well, since + // csel.getSelected returns a reference. Need to check if we need to + // have a concurrentModification exception thrown here csel.clear(); for (Integer selectedCol : cs) { @@ -486,6 +502,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getSelectedSequencesAsAlignment(java.lang. * String, java.lang.String) */ + @Override public String getSelectedSequencesAsAlignment(String format, String suffix) { return getSelectedSequencesAsAlignmentFrom(getDefaultTargetFrame(), @@ -499,8 +516,9 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getSelectedSequencesAsAlignmentFrom(jalview * .appletgui.AlignFrame, java.lang.String, java.lang.String) */ + @Override public String getSelectedSequencesAsAlignmentFrom(AlignFrame alf, - String format, String suffix) + FileFormatI format, String suffix) { try { @@ -528,6 +546,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getAlignmentOrder() */ + @Override public String getAlignmentOrder() { return getAlignmentOrderFrom(getDefaultTargetFrame()); @@ -540,6 +559,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getAlignmentOrderFrom(jalview.appletgui.AlignFrame * ) */ + @Override public String getAlignmentOrderFrom(AlignFrame alf) { return getAlignmentOrderFrom(alf, separator); @@ -552,6 +572,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getAlignmentOrderFrom(jalview.appletgui.AlignFrame * , java.lang.String) */ + @Override public String getAlignmentOrderFrom(AlignFrame alf, String sep) { AlignmentI alorder = alf.getAlignViewport().getAlignment(); @@ -569,6 +590,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#orderBy(java.lang.String, * java.lang.String) */ + @Override public String orderBy(String order, String undoName) { return orderBy(order, undoName, separator); @@ -580,6 +602,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#orderBy(java.lang.String, * java.lang.String, java.lang.String) */ + @Override public String orderBy(String order, String undoName, String sep) { return orderAlignmentBy(getDefaultTargetFrame(), order, undoName, sep); @@ -592,6 +615,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#orderAlignmentBy(jalview.appletgui.AlignFrame, * java.lang.String, java.lang.String, java.lang.String) */ + @Override public String orderAlignmentBy(AlignFrame alf, String order, String undoName, String sep) { @@ -648,6 +672,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getAlignment(java.lang.String) */ + @Override public String getAlignment(String format) { return getAlignmentFrom(getDefaultTargetFrame(), format, TRUE); @@ -660,6 +685,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getAlignmentFrom(jalview.appletgui.AlignFrame, * java.lang.String) */ + @Override public String getAlignmentFrom(AlignFrame alf, String format) { return getAlignmentFrom(alf, format, TRUE); @@ -671,6 +697,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#getAlignment(java.lang.String, * java.lang.String) */ + @Override public String getAlignment(String format, String suffix) { return getAlignmentFrom(getDefaultTargetFrame(), format, suffix); @@ -683,6 +710,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getAlignmentFrom(jalview.appletgui.AlignFrame, * java.lang.String, java.lang.String) */ + @Override public String getAlignmentFrom(AlignFrame alf, String format, String suffix) { @@ -705,6 +733,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#loadAnnotation(java.lang.String) */ + @Override public void loadAnnotation(String annotation) { loadAnnotationFrom(getDefaultTargetFrame(), annotation); @@ -717,17 +746,18 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#loadAnnotationFrom(jalview.appletgui.AlignFrame * , java.lang.String) */ + @Override public void loadAnnotationFrom(AlignFrame alf, String annotation) { if (new AnnotationFile().annotateAlignmentView(alf.getAlignViewport(), - annotation, AppletFormatAdapter.PASTE)) + annotation, DataSourceType.PASTE)) { alf.alignPanel.fontChanged(); alf.alignPanel.setScrollValues(0, 0); } else { - alf.parseFeaturesFile(annotation, AppletFormatAdapter.PASTE); + alf.parseFeaturesFile(annotation, DataSourceType.PASTE); } } @@ -736,6 +766,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#loadAnnotation(java.lang.String) */ + @Override public void loadFeatures(String features, boolean autoenabledisplay) { loadFeaturesFrom(getDefaultTargetFrame(), features, autoenabledisplay); @@ -748,10 +779,11 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#loadAnnotationFrom(jalview.appletgui.AlignFrame * , java.lang.String) */ + @Override public boolean loadFeaturesFrom(AlignFrame alf, String features, boolean autoenabledisplay) { - return alf.parseFeaturesFile(features, AppletFormatAdapter.PASTE, + return alf.parseFeaturesFile(features, DataSourceType.PASTE, autoenabledisplay); } @@ -760,6 +792,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getFeatures(java.lang.String) */ + @Override public String getFeatures(String format) { return getFeaturesFrom(getDefaultTargetFrame(), format); @@ -772,6 +805,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getFeaturesFrom(jalview.appletgui.AlignFrame, * java.lang.String) */ + @Override public String getFeaturesFrom(AlignFrame alf, String format) { return alf.outputFeatures(false, format); @@ -782,6 +816,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getAnnotation() */ + @Override public String getAnnotation() { return getAnnotationFrom(getDefaultTargetFrame()); @@ -794,6 +829,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getAnnotationFrom(jalview.appletgui.AlignFrame * ) */ + @Override public String getAnnotationFrom(AlignFrame alf) { return alf.outputAnnotations(false); @@ -804,6 +840,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#newView() */ + @Override public AlignFrame newView() { return newViewFrom(getDefaultTargetFrame()); @@ -814,6 +851,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#newView(java.lang.String) */ + @Override public AlignFrame newView(String name) { return newViewFrom(getDefaultTargetFrame(), name); @@ -824,6 +862,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#newViewFrom(jalview.appletgui.AlignFrame) */ + @Override public AlignFrame newViewFrom(AlignFrame alf) { return alf.newView(null); @@ -835,6 +874,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#newViewFrom(jalview.appletgui.AlignFrame, * java.lang.String) */ + @Override public AlignFrame newViewFrom(AlignFrame alf, String name) { return alf.newView(name); @@ -846,21 +886,22 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#loadAlignment(java.lang.String, * java.lang.String) */ + @Override public AlignFrame loadAlignment(String text, String title) { AlignmentI al = null; - String format = new IdentifyFile().identify(text, - AppletFormatAdapter.PASTE); try { - al = new AppletFormatAdapter().readFile(text, - AppletFormatAdapter.PASTE, format); + FileFormatI format = new IdentifyFile().identify(text, + DataSourceType.PASTE); + al = new AppletFormatAdapter().readFile(text, DataSourceType.PASTE, + format); if (al.getHeight() > 0) { return new AlignFrame(al, this, title, false); } - } catch (java.io.IOException ex) + } catch (IOException ex) { ex.printStackTrace(); } @@ -872,6 +913,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#setMouseoverListener(java.lang.String) */ + @Override public void setMouseoverListener(String listener) { setMouseoverListener(currentAlignFrame, listener); @@ -886,6 +928,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#setMouseoverListener(jalview.appletgui.AlignFrame * , java.lang.String) */ + @Override public void setMouseoverListener(AlignFrame af, String listener) { if (listener != null) @@ -918,6 +961,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#setSelectionListener(java.lang.String) */ + @Override public void setSelectionListener(String listener) { setSelectionListener(null, listener); @@ -930,6 +974,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#setSelectionListener(jalview.appletgui.AlignFrame * , java.lang.String) */ + @Override public void setSelectionListener(AlignFrame af, String listener) { if (listener != null) @@ -968,6 +1013,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#setStructureListener(java.lang.String, * java.lang.String) */ + @Override public void setStructureListener(String listener, String modelSet) { if (listener != null) @@ -1001,6 +1047,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#removeJavascriptListener(jalview.appletgui * .AlignFrame, java.lang.String) */ + @Override public void removeJavascriptListener(AlignFrame af, String listener) { if (listener != null) @@ -1050,12 +1097,14 @@ public class JalviewLite extends Applet implements } } + @Override public void stop() { System.err.println("Applet " + getName() + " stop()."); tidyUp(); } + @Override public void destroy() { System.err.println("Applet " + getName() + " destroy()."); @@ -1112,6 +1161,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#mouseOverStructure(java.lang.String, * java.lang.String, java.lang.String) */ + @Override public void mouseOverStructure(final String pdbResNum, final String chain, final String pdbfile) { @@ -1149,6 +1199,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#scrollViewToIn(jalview.appletgui.AlignFrame, * java.lang.String, java.lang.String) */ + @Override public void scrollViewToIn(final AlignFrame alf, final String topRow, final String leftHandColumn) { @@ -1488,6 +1539,7 @@ public class JalviewLite extends Applet implements add(launcher); launcher.addActionListener(new java.awt.event.ActionListener() { + @Override public void actionPerformed(ActionEvent e) { LoadingThread loader = new LoadingThread(file, file2, @@ -1610,6 +1662,7 @@ public class JalviewLite extends Applet implements frame.setTitle(title); frame.addWindowListener(new WindowAdapter() { + @Override public void windowClosing(WindowEvent e) { if (frame instanceof AlignFrame) @@ -1634,6 +1687,7 @@ public class JalviewLite extends Applet implements frame.dispose(); } + @Override public void windowActivated(WindowEvent e) { if (frame instanceof AlignFrame) @@ -1671,6 +1725,7 @@ public class JalviewLite extends Applet implements * @param g * graphics context */ + @Override public void paint(Graphics g) { if (!fileFound) @@ -1722,6 +1777,7 @@ public class JalviewLite extends Applet implements { private boolean running = false; + @Override public void run() { if (running || checkedForJmol) @@ -1771,7 +1827,7 @@ public class JalviewLite extends Applet implements /** * State variable: protocol for access to file source */ - String protocol; + DataSourceType protocol; String _file; // alignment file or URL spec @@ -1801,7 +1857,7 @@ public class JalviewLite extends Applet implements */ if (path.startsWith("PASTE")) { - protocol = AppletFormatAdapter.PASTE; + protocol = DataSourceType.PASTE; return path.substring(5); } @@ -1810,7 +1866,7 @@ public class JalviewLite extends Applet implements */ if (path.indexOf("://") != -1) { - protocol = AppletFormatAdapter.URL; + protocol = DataSourceType.URL; return path; } @@ -1826,7 +1882,7 @@ public class JalviewLite extends Applet implements System.err.println("Prepended document base '" + documentBase + "' to make: '" + withDocBase + "'"); } - protocol = AppletFormatAdapter.URL; + protocol = DataSourceType.URL; return withDocBase; } @@ -1839,7 +1895,7 @@ public class JalviewLite extends Applet implements if (!withCodeBase.equals(withDocBase) && HttpUtils.isValidUrl(withCodeBase)) { - protocol = AppletFormatAdapter.URL; + protocol = DataSourceType.URL; if (debug) { System.err.println("Prepended codebase '" + codeBase @@ -1854,7 +1910,7 @@ public class JalviewLite extends Applet implements */ if (inArchive(path)) { - protocol = AppletFormatAdapter.CLASSLOADER; + protocol = DataSourceType.CLASSLOADER; } return path; } @@ -1866,6 +1922,7 @@ public class JalviewLite extends Applet implements applet = _applet; } + @Override public void run() { LoadJmolThread jmolchecker = new LoadJmolThread(); @@ -1967,11 +2024,12 @@ public class JalviewLite extends Applet implements return null; } String resolvedFile = resolveFileProtocol(fileParam); - String format = new IdentifyFile().identify(resolvedFile, protocol); - dbgMsg("File identified as '" + format + "'"); AlignmentI al = null; try { + FileFormatI format = new IdentifyFile().identify(resolvedFile, + protocol); + dbgMsg("File identified as '" + format + "'"); al = new AppletFormatAdapter().readFile(resolvedFile, protocol, format); if ((al != null) && (al.getHeight() > 0)) @@ -1988,7 +2046,7 @@ public class JalviewLite extends Applet implements // update the focus. currentAlignFrame = newAlignFrame; - if (protocol == AppletFormatAdapter.PASTE) + if (protocol == DataSourceType.PASTE) { newAlignFrame.setTitle(MessageManager.formatMessage( "label.sequences_from", new Object[] { applet @@ -2159,8 +2217,7 @@ public class JalviewLite extends Applet implements } else { - pdbs.addElement(new Object[] { pdb, seqs, chains, - new String(protocol) }); + pdbs.addElement(new Object[] { pdb, seqs, chains, protocol }); } } } @@ -2566,6 +2623,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getFeatureGroups() */ + @Override public String getFeatureGroups() { String lst = arrayToSeparatorList(getDefaultTargetFrame() @@ -2580,6 +2638,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getFeatureGroupsOn(jalview.appletgui.AlignFrame * ) */ + @Override public String getFeatureGroupsOn(AlignFrame alf) { String lst = arrayToSeparatorList(alf.getFeatureGroups()); @@ -2591,6 +2650,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getFeatureGroupsOfState(boolean) */ + @Override public String getFeatureGroupsOfState(boolean visible) { return arrayToSeparatorList(getDefaultTargetFrame() @@ -2604,6 +2664,7 @@ public class JalviewLite extends Applet implements * jalview.bin.JalviewLiteJsApi#getFeatureGroupsOfStateOn(jalview.appletgui * .AlignFrame, boolean) */ + @Override public String getFeatureGroupsOfStateOn(AlignFrame alf, boolean visible) { return arrayToSeparatorList(alf.getFeatureGroupsOfState(visible)); @@ -2615,6 +2676,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#setFeatureGroupStateOn(jalview.appletgui. * AlignFrame, java.lang.String, boolean) */ + @Override public void setFeatureGroupStateOn(final AlignFrame alf, final String groups, boolean state) { @@ -2636,6 +2698,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#setFeatureGroupState(java.lang.String, * boolean) */ + @Override public void setFeatureGroupState(String groups, boolean state) { setFeatureGroupStateOn(getDefaultTargetFrame(), groups, state); @@ -2646,6 +2709,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#getSeparator() */ + @Override public String getSeparator() { return separator; @@ -2656,6 +2720,7 @@ public class JalviewLite extends Applet implements * * @see jalview.bin.JalviewLiteJsApi#setSeparator(java.lang.String) */ + @Override public void setSeparator(String separator) { if (separator == null || separator.length() < 1) @@ -2700,6 +2765,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#addPdbFile(jalview.appletgui.AlignFrame, * java.lang.String, java.lang.String, java.lang.String) */ + @Override public boolean addPdbFile(AlignFrame alFrame, String sequenceId, String pdbEntryString, String pdbFile) { @@ -2716,6 +2782,7 @@ public class JalviewLite extends Applet implements return alignPdbStructures; } + @Override public void start() { // callInitCallback(); @@ -2749,6 +2816,7 @@ public class JalviewLite extends Applet implements * @see jalview.bin.JalviewLiteJsApi#getJsMessage(java.lang.String, * java.lang.String) */ + @Override public String getJsMessage(String messageclass, String viewId) { Hashtable msgset = jsmessages.get(messageclass);