Merge branch 'develop' into tasks/JAL-3311_removeVamsasMenu
authorJim Procter <jprocter@issues.jalview.org>
Tue, 2 Jul 2019 19:47:52 +0000 (20:47 +0100)
committerJim Procter <jprocter@issues.jalview.org>
Tue, 2 Jul 2019 19:47:52 +0000 (20:47 +0100)
help/help/help.jhm
help/help/helpTOC.xml
help/help/html/features/clarguments.html
help/help/html/menus/desktopMenu.html
help/help/html/vamsas/index.html [deleted file]
src/jalview/bin/Jalview.java
src/jalview/gui/Desktop.java
src/jalview/gui/VamsasApplication.java
src/jalview/jbgui/GDesktop.java

index 64f3d21..0802bf1 100755 (executable)
    <mapID target="groovy.colours" url="html/features/groovy.html#groovyColours" />
    <mapID target="groovy.featurescounter" url="html/groovy/featuresCounter.html" />
    <mapID target="privacy" url="html/privacy.html" />
-   <mapID target="vamsas" url="html/vamsas/index.html"/>
    <mapID target="aminoAcids" url="html/misc/aminoAcids.html" />
    <mapID target="aaProperties" url="html/misc/aaproperties.html" />
    <mapID target="geneticCode" url="html/misc/geneticCode.html" />
index a0995c2..3827747 100755 (executable)
                <tocitem text="Opening URLs from Jalview" target="urllinks" expand="true">
                    <tocitem text="Configuring URL Links" target="linksprefs" />
                </tocitem>
-               <tocitem text="VAMSAS Data Exchange" target="vamsas">
-                       <!-- what can Jalview share with other apps -->
-                       <!-- what other apps exist -->
-               </tocitem>
                <tocitem text="Window Menus" target="menus" expand="false">
                        <tocitem text="Desktop Window" target="desktopMenu" />
                        <tocitem text="Alignment Window" target="alMenu">
index fa273a5..ebdfcf3 100644 (file)
     </tr>
     <tr>
       <td>
-        <div align="center">-vdoc VAMSAS DOCUMENT FILE/URL</div>
-      <td>
-        <div align="left">
-          Import the given vamsas document into a new session.<br>
-          <em>New in 2.5</em>
-        </div>
-      </td>
-    </tr>
-    <tr>
-      <td>
-        <div align="center">-vsess VAMSAS SESSION URL</div>
-      <td>
-        <div align="left">
-          Join the given vamsas session<br>If a document was also
-          specified, this will be imported first and then committed as
-          new data from Jalview to the specified session (Experimental -
-          not yet enabled!).<em>New in 2.5</em>
-        </div>
-        </div>
-      </td>
-    </tr>
-    <tr>
-      <td>
         <div align="center">-fasta FILE</div>
       </td>
 
index d716e33..49fbec3 100755 (executable)
         <!--         <li><strong>Enable Experimental Features</strong> <em>Enable or disable <a href="../whatsNew.html#experimental">features still under development</a> in Jalview's user interface. This setting is remembered in your preferences.</em> -->
 
       </ul></li>
-    <li><strong>Vamsas</strong> <em>For more details, read the
-        <a href="../vamsas/index.html">Jalview VAMSAS documentation</a>.<br />
-        When no session is active, the menu provides options for
-        initiating a new VAMSAS session:
-    </em>
-      <ul>
-        <li><strong>Connect to<br /></strong> <em>Connect to
-            one of the existing sessions available.</em></li>
-        <li><strong>New VAMSAS session<br /></strong> <em>Initiates
-            a new local VAMSAS session.</em></li>
-        <li><strong>Load VAMSAS session...<br /></strong> <em>Opens
-            a file browser allowing you to choose a VAMSAS document to
-            import into a new local session.</em></li>
-      </ul> <em>When Jalview is joined to a VAMSAS session, the menu
-        contains the following:</em>
-      <ul>
-        <li><strong>Session Update<br /></strong> <em>Sends
-            alignment data in the Jalview desktop to the VAMSAS session.</em></li>
-        <li><strong>Save VAMSAS Session...<br /></strong> <em>Saves
-            the current session to a VAMSAS document archive.</em></li>
-        <li><strong>Stop VAMSAS Session<br /></strong> <em>Disconnects
-            from the current session. You may be asked if you want to
-            save the current session's data if no other VAMSAS clients
-            are connected.</em></li>
-      </ul></li>
     <li><strong>Help </strong>
       <ul>
         <li><strong>About<br>
diff --git a/help/help/html/vamsas/index.html b/help/help/html/vamsas/index.html
deleted file mode 100644 (file)
index 72a336a..0000000
+++ /dev/null
@@ -1,157 +0,0 @@
-<html>
-<!--
- * 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.
- *  
- * 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- -->
-<head>
-<title>VAMSAS Interoperation</title>
-</head>
-<body>
-  <p>
-    <strong>VAMSAS Interoperation</strong>
-  </p>
-  <p>
-    Jalview can interact with other applications using &quot;the <strong>VAMSAS
-      Interoperation framework</strong>&quot; which is an experimental model for
-    interoperation between bioinformatics applications (<strong>V</strong>isualization
-    and <strong>A</strong>nalysis of <strong>Molecular</strong> <strong>S</strong>equences,
-    <strong>Alignements</strong> and <strong>S</strong>tructures).
-    Currently, the only other VAMSAS enabled application is <a
-      href="http://www.topali.org">TOPALi</a> - a user friendly
-    program for phylogenetics and evolutionary analysis.
-  <p>
-    VAMSAS enabled applications access a shared bioinformatics dataset
-    containing sequences, alignments, annotation and trees, which can be
-    represented by an XML document analogous to a <a
-      href="../features/jalarchive.html">Jalview Project
-      Archive</a>.
-  </p>
-  <br>
-  <strong>Connecting to a VAMSAS session</strong>
-  <br> The VAMSAS functionality in Jalview is accessed through the
-  Desktop's
-  <strong>Vamsas</strong> menu. The options available in this menu
-  depend on whether the application is currently interacting with a
-  VAMSAS dataset in a
-  <strong>VAMSAS session</strong>. When the application is not connected
-  to a session is active, the menu options are as follows:
-  <br>
-  <ul>
-    <li><em>Connect to an existing session</em><br> If
-      visible, this submenu contains a list of existing sessions that
-      the VAMSAS framework has discovered on your computer. <br>
-      Choose one to connect to it.</li>
-    <li><em>New VAMSAS Session</em><br> This option will
-      create a new session on your computer.</li>
-    <li><em>Load VAMSAS Session...</em><br> This option will
-      open a file browser window allowing you to select a VAMSAS session
-      archive from which a new session will be created.<br /> <em>New
-        in 2.5:</em>Sessions created from an imported document inherit the
-      file or URL for the document.</li>
-
-  </ul>
-  <br>
-  <strong>VAMSAS and Firewalls</strong>: VAMSAS uses sockets to
-  communicate between different programs. This means that after starting
-  a session, your firewall software may ask you whether to allow the
-  java executable access to the internet (port 53782). If you do not
-  allow this, messages will not be exchanged with other VAMSAS
-  applications.
-  </br>
-  <br> Once you have successfully connected to a VAMSAS session,
-  any data made available by other VAMSAS applications will be
-  automatically imported into Jalview. However, in order to share the
-  data in Jalview with other VAMSAS applications, you must manually
-  select the
-  <strong>Vamsas&#8594;&quot;Session Update&quot;</strong> entry that is
-  visible when a session is active. Selecting this option will update
-  the VAMSAS session document, with the data loaded into Jalview. Any
-  new alignments, trees and annotation will be written to the session,
-  in addition to any edits you have made to data originally stored in
-  the document.
-  <br>
-  <strong>Saving the current session</strong>
-  <br> You can save the current session as a VAMSAS Session archive
-  using the
-  <strong>Vamsas&#8594;&quot;Session Update&quot;</strong>. The file
-  contains a snapshot of the current VAMSAS session, including data from
-  any other applications connected to the session.
-  <strong>Leaving a VAMSAS session</strong>
-  <br> A session can be disconnected from at any time using the
-  <strong>Vamsas&#8594;&quot;Stop Session&quot;</strong> option.
-  Selecting this option will only disconnect Jalview from the session -
-  any other applications will remain connected to the session. If
-  Jalview is the only application connected to the session and you have
-  not yet saved the VAMSAS session then you will be prompted with an
-  optional 'Save VAMSAS session...' dialog box, allowing the session to
-  be saved and returned to at a later date.
-  <br>
-  <strong>VAMSAS Session Persistence</strong>
-  <br> VAMSAS sessions are persistent - this means that they exist
-  independently of any VAMSAS applications that are connected to them.
-  This means that if something goes wrong with a VAMSAS application and
-  it crashes or otherwise fails, the VAMSAS session it is connected to
-  will (hopefully) be unaffected. For instance, if Jalview is killed or
-  crashes whilst it is still connected to a session, that session can be
-  recovered in a new Jalview instance using the
-  <strong>Vamsas&#8594;&quot;Existing session&quot;</strong> sub menu.
-  </p>
-  <p>
-    <strong>A quick Demo</strong> <br> Jalview can talk to itself
-    through VAMSAS. Simply start two copies of the application, create a
-    new vamsas session in one, and connect to the new session in the
-    other. Then load your data into one of the applications, and use the
-    <strong>Vamsas&#8594;&quot;Session Update&quot;</strong> menu entry
-    to try to propagate the data to the other application. <br>
-  <table>
-    <tr>
-      <td>Data Sharing Capability</td>
-      <td>Jalview Version</td>
-    </tr>
-    <tr>
-      <td>Alignments, sequences and annotation, trees, database
-        references, cDNA/protein mappings.</td>
-      <td>2.4</td>
-    </tr>
-    <tr>
-      <td>Mouseover location across linked DNA, protein and
-        structure positions.</td>
-      <td>2.4</td>
-    </tr>
-    <tr>
-      <td>Jalview project settings (Multiple views, groups, tree
-        partitions, colouring, window positions)</td>
-      <td>2.5</td>
-    </tr>
-    <tr>
-      <td>Sequence region and column selections</td>
-      <td>2.5</td>
-    </tr>
-  </table>
-  <br />
-  <p>
-    Version 0.2 of the VAMSAS client library is used in <em>Jalview
-      2.5</em>. For further details about the VAMSAS framework, please check
-    the <a href="http://www.vamsas.ac.uk">VAMSAS website</a>. The VAMSAS
-    framework is implemented as a Java 1.4 Library and depends on a
-    number of other open source projects. Its source is released under
-    the LGPL license. &nbsp;
-  </p>
-</body>
-</html>
index 02e53ec..ca2a584 100755 (executable)
@@ -441,91 +441,6 @@ public class Jalview
       System.out.println("No files to open!");
       System.exit(1);
     }
-    String vamsasImport = aparser.getValue("vdoc");
-    String vamsasSession = aparser.getValue("vsess");
-    if (vamsasImport != null || vamsasSession != null)
-    {
-      if (desktop == null || headless)
-      {
-        System.out.println(
-                "Headless vamsas sessions not yet supported. Sorry.");
-        System.exit(1);
-      }
-      // if we have a file, start a new session and import it.
-      boolean inSession = false;
-      if (vamsasImport != null)
-      {
-        try
-        {
-          DataSourceType viprotocol = AppletFormatAdapter
-                  .checkProtocol(vamsasImport);
-          if (viprotocol == DataSourceType.FILE)
-          {
-            inSession = desktop.vamsasImport(new File(vamsasImport));
-          }
-          else if (viprotocol == DataSourceType.URL)
-          {
-            inSession = desktop.vamsasImport(new URL(vamsasImport));
-          }
-
-        } catch (Exception e)
-        {
-          System.err.println("Exeption when importing " + vamsasImport
-                  + " as a vamsas document.");
-          e.printStackTrace();
-        }
-        if (!inSession)
-        {
-          System.err.println("Failed to import " + vamsasImport
-                  + " as a vamsas document.");
-        }
-        else
-        {
-          System.out.println("Imported Successfully into new session "
-                  + desktop.getVamsasApplication().getCurrentSession());
-        }
-      }
-      if (vamsasSession != null)
-      {
-        if (vamsasImport != null)
-        {
-          // close the newly imported session and import the Jalview specific
-          // remnants into the new session later on.
-          desktop.vamsasStop_actionPerformed(null);
-        }
-        // now join the new session
-        try
-        {
-          if (desktop.joinVamsasSession(vamsasSession))
-          {
-            System.out.println(
-                    "Successfully joined vamsas session " + vamsasSession);
-          }
-          else
-          {
-            System.err.println("WARNING: Failed to join vamsas session "
-                    + vamsasSession);
-          }
-        } catch (Exception e)
-        {
-          System.err.println(
-                  "ERROR: Failed to join vamsas session " + vamsasSession);
-          e.printStackTrace();
-        }
-        if (vamsasImport != null)
-        {
-          // the Jalview specific remnants can now be imported into the new
-          // session at the user's leisure.
-          Cache.log.info(
-                  "Skipping Push for import of data into existing vamsas session."); // TODO:
-          // enable
-          // this
-          // when
-          // debugged
-          // desktop.getVamsasApplication().push_update();
-        }
-      }
-    }
     long progress = -1;
     // Finally, deal with the remaining input data.
     if (file != null)
@@ -761,7 +676,7 @@ public class Jalview
     // And the user
     // ////////////////////
 
-    if (!headless && file == null && vamsasImport == null
+    if (!headless && file == null
             && jalview.bin.Cache.getDefault("SHOW_STARTUP_FILE", true))
     {
       file = jalview.bin.Cache.getDefault("STARTUP_FILE",
@@ -867,10 +782,6 @@ public class Jalview
                     // passed in correctly)"
                     + "-jabaws URL\tSpecify URL for Jabaws services (e.g. for a local installation).\n"
                     + "-fetchfrom nickname\tQuery nickname for features for the alignments and display them.\n"
-                    // +
-                    // "-vdoc vamsas-document\tImport vamsas document into new
-                    // session or join existing session with same URN\n"
-                    // + "-vses vamsas-session\tJoin session with given URN\n"
                     + "-groovy FILE\tExecute groovy script in FILE, after all other arguments have been processed (if FILE is the text 'STDIN' then the file will be read from STDIN)\n"
                     + "\n~Read documentation in Application or visit http://www.jalview.org for description of Features and Annotations file~\n\n");
   }
index cf91b9c..1ec6939 100644 (file)
@@ -77,9 +77,7 @@ import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
-import java.io.BufferedInputStream;
 import java.io.File;
-import java.io.FileOutputStream;
 import java.io.FileWriter;
 import java.io.IOException;
 import java.net.URL;
@@ -119,8 +117,6 @@ import javax.swing.event.HyperlinkEvent;
 import javax.swing.event.HyperlinkEvent.EventType;
 import javax.swing.event.InternalFrameAdapter;
 import javax.swing.event.InternalFrameEvent;
-import javax.swing.event.MenuEvent;
-import javax.swing.event.MenuListener;
 
 import org.stackoverflowusers.file.WindowsShortcut;
 
@@ -346,7 +342,6 @@ public class Desktop extends jalview.jbgui.GDesktop
      * constructor.
      */
     instance = this;
-    doVamsasClientCheck();
 
     doConfigureStructurePrefs();
     setTitle("Jalview " + jalview.bin.Cache.getProperty("VERSION"));
@@ -675,46 +670,6 @@ public class Desktop extends jalview.jbgui.GDesktop
     return null;
   }
 
-  private void doVamsasClientCheck()
-  {
-    if (jalview.bin.Cache.vamsasJarsPresent())
-    {
-      setupVamsasDisconnectedGui();
-      VamsasMenu.setVisible(true);
-      final Desktop us = this;
-      VamsasMenu.addMenuListener(new MenuListener()
-      {
-        // this listener remembers when the menu was first selected, and
-        // doesn't rebuild the session list until it has been cleared and
-        // reselected again.
-        boolean refresh = true;
-
-        @Override
-        public void menuCanceled(MenuEvent e)
-        {
-          refresh = true;
-        }
-
-        @Override
-        public void menuDeselected(MenuEvent e)
-        {
-          refresh = true;
-        }
-
-        @Override
-        public void menuSelected(MenuEvent e)
-        {
-          if (refresh)
-          {
-            us.buildVamsasStMenu();
-            refresh = false;
-          }
-        }
-      });
-      vamsasStart.setVisible(true);
-    }
-  }
-
   void showPasteMenu(int x, int y)
   {
     JPopupMenu popup = new JPopupMenu();
@@ -1449,10 +1404,6 @@ public class Desktop extends jalview.jbgui.GDesktop
     }
     Jalview.setCurrentAlignFrame(null);
     System.out.println("ALL CLOSED");
-    if (v_client != null)
-    {
-      // TODO clear binding to vamsas document objects on close_all
-    }
 
     /*
      * reset state of singleton objects as appropriate (clear down session state
@@ -2042,364 +1993,6 @@ public class Desktop extends jalview.jbgui.GDesktop
 
   }
 
-  jalview.gui.VamsasApplication v_client = null;
-
-  @Override
-  public void vamsasImport_actionPerformed(ActionEvent e)
-  {
-    if (v_client == null)
-    {
-      // Load and try to start a session.
-      JalviewFileChooser chooser = new JalviewFileChooser(
-              jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
-
-      chooser.setFileView(new JalviewFileView());
-      chooser.setDialogTitle(
-              MessageManager.getString("label.open_saved_vamsas_session"));
-      chooser.setToolTipText(MessageManager.getString(
-              "label.select_vamsas_session_opened_as_new_vamsas_session"));
-
-      int value = chooser.showOpenDialog(this);
-
-      if (value == JalviewFileChooser.APPROVE_OPTION)
-      {
-        String fle = chooser.getSelectedFile().toString();
-        if (!vamsasImport(chooser.getSelectedFile()))
-        {
-          JvOptionPane.showInternalMessageDialog(Desktop.desktop,
-                  MessageManager.formatMessage(
-                          "label.couldnt_import_as_vamsas_session",
-                          new Object[]
-                          { fle }),
-                  MessageManager
-                          .getString("label.vamsas_document_import_failed"),
-                  JvOptionPane.ERROR_MESSAGE);
-        }
-      }
-    }
-    else
-    {
-      jalview.bin.Cache.log.error(
-              "Implementation error - load session from a running session is not supported.");
-    }
-  }
-
-  /**
-   * import file into a new vamsas session (uses jalview.gui.VamsasApplication)
-   * 
-   * @param file
-   * @return true if import was a success and a session was started.
-   */
-  public boolean vamsasImport(URL url)
-  {
-    // TODO: create progress bar
-    if (v_client != null)
-    {
-
-      jalview.bin.Cache.log.error(
-              "Implementation error - load session from a running session is not supported.");
-      return false;
-    }
-
-    try
-    {
-      // copy the URL content to a temporary local file
-      // TODO: be a bit cleverer here with nio (?!)
-      File file = File.createTempFile("vdocfromurl", ".vdj");
-      FileOutputStream fos = new FileOutputStream(file);
-      BufferedInputStream bis = new BufferedInputStream(url.openStream());
-      byte[] buffer = new byte[2048];
-      int ln;
-      while ((ln = bis.read(buffer)) > -1)
-      {
-        fos.write(buffer, 0, ln);
-      }
-      bis.close();
-      fos.close();
-      v_client = new jalview.gui.VamsasApplication(this, file,
-              url.toExternalForm());
-    } catch (Exception ex)
-    {
-      jalview.bin.Cache.log.error(
-              "Failed to create new vamsas session from contents of URL "
-                      + url,
-              ex);
-      return false;
-    }
-    setupVamsasConnectedGui();
-    v_client.initial_update(); // TODO: thread ?
-    return v_client.inSession();
-  }
-
-  /**
-   * import file into a new vamsas session (uses jalview.gui.VamsasApplication)
-   * 
-   * @param file
-   * @return true if import was a success and a session was started.
-   */
-  public boolean vamsasImport(File file)
-  {
-    if (v_client != null)
-    {
-
-      jalview.bin.Cache.log.error(
-              "Implementation error - load session from a running session is not supported.");
-      return false;
-    }
-
-    setProgressBar(MessageManager.formatMessage(
-            "status.importing_vamsas_session_from", new Object[]
-            { file.getName() }), file.hashCode());
-    try
-    {
-      v_client = new jalview.gui.VamsasApplication(this, file, null);
-    } catch (Exception ex)
-    {
-      setProgressBar(MessageManager.formatMessage(
-              "status.importing_vamsas_session_from", new Object[]
-              { file.getName() }), file.hashCode());
-      jalview.bin.Cache.log.error(
-              "New vamsas session from existing session file failed:", ex);
-      return false;
-    }
-    setupVamsasConnectedGui();
-    v_client.initial_update(); // TODO: thread ?
-    setProgressBar(MessageManager.formatMessage(
-            "status.importing_vamsas_session_from", new Object[]
-            { file.getName() }), file.hashCode());
-    return v_client.inSession();
-  }
-
-  public boolean joinVamsasSession(String mysesid)
-  {
-    if (v_client != null)
-    {
-      throw new Error(MessageManager
-              .getString("error.try_join_vamsas_session_another"));
-    }
-    if (mysesid == null)
-    {
-      throw new Error(
-              MessageManager.getString("error.invalid_vamsas_session_id"));
-    }
-    v_client = new VamsasApplication(this, mysesid);
-    setupVamsasConnectedGui();
-    v_client.initial_update();
-    return (v_client.inSession());
-  }
-
-  @Override
-  public void vamsasStart_actionPerformed(ActionEvent e)
-  {
-    if (v_client == null)
-    {
-      // Start a session.
-      // we just start a default session for moment.
-      /*
-       * JalviewFileChooser chooser = new JalviewFileChooser(jalview.bin.Cache.
-       * getProperty("LAST_DIRECTORY"));
-       * 
-       * chooser.setFileView(new JalviewFileView());
-       * chooser.setDialogTitle("Load Vamsas file");
-       * chooser.setToolTipText("Import");
-       * 
-       * int value = chooser.showOpenDialog(this);
-       * 
-       * if (value == JalviewFileChooser.APPROVE_OPTION) { v_client = new
-       * jalview.gui.VamsasApplication(this, chooser.getSelectedFile());
-       */
-      v_client = new VamsasApplication(this);
-      setupVamsasConnectedGui();
-      v_client.initial_update(); // TODO: thread ?
-    }
-    else
-    {
-      // store current data in session.
-      v_client.push_update(); // TODO: thread
-    }
-  }
-
-  protected void setupVamsasConnectedGui()
-  {
-    vamsasStart.setText(MessageManager.getString("label.session_update"));
-    vamsasSave.setVisible(true);
-    vamsasStop.setVisible(true);
-    vamsasImport.setVisible(false); // Document import to existing session is
-    // not possible for vamsas-client-1.0.
-  }
-
-  protected void setupVamsasDisconnectedGui()
-  {
-    vamsasSave.setVisible(false);
-    vamsasStop.setVisible(false);
-    vamsasImport.setVisible(true);
-    vamsasStart
-            .setText(MessageManager.getString("label.new_vamsas_session"));
-  }
-
-  @Override
-  public void vamsasStop_actionPerformed(ActionEvent e)
-  {
-    if (v_client != null)
-    {
-      v_client.end_session();
-      v_client = null;
-      setupVamsasDisconnectedGui();
-    }
-  }
-
-  protected void buildVamsasStMenu()
-  {
-    if (v_client == null)
-    {
-      String[] sess = null;
-      try
-      {
-        sess = VamsasApplication.getSessionList();
-      } catch (Exception e)
-      {
-        jalview.bin.Cache.log.warn("Problem getting current sessions list.",
-                e);
-        sess = null;
-      }
-      if (sess != null)
-      {
-        jalview.bin.Cache.log.debug(
-                "Got current sessions list: " + sess.length + " entries.");
-        VamsasStMenu.removeAll();
-        for (int i = 0; i < sess.length; i++)
-        {
-          JMenuItem sessit = new JMenuItem();
-          sessit.setText(sess[i]);
-          sessit.setToolTipText(MessageManager
-                  .formatMessage("label.connect_to_session", new Object[]
-                  { sess[i] }));
-          final Desktop dsktp = this;
-          final String mysesid = sess[i];
-          sessit.addActionListener(new ActionListener()
-          {
-
-            @Override
-            public void actionPerformed(ActionEvent e)
-            {
-              if (dsktp.v_client == null)
-              {
-                Thread rthr = new Thread(new Runnable()
-                {
-
-                  @Override
-                  public void run()
-                  {
-                    dsktp.v_client = new VamsasApplication(dsktp, mysesid);
-                    dsktp.setupVamsasConnectedGui();
-                    dsktp.v_client.initial_update();
-                  }
-
-                });
-                rthr.start();
-              }
-            };
-          });
-          VamsasStMenu.add(sessit);
-        }
-        // don't show an empty menu.
-        VamsasStMenu.setVisible(sess.length > 0);
-
-      }
-      else
-      {
-        jalview.bin.Cache.log.debug("No current vamsas sessions.");
-        VamsasStMenu.removeAll();
-        VamsasStMenu.setVisible(false);
-      }
-    }
-    else
-    {
-      // Not interested in the content. Just hide ourselves.
-      VamsasStMenu.setVisible(false);
-    }
-  }
-
-  @Override
-  public void vamsasSave_actionPerformed(ActionEvent e)
-  {
-    if (v_client != null)
-    {
-      // TODO: VAMSAS DOCUMENT EXTENSION is VDJ
-      JalviewFileChooser chooser = new JalviewFileChooser("vdj",
-              "Vamsas Document");
-
-      chooser.setFileView(new JalviewFileView());
-      chooser.setDialogTitle(MessageManager
-              .getString("label.save_vamsas_document_archive"));
-
-      int value = chooser.showSaveDialog(this);
-
-      if (value == JalviewFileChooser.APPROVE_OPTION)
-      {
-        java.io.File choice = chooser.getSelectedFile();
-        JPanel progpanel = addProgressPanel(MessageManager
-                .formatMessage("label.saving_vamsas_doc", new Object[]
-                { choice.getName() }));
-        Cache.setProperty("LAST_DIRECTORY", choice.getParent());
-        String warnmsg = null;
-        String warnttl = null;
-        try
-        {
-          v_client.vclient.storeDocument(choice);
-        } catch (Error ex)
-        {
-          warnttl = "Serious Problem saving Vamsas Document";
-          warnmsg = ex.toString();
-          jalview.bin.Cache.log
-                  .error("Error Whilst saving document to " + choice, ex);
-
-        } catch (Exception ex)
-        {
-          warnttl = "Problem saving Vamsas Document.";
-          warnmsg = ex.toString();
-          jalview.bin.Cache.log.warn(
-                  "Exception Whilst saving document to " + choice, ex);
-
-        }
-        removeProgressPanel(progpanel);
-        if (warnmsg != null)
-        {
-          JvOptionPane.showInternalMessageDialog(Desktop.desktop,
-
-                  warnmsg, warnttl, JvOptionPane.ERROR_MESSAGE);
-        }
-      }
-    }
-  }
-
-  JPanel vamUpdate = null;
-
-  /**
-   * hide vamsas user gui bits when a vamsas document event is being handled.
-   * 
-   * @param b
-   *          true to hide gui, false to reveal gui
-   */
-  public void setVamsasUpdate(boolean b)
-  {
-    Cache.log.debug("Setting gui for Vamsas update "
-            + (b ? "in progress" : "finished"));
-
-    if (vamUpdate != null)
-    {
-      this.removeProgressPanel(vamUpdate);
-    }
-    if (b)
-    {
-      vamUpdate = this.addProgressPanel(
-              MessageManager.getString("label.updating_vamsas_session"));
-    }
-    vamsasStart.setVisible(!b);
-    vamsasStop.setVisible(!b);
-    vamsasSave.setVisible(!b);
-  }
-
   public JInternalFrame[] getAllFrames()
   {
     return desktop.getAllFrames();
@@ -2902,7 +2495,8 @@ public class Desktop extends jalview.jbgui.GDesktop
 
   public VamsasApplication getVamsasApplication()
   {
-    return v_client;
+    // TODO: JAL-3311 remove remaining code from Jalview relating to VAMSAS
+    return null;
 
   }
 
index c094b1c..0848a4d 100644 (file)
@@ -688,7 +688,8 @@ public class VamsasApplication implements SelectionSource, VamsasSource
 
   public void disableGui(boolean b)
   {
-    Desktop.instance.setVamsasUpdate(b);
+    // JAL-3311 TODO: remove this class!
+    // Desktop.instance.setVamsasUpdate(b);
   }
 
   Hashtable _backup_vobj2jv;
index f30fa9b..0ef3f46 100755 (executable)
@@ -51,10 +51,6 @@ public class GDesktop extends JFrame
 
   JMenu HelpMenu = new JMenu();
 
-  protected JMenu VamsasMenu = new JMenu();
-
-  protected JMenu VamsasStMenu = new JMenu();
-
   JMenuItem inputLocalFileMenuItem = new JMenuItem();
 
   JMenuItem inputURLMenuItem = new JMenuItem();
@@ -81,16 +77,8 @@ public class GDesktop extends JFrame
 
   JMenu inputMenu = new JMenu();
 
-  protected JMenuItem vamsasStart = new JMenuItem();
-
-  protected JMenuItem vamsasImport = new JMenuItem();
-
-  protected JMenuItem vamsasSave = new JMenuItem();
-
   JMenuItem inputSequence = new JMenuItem();
 
-  protected JMenuItem vamsasStop = new JMenuItem();
-
   JMenuItem closeAll = new JMenuItem();
 
   JMenuItem raiseRelated = new JMenuItem();
@@ -129,7 +117,6 @@ public class GDesktop extends JFrame
     {
       FileMenu.setMnemonic('F');
       inputLocalFileMenuItem.setMnemonic('L');
-      VamsasMenu.setMnemonic('V');
       inputURLMenuItem.setMnemonic('U');
       inputTextboxMenuItem.setMnemonic('C');
       quit.setMnemonic('Q');
@@ -150,12 +137,6 @@ public class GDesktop extends JFrame
 
     FileMenu.setText(MessageManager.getString("action.file"));
     HelpMenu.setText(MessageManager.getString("action.help"));
-    VamsasMenu.setText("Vamsas");
-    VamsasMenu.setToolTipText(MessageManager
-            .getString("label.share_data_vamsas_applications"));
-    VamsasStMenu.setText(MessageManager.getString("label.connect_to"));
-    VamsasStMenu.setToolTipText(
-            MessageManager.getString("label.join_existing_vamsas_session"));
     inputLocalFileMenuItem
             .setText(MessageManager.getString("label.load_tree_from_file"));
     inputLocalFileMenuItem.setAccelerator(
@@ -268,39 +249,6 @@ public class GDesktop extends JFrame
       }
     });
     inputMenu.setText(MessageManager.getString("label.input_alignment"));
-    vamsasStart
-            .setText(MessageManager.getString("label.new_vamsas_session"));
-    vamsasStart.setVisible(false);
-    vamsasStart.addActionListener(new ActionListener()
-    {
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        vamsasStart_actionPerformed(e);
-      }
-    });
-    vamsasImport.setText(
-            MessageManager.getString("action.load_vamsas_session"));
-    vamsasImport.setVisible(false);
-    vamsasImport.addActionListener(new ActionListener()
-    {
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        vamsasImport_actionPerformed(e);
-      }
-    });
-    vamsasSave.setText(
-            MessageManager.getString("action.save_vamsas_session"));
-    vamsasSave.setVisible(false);
-    vamsasSave.addActionListener(new ActionListener()
-    {
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        vamsasSave_actionPerformed(e);
-      }
-    });
     inputSequence
             .setText(MessageManager.getString("action.fetch_sequences"));
     inputSequence.addActionListener(new ActionListener()
@@ -311,17 +259,6 @@ public class GDesktop extends JFrame
         inputSequence_actionPerformed(e);
       }
     });
-    vamsasStop
-            .setText(MessageManager.getString("label.stop_vamsas_session"));
-    vamsasStop.setVisible(false);
-    vamsasStop.addActionListener(new ActionListener()
-    {
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        vamsasStop_actionPerformed(e);
-      }
-    });
     closeAll.setText(MessageManager.getString("action.close_all"));
     closeAll.addActionListener(new ActionListener()
     {
@@ -428,8 +365,6 @@ public class GDesktop extends JFrame
     
     desktopMenubar.add(FileMenu);
     desktopMenubar.add(toolsMenu);
-    VamsasMenu.setVisible(false);
-    desktopMenubar.add(VamsasMenu);
     desktopMenubar.add(HelpMenu);
     desktopMenubar.add(windowMenu);
     FileMenu.add(inputMenu);
@@ -442,12 +377,6 @@ public class GDesktop extends JFrame
     FileMenu.add(quit);
     HelpMenu.add(aboutMenuItem);
     HelpMenu.add(documentationMenuItem);
-    VamsasMenu.add(VamsasStMenu);
-    VamsasStMenu.setVisible(false);
-    VamsasMenu.add(vamsasStart);
-    VamsasMenu.add(vamsasImport);
-    VamsasMenu.add(vamsasSave);
-    VamsasMenu.add(vamsasStop);
     if (!Platform.isAMac() || specversion < 11)
     {
       toolsMenu.add(preferences);