Opened 14 years ago

Closed 14 years ago

Last modified 10 years ago

#471 closed (fixed)

Searching OMSSA from Proteios SE

Reported by: Fredrik Levander Owned by: olle
Milestone: Proteios SE 2.5 Keywords:
Cc:

Description

It should be possible to search in OMSSA from ProSE. Probably this should be by running a local binary, but the web interface is also an alternative.

http://pubchem.ncbi.nlm.nih.gov/omssa/

See also #470.

Change History (40)

comment:1 Changed 14 years ago by olle

Traceability note: The ticket referred to in the ticket description is Ticket #470 (Import of OMSSA search results).

comment:2 Changed 14 years ago by olle

Status: newassigned

Ticket accepted.

comment:3 Changed 14 years ago by olle

Various background information:

  • OMSSA (Open Mass Spectrometry Search Algorithm) is an open source search engine for MS/MS peptide spectra, available from NCBI (National Center for Biotechnology Information) at http://pubchem.ncbi.nlm.nih.gov/omssa/. It can be downloaded to be run as a local binary for various platforms, or a public web search service can be used.
  • Using a local binary has the advantage of allowing use of one's own protein sequence libraries in the search. Support for OMSSA search via Proteios will therefore be focused on using a locally installed OMSSA binary search engine.
  • Search of MS/MS spectra obtained using ion trap or ETD (electron transfer dissociation) spectrometers are supported, differing in the values of some search parameters. When the OMSSA web search service is used, the CGI script is called with arguments "?searchsettings=iontrap.xml" or "?searchsettings=etd.xml", for the two cases, respectively.
  • The OMSSA local binary normally uses a command line interface. Input of search parameter values may be supplied as separate command line arguments, or assembled in an input XML file.

comment:4 Changed 14 years ago by olle

Outline of initial design for support of OMSSA search in Proteios.

  • The design will be based on that used for support of X!Tandem search in Proteios, see Ticket #362 (Run X! Tandem from Proteios) and Ticket #363 (A GUI for selecting search parameters for X!Tandem searches). No complete classes can be used without modification, but some methods can. While many modifications will be simple, e.g. name changes, the major changes concern differences in the input and result formats for the X!Tandem and OMSSA search engines.
  • Input values will be stored in an XML file, as for X!Tandem input.
  • Two different default input files will be used, omssa_default_iontrap.xml and omssa_default_etd.xml, for use with data obtained using ion trap or ETD MS/MS mass spectrometers, respectively. They have the same XML tags, but differ in some attribute and tag values. The default files will be based on the files downloaded from http://pubchem.ncbi.nlm.nih.gov/omssa/iontrap.xml and http://pubchem.ncbi.nlm.nih.gov/omssa/etd.xml, respectively, but modified to use tab indentation for similarity with the X!Tandem default input file.

comment:5 Changed 14 years ago by olle

(In [2910]) Refs #362. Refs #471. Class/file plugins/SearchXTandemPlugin.java in plugin/ updated by placing help classes as private inner classes instead of package private classes in the same file as class SearchXTandemPlugin. This avoids problems when the same functionality is needed in other search classes.

  1. Class/file plugins/SearchXTandemPlugin.java in plugin/ updated

by placing help classes StreamGobbler and FileItemPartSource as private inner classes instead of package private classes in the same file as class SearchXTandemPlugin.

comment:6 Changed 14 years ago by olle

The default OMSSA input XML files iontrap.xml and etd.xml differ in the following tag values (optional attributes given in parenthesis after the value):

Quantity iontrap.xml value etd.xml value
Precursor ion search type 0 ("monoisotopic") 1 ("average")
Ions to search 1 1 ("b") 2 ("c")
Ions to search 2 4 ("y") 5 ("z")
Number of top intensity peaks in first pass 6 20
Maximum precursor charge to search when not 1+ 3 6
Minimum charge to start using multiply charged products 3 7
Eliminate charge reduced precursors in spectra (0=no, 1=yes) 0 1

comment:7 Changed 14 years ago by olle

(In [2912]) Refs #471. Api/core updated with new core classes to support OMSSA parameter storage in file items:

  1. New class/file core/OMSSAParameterSetStorage.java with

data class/file core/data/OMSSAParameterSetStorageData.java in api/core/ added for storing OMSSA parameter data in a related parameter file item in XML file format.

  1. Classes/files core/Item.java and core/Install.java in

api/core/ updated with the new OMSSAParameterSetStorage item.

  1. New class/file io/OMSSAParameterSet.java in api/core/

with instance variables and public accessor methods for fields corresponding to variables in an OMSSA input XML file.

  1. New interface/file io/OMSSAParameterFileUtilInterface.java

in api/core for obtaining an OMSSAParameterSet.

  1. New class/file io/OMSSAParameterFileUtil.java

in api/core/ with public methods for importing data from an OMSSA input XML file to an OMSSAParameterSet, and exporting an OMSSAParameterSet to an OMSSA input XML file.

  1. New class/file props/OMSSAParameterFileNameReader.java

in api/core/ added to read the name of the parameter file item related to an OMSSAParameterSetStorage item.

comment:8 Changed 14 years ago by olle

(In [2913]) Refs #471. Class/file core/Item.java in api/core/ updated with corrected comment for OMSSAParameterSetStorage.

comment:9 Changed 14 years ago by olle

(In [2914]) Refs #471. Added new source directory action/omssa in client/servlet/ for action classes/files related to OMSSA parameter set creation and editing, as well as performing OMSSA searches from Proteios.

comment:10 Changed 14 years ago by olle

(In [2915]) Refs #471. Configuration and template files for OMSSA search added:

  1. OMSSA search properties template file

conf/omssa.properties.in in client/servlet/ added. Intended to be copied to an OMSSA search properties file conf/omssa.properties, which is updated with correct settings.

  1. New classes/files OMSSAPropertiesFile.java in client/servlet/

and OMSSAPropertiesFile2.java in api/core/ added. They load omssa.properties file and give access to the settings in the latter.

  1. OMSSA search default parameter set files

conf/omssa_default_iontrap.xml and conf/omssa_default_etd.xml in client/servlet/ added. They are based on files downloaded from http://pubchem.ncbi.nlm.nih.gov/omssa/iontrap.xml and http://pubchem.ncbi.nlm.nih.gov/omssa/etd.xml, respectively, but modified to use tab indentation for similarity with the X!Tandem default input file. They also have an extra XML tag for species information.

  1. Outermost ant build file build.xml updated to copy

configuration/settings files conf/omssa.properties, conf/omssa_default_iontrap.xml, and conf/omssa_default_etd.xml in client/servlet/ to distribution directory www/WEB-INF/classes/.

comment:11 Changed 14 years ago by olle

(In [2916]) Refs #471. Installation scripts updated to create OMSSA properties file, if not existing:

  1. Installation scripts install-linux.sh and install-win.bat in

misc/install/ updated to copy OMSSA search properties template file omssa.properties.in to OMSSA search properties file omssa.properties, if the latter file does not exist.

comment:12 Changed 14 years ago by olle

(In [2917]) Refs #471. Refs #356. Refs #287. First revision of OMSSA search in Proteios via locally installed search engine.

  1. Class/file gui/table/TableFactory.java in client/servlet/

updated in public method void useColumnsFromClass() by obtaining parameter file for OMSSAParameterSetStorage item.

  1. Class/file gui/form/FormFactory.java in client/servlet/

updated with new methods related to forms for OMSSA search:

  1. Public method Form getNewOMSSAParameterSetStorageForm

(OMSSAParameterSetStorage omssaParameterSetStorage).

  1. Public method Form getSaveAsOMSSAParameterSetStorageForm

(OMSSAParameterSetStorage omssaParameterSetStorage, OMSSAParameterSet omssaParameterSet).

  1. Public method Fieldset addOMSSAParameterSetToFieldset

(OMSSAParameterSet omssaParameterSet, Fieldset fs, boolean fieldsHidden, boolean fieldsDisabled).

  1. Public method Fieldset addVStringParameterToFieldset

(VString vStringParameter, String value, Fieldset fs, boolean fieldsHidden, boolean fieldsDisabled).

  1. public Form getOMSSAParameterSetForm

(OMSSAParameterSet omssaParameterSet, List<Option> enzymeOptionList, List<Option> sequenceLibraryOptionList, List<Option> speciesOptionList, List<Option> fixedModsOptionList, List<Option> variableModsOptionList).

  1. Class/file gui/MainMenu.java in client/servlet/ updated by

adding node for viewing search setup items under the View menu. The current X!Tandem menu item is moved here, and the new OMSSA menu item is also placed here.

  1. New core extension class/file

action/file/UseSpectrumFileForOMSSASearchExtension.java in client/servlet/ added, for creating OMSSA search jobs for selected spectrum files.

  1. New action classes/files added to action/omssa/ in

client/servlet/ for creating, viewing, and editing OMSSA parameter sets and starting OMSSA search jobs from them:

  1. AddOMSSAParameterSetStorage.java.
  2. ListOMSSAParameterSetStorage.java.
  3. NewOMSSAParameterSetStorage.java.
  4. SaveOMSSAParameterSetStorage.java.
  5. SearchOMSSA.java.
  6. SelectOMSSAParameterFileStep1a.java.
  7. SelectOMSSAParameterFileStep1b.java.
  8. ViewActiveOMSSAParameterFile.java.
  9. ViewActiveOMSSAParameterSetStorage.java.
  10. ViewOMSSAParameterFile.java.
  11. ViewOMSSAParameterSetStorage.java.
  1. New plugin class/file plugins/SearchOMSSAPlugin.java in

plugin/ for executing an OMSSA search via a locally installed search engine and trying to upload the output XML file into Proteios.

  1. English dictionary file locale/en/dictionary in client/servlet/

updated with new entries for various string keys.

comment:13 Changed 14 years ago by olle

(In [2918]) Refs #471. OMSSA search in Proteios via locally installed search engine updated to include input parameter values in result file:

  1. Class/file plugins/SearchOMSSAPlugin.java in plugin/ updated

in private method void omssaSearchLocal(Request request, ...) to set flag "-w" in search command for locally installed OMSSA search engine, in order to include input parameter values in the result file.

comment:14 Changed 14 years ago by olle

Design update: The OMSSA GUI should obtain standard alternatives for search parameter values from the used locally installed search engine, or the used OMSSA web search site.

The design will be based on the one used for obtaining standard alternatives for X!Tandem search, Ticket #435 (X!Tandem GUI should obtain standard alternatives for search parameter values from the used GPM site), although locally installed OMSSA search engines will also be supported, as this is the default mode for performing an OMSSA search via Proteios. A locally installed OMSSA search engine returns parameter alternatives for enzymes, modifications, and ion types, when specific arguments are given (version 2.1.1 for Linux). Initially only enzyme and modification alternatives will be used in the GUI.

The main difference between X!Tandem and OMSSA in the web search case, is that the GPM X!Tandem web site stores most parameter alternatives in separate JavaScript files, while OMSSA stores them in the main HTML file, requiring a modified design.

comment:15 Changed 14 years ago by olle

(In [2921]) Refs #471. First revision of support for obtaining standard alternatives for OMSSA search parameter values from the used locally installed search engine, or the used OMSSA web search site:

  1. New class/file io/OMSSAParameterSetOptionsUtil.java in api/core/

added. It contains public methods for obtaining string lists with standard alternatives for search parameter values from the used locally installed search engine, or the used OMSSA web search site. Whether the parameter alternatives should be obtained from a locally installed search engine or an OMSSA web search site is determined by the value of a boolean instance variable (default is to use a locally installed search engine). If an option set is currently not supported for a search mode, null is returned.

  1. Class/file action/omssa/ViewActiveOMSSAParameterSetStorage.java

in client/servlet/ updated to support obtaining parameter alternatives from the used OMSSA search engines:

  1. Public method void runMe() updated to call methods in an

instance of !OMSSAParameterSetOptionsUtil to obtain parameter alternatives.

  1. Private method List<Option> stringListToOptionList(List<String> stringList)

updated to return null it the input string list is null.

comment:16 Changed 14 years ago by olle

(In [7]) Wiki page Proteios SE server administration Installation updated with info on OMSSA configuration.

comment:17 Changed 14 years ago by olle

(In [2931]) Refs #471. OMSSA search properties template file conf/omssa.properties.in in client/servlet/ updated by correction in comment blocks, where now the web search alternative is denoted as "optional", and the local installation alternative is denoted as "required".

comment:18 Changed 14 years ago by olle

(In [2932]) Refs #471. Examples and comments referring to locally installed OMSSA search engine version 2.1.1 updated to refer to version 2.1.4, as this or a later version is recommended to use, because of additional output options:

  1. OMSSA search properties template file conf/omssa.properties.in

in client/servlet/ updated in example.

  1. Class/file action/omssa/SearchOMSSA.java in client/servlet/

updated in comment.

comment:19 Changed 14 years ago by olle

(In [2933]) Refs #471. Class/file io/OMSSAParameterSetOptionsUtil.java in api/core/ updated in comment to refer to locally installed OMSSA search engine version 2.1.4, as this or a later version is recommended to use, because of additional output options:

  1. Public method void fetchOMSSASearchProperties() updated in

comment.

comment:20 Changed 14 years ago by olle

(In [2934]) Refs #471. Support for obtaining standard alternatives for OMSSA search parameter values extended by obtaining sequence library (database) alternatives for a locally installed search engine by checking the installed databases:

  1. OMSSA search properties template file conf/omssa.properties.in

in client/servlet/ updated with new parameter omssa.local.database.directory.path for the path to the directory where the databases are installed.

  1. Class/file io/OMSSAParameterSetOptionsUtil.java in api/core/

updated to obtain sequence library (database) alternatives for a locally installed search engine by checking the installed databases:

  1. New private instance variable String omssaDatabaseDirectoryPath

added.

  1. Public method void fetchOMSSASearchProperties() updated by

obtaining the value new String instance variable omssaDatabaseDirectoryPath from entry in OMSSA properties file omssa.properties for parameter omssa.local.database.directory.path.

  1. Public method List<String> fetchSequenceLibraryStringList()

updated for locally installed OMSSA search engine by calling new private method fetchOMSSASequenceLibraryStringListFromLocalInstallation() to obtain string list with option alternatives for sequence libraries.

  1. New private method List<String>

fetchOMSSASequenceLibraryStringListFromLocalInstallation() added. It checks the contents of the directory where the databases are installed by calling new private method fetchLocalDirectoryListing(dirPath), and extracts the database names.

  1. New private method

List<String> fetchLocalDirectoryListing(String directoryPath) added. It returns a list of filenames in the specified local directory.

comment:21 Changed 14 years ago by olle

(In [9]). Wiki page Proteios SE server administration updated with info on new parameter omssa.local.database.directory.path for OMSSA configuration.

comment:22 Changed 14 years ago by olle

Design update: Tests have revealed that to work with third-party sequence libraries (databases), Proteios support for locally installed OMSSA search engines needs the following updates:

  1. In OMSSA properties file "omssa.properties", the database directory path must be given in web format, i.e. directory delimiter "/", e.g. a MS-Windows path C:\tools\omssa-2.1.4.win32\db should be entered as C:/tools/omssa-2.1.4.win32/db.
  2. When parsing the contents of the OMSSA database directory for *.pin files, apart from removing the ".pin" file extension, only extensions related to package numbers like "nr.00", "nr.01", etc. should be removed, while e.g. a filename "RndIPI_human_3.50.fasta.pin" should result in the database name "RndIPI_human_3.50.fasta", not "RndIPI_human_3" as in the current version.
  3. The full path to the database should be given after the "-d" option, not just the database name.

comment:23 Changed 14 years ago by olle

(In [2935]) Refs #471. Proteios support for a locally installed OMSSA search engine updated to make it works with third-party sequence libraries (databases):

  1. OMSSA search properties template file conf/omssa.properties.in

in client/servlet/ updated with comment specifying that web format should be used for paths, i.e. directory delimiter "/".

  1. Class/file io/OMSSAParameterSetOptionsUtil.java in api/core/

updated in private method List<String> fetchOMSSASequenceLibraryStringListFromLocalInstallation() to, apart from file extension ".pin", only remove package number extensions, e.g. "nr.00", "nr.01", when constructing a database name from a filename.

  1. Class/file action/omssa/SearchOMSSA.java in client/servlet/

updated to transfer the value of the OMSSA database directory path to the created search job.

  1. Class/file plugins/SearchOMSSAPlugin.java in plugin/ updated:
  2. Private method

void execute(Request request, Response response, ProgressReporter? progress) updated by obtaining the value of the OMSSA database directory path from a job parameter, and using it as an argument when calling updated private method omssaSearchLocal(request, response, ...).

  1. Private method void omssaSearchLocal(request, response, ...)

updated with new argument String omssaDatabaseDirectoryPath, whose value is used to give a full path to the database after option "-d", when creating the OMSSA search command.

comment:24 Changed 14 years ago by Fredrik Levander

(In [2942]) Refs #486. Added spectrum string id. Refs #493. Added retention time. Refs #470,#471. Added file types for OMSSA.

comment:25 Changed 14 years ago by Fredrik Levander

(In [2961]) Refs #470. First revision of import of OMSSA XML results. Modifications are not named properly in this version.

Refs #471. Filetype of OMSSA search result is now set.

comment:26 Changed 14 years ago by olle

Resolution: fixed
Status: assignedclosed

Ticket closed as the requested functionality has been added.

comment:27 Changed 13 years ago by olle

(In [3291]) Refs #575. Refs #362. Refs #471. Bug fixed when transferring value of the Boolean flag variable indicating whether an !XTandem or OMSSA parameter set should be saved from the view class, when no spectrum file has been selected:

  1. Class/file action/omssa/ViewActiveOMSSAParameterSetStorage.java

in client/servlet/ updated in public method void runMe() by fixing bug when transferring value of the Boolean flag variable indicating whether a parameter set should be saved from the view class, when no spectrum file has been selected.

  1. Class/file action/xTandemInput/ViewActiveXTandemParameterSetStorage.java

in client/servlet/ updated in public method void runMe() by fixing bug when transferring value of the Boolean flag variable indicating whether a parameter set should be saved from the view class, when no spectrum file has been selected.

comment:28 Changed 13 years ago by olle

(In [3292]) Refs #575. Refs #362. Refs #471. Bug fixed in the save class when transferring value of the Boolean flag variable indicating whether !XTandem or OMSSA searching should be performed via a web interface:

  1. Class/file action/omssa/SaveOMSSAParameterSetStorage.java in

client/servlet/ updated in protected method void runMe() by fixing bug when transferring value of the Boolean flag variable indicating whether OMSSA searching should be performed via a web interface.

  1. Class/file action/xTandemInput/SaveXTandemParameterSetStorage.java

in client/servlet/ updated in protected method void runMe() by fixing bug when transferring value of the Boolean flag variable indicating whether !XTandem searching should be performed via a web interface.

comment:29 Changed 13 years ago by olle

(In [3293]) Refs #575. Refs #471. Class/file action/omssa/SaveOMSSAParameterSetStorage.java in client/servlet/ updated by renaming local variables to more proper names:

  1. Protected method void runMe() updated by renaming some local

variables related to a newly created OMSSA parameter set storage item. The previous names were relics from the !XTandem save class on which the design of the OMSSA class was based.

comment:30 Changed 13 years ago by olle

(In [3310]) Refs #564. Refs #471. Listing of OMSSA parameter set storage items updated to display the item selection check box column, making it possible to share a search parameter set to the active project:

  1. Class/file action/omssa/ListOMSSAParameterSetStorage.java

in client/servlet/ updated in public method void runMe() to display the item selection check box column.

  1. Class/file action/execute/ShareToProject.java in client/servlet/

updated in protected method void runMe() when sharing an OMSSA parameter set storage item to to also share the related parameter file item with the same access rights.

comment:31 Changed 13 years ago by olle

(In [3311]) Refs #526. Refs #471. Class/file gui/form/FormFactory.java in client/servlet/ updated for OMSSA search parameters form:

  1. Public method

Form getOMSSAParameterSetForm(OMSSAParameterSet omssaParameterSet, List<Option> enzymeOptionList, List<Option> sequenceLibraryOptionList, List<Option> speciesOptionList, List<Option> fixedModsOptionList, List<Option> variableModsOptionList) updated to the use an option list obtained from the local installation when it is larger or equal in size to the default option list. In other cases the default option list is used.

comment:32 Changed 13 years ago by olle

(In [3322]) Refs #471. Refs #526. Class/file io/OMSSAParameterFileUtil.java in api/core/ updated:

  1. Public method

Hashtable<String, String> fetchModificationAttributeHashtable() for creating modification attribute hash table updated with new entries for keys 166-185 obtained from list returned by command omssacl -ml.

comment:33 Changed 13 years ago by olle

(In [3332]) Refs #526. Refs #471. Class/file gui/form/FormFactory.java in client/servlet/ updated for OMSSA search parameters form:

  1. Public method

Form getOMSSAParameterSetForm(OMSSAParameterSet omssaParameterSet, List<Option> enzymeOptionList, List<Option> sequenceLibraryOptionList, List<Option> speciesOptionList, List<Option> fixedModsOptionList, List<Option> variableModsOptionList) updated with debug output of the sizes of option lists obtained from the local installation and the default option lists, as the relative sizes determine what option list is used for an input parameter.

comment:34 Changed 13 years ago by olle

(In [3379]) Refs #591. Refs #471. Refs #490. First version of support for performing OMSSA search for input mzData files by using data converted to MGF (Mascot Generic Format):

  1. OMSSA search properties template file conf/omssa.properties.in

in client/servlet/ updated with new parameters omssa.web.convert.mzdata_to_mgf and omssa.local.convert.mzdata_to_mgf, indicating if mzData data converted to MGF should be used for OMSSA search. Valid values are "true" and "false", although the software may be lenient and accept other alternatives.

  1. Class/file action/omssa/SearchOMSSA.java in client/servlet/

updated:

  1. New private static constant

Job.ExecutionTime ESTIMATED_EXECUTION_TIME added, set to Job.ExecutionTime.SHORT.

  1. Protected method void runMe() updated by obtaining the values

of new configuration parameters omssa.web.convert.mzdata_to_mgf and omssa.local.convert.mzdata_to_mgf from configuration file omssa.properties, and the relevant one is used as value for new variable Boolean convertMzDataToMgfFlag. If input spectrum file should be converted before OMSSA search, a conversion job is created, if the needed converted file does not already exist. If a conversion job is created, it is set as blocker for the created search job. The value of variable Boolean convertMzDataToMgfFlag is transferred to the created search job via job parameters.

  1. New private method

boolean convertedMzDataToMgfFileExists(DbControl dc, File spectrumFile) added. It calls new private method File fetchConvertedMzDataToMgfFile(DbControl dc, File spectrumFile) to check if a converted mzData to MGF file exists.

  1. New private method

File fetchConvertedMzDataToMgfFile(DbControl dc, File spectrumFile) added. It fetches the converted mzData to MGF file.

  1. New private method

Job createMzDataToMgfConvertJob(DbControl dc, File spectrumFile) added. It creates an mzData file to MGF file conversion job. The conversion job is set to the same estimated execution time ESTIMATED_EXECUTION_TIME as the search job.

  1. Class/file plugins/SearchOMSSAPlugin.java in plugin/ updated:
  2. Private method

void execute(Request request, Response response, ProgressReporter progress) updated by obtaining the value of variable Boolean convertMzDataToMgfFlag from job parameters. The value is transferred to private methods void omssaSearchViaWebInterface(Request request, ...) and void omssaSearchLocal(Request request, ...) via new arguments.

  1. Private method

void omssaSearchViaWebInterface(Request request, ...) updated with new argument Boolean convertMzDataToMgfFlag. If mzData data converted to MGF should be used for search, the spectrum file is obtained by calling new private method File fetchConvertedMzDataToMgfFile(DbControl dc, File spectrumFile), and a note reporting that converted data is used for search is added to the job message string.

  1. Private method

void omssaSearchLocal(Request request, ...) updated with new argument Boolean convertMzDataToMgfFlag. If mzData data converted to MGF should be used for search, the spectrum file is obtained by calling new private method File fetchConvertedMzDataToMgfFile(DbControl dc, File spectrumFile), and a note reporting that converted data is used for search is added to the job message string. When spectrum file data is copied to a temporary local file to be used for the OMSSA search, the file is given the same name as the original input spectrum file, even if converted data from another file is copied.

  1. New private method

File fetchConvertedMzDataToMgfFile(DbControl dc, File spectrumFile) added. It fetches the converted mzData to MGF file.

comment:35 Changed 13 years ago by olle

08/12/09 12:00:01 changed by olle

(In [3395]) Refs #544. Refs #518. Class/file plugins/SearchOMSSAPlugin.java in plugin/ updated to support abortion of an executing job.

  1. New private instance variable boolean jobAborted with public accessor method

boolean isJobAborted() added. Its initial value is false.

  1. New public method void abort() added. It sets the value of boolean instance variable jobAborted to true. This method is part of interface AbortablePluginInterface (it is actually the only method needed to implement the interface).
  1. Private method void omssaSearchLocal(Request request, Response response, ...) updated:
  2. New public method boolean isJobAborted() is called at strategic places in the code to check if an abort notification has been received, and if so, throw an IOException inside a try-catch block that catches the exception.
  3. The call to waitFor() for the process executing the command for the external binary is placed in a try-catch block that catches InterruptedException, in which case abort() is called, destroy() is called for the process executing the command, and an IOException is thrown. c. Throwing an IOException will prevent the boolean variable imported from being set to true, which redirects the execution to the error-handling block. The latter is updated to check if isJobAborted() returns true, in which case response.setAborted() is called, and otherwise response.setError(errorMessage, err).

comment:36 Changed 13 years ago by olle

10/19/09 17:08:55 changed by gregory

(In [3455]) Refs #623. Refs #471. Moved spectrumFileId's from Save button to the form as hidden parameters in SaveOMSSAParameterSetStorage.java.

comment:37 Changed 12 years ago by olle

(In [3997]) Refs #707. Refs #471. First version of support for editing of OMSSA parameter set storage properties:

  1. New class/file action/omssa/ViewOMSSAParameterSetStorageProperties.java

in client/servlet/ added. It implements interface ContextEnabled and adds a "Properties" button to the tool bar of tables listing OMSSAParameterSetStorage items. It is checked that exactly one item is selected, and its id is set to value of new valid parameter Vinteger VOMSSAPARAMETERSETSTORAGEID in new class ViewActiveOMSSAParameterSetStorageProperties, after which action is forwarded to the latter class.

  1. New class/file action/omssa/ViewActiveOMSSAParameterSetStorageProperties.java

in client/servlet added. It obtains the value of new valid parameter Vinteger VOMSSAPARAMETERSETSTORAGEID, and gets the corresponding OMSSAParameterSetStorage item, whose properties are shown using new form OMSSAParameterSetStoragePropertiesForm. A "Save" button is coupled to action link to new class SaveOMSSAParameterSetStorageProperties.

  1. New class/file gui/form/OMSSAParameterSetStoragePropertiesForm.java

in client/servlet/ added. It creates a form for properties of an OMSSAParameterSetStorage item.

  1. New class/file action/omssa/SaveOMSSAParameterSetStorageProperties.java

in client/servlet/ added. It obtains values from the OMSSAParameterSetStoragePropertiesForm form and saves them in the corresponding OMSSAParameterSetStorage item.

  1. English dictionary file locale/en/dictionary in client/servlet/

updated with new string keys.

comment:38 Changed 12 years ago by olle

(In [4191]) Refs #748. Refs #635. Refs #471. Running peptide identification using OMSSA updated to support disabling the functionality via the configuration file:

  1. OMSSA properties template file conf/omssa.properties.in in client/servlet/ updated with new option "omssa.local.disabled", that should be set to "yes" or "no".
  1. Class/file action/file/PerformOMSSASearch.java in client/servlet/ updated to implement the ExtensionDisableInterface. New public method boolean fetchExtensionDisabledFlag() retrieves the disable flag by calling the fetchExtensionDisabledFlag() method of an instance of UseSpectrumFileForOMSSASearchExtension.
  1. Class/file action/file/UseSpectrumFileForOMSSASearchExtension.java in client/servlet/ updated to implement the ExtensionDisableInterface. New public method boolean fetchExtensionDisabledFlag() retrieves the disable flag from the OMSSA properties file. If the properties file is missing, true is returned, while if the disable option is missing, false is returned for backwards compatibility.

comment:39 Changed 11 years ago by olle

(In [4239]) Refs #763. Refs #471. Refs #287. Refs #290. Support of running OMSSA searches from Proteios SE updated by option to import results automatically:

  1. Class/file action/file/UseSpectrumFileForOMSSASearchExtension.java in client/servlet/ updated to add new button to create search job and import results. The selected button should be identified by the value of new valid parameter VBoolean SearchOMSSA.VOMSSAIMPORTRESULTSFLAG being set to true.
  1. Class/file action/omssa/ViewActiveOMSSAParameterSetStorage.java in client/servlet/ updated to extend the form for inspecting/editing parameters when spectrum files have been selected for searching, in which case a new field set "OMSSA - Additional Options not in Parameter Set" will be added, with initially a single check box "Import results", coupled to new valid parameter VBoolean SearchOMSSA.VOMSSAIMPORTRESULTSFLAG. The check box should as default not be checked.
  1. Class/file action/omssa/SaveOMSSAParameterSetStorage.java in client/servlet/ updated to retrieve the value of new valid parameter VBoolean SearchOMSSA.VOMSSAIMPORTRESULTSFLAG and add it as parameter to the forward action link, using the same valid parameter. This ensures that the value is transferred to the action creating the search job after the parameters have been saved.
  1. Class/file action/omssa/SearchOMSSA.java in client/servlet/ updated to retrieve the value of new valid parameter VBoolean SearchOMSSA.VOMSSAIMPORTRESULTSFLAG and transfer it as job parameter to the created search job.
  1. Class/file plugins/SearchOMSSAPlugin.java in plugin/ updated:
    a. Private method void execute(Request request, Response response, ProgressReporter progress) updated to retrieve value of Boolean results import flag from job parameter, and use it as argument when calling updated private method void omssaSearchViaWebInterface(..., Boolean importResultsFlag, Boolean convertMzDataToMgfFlag) or void omssaSearchLocal(..., Boolean importResultsFlag, Boolean convertMzDataToMgfFlag).
    b. Private method void omssaSearchViaWebInterface(...) updated with new argument Boolean importResultsFlag. If the value is true, new private method Job createImportJob(String pluginClassName, String jobName, File inputFile) is called to create an import job to import the results. Job done message updated with info regarding uploaded file and optionally created import job.
    c. Private method void omssaSearchLocal(...) updated with new argument Boolean importResultsFlag. If the value is true, new private method Job createImportJob(String pluginClassName, String jobName, File inputFile) is called to create an import job to import the results. Job done message updated with info regarding uploaded file and optionally created import job.
    d. Private method void uploadFileViaWebInterface(...) updated to File uploadFileViaWebInterface(...) and return the uploaded results file item.
    e. Private method void uploadOMSSAOutputFile(...) updated to File uploadOMSSAOutputFile(...) and return the uploaded results file item.
    f. New private method Job createImportJob(String pluginClassName, String jobName, File inputFile) added. It creates an import job to import results.
  1. English dictionary file locale/en/dictionary in client/servlet/ updated with new entries for various string keys.
  1. Default icon settings file "default" in icons/ in client/servlet/ updated with icon assignments for new string keys.

comment:40 Changed 10 years ago by olle

(In [4368]) Refs #787. Refs #471. When a new OMSSA search parameter set is created, the corresponding parameter file is set to file type FileType.OMSSA_PARAMETERS:

  1. Class/file action/omssa/AddOMSSAParameterSetStorage.java in client/servlet/ is updated in protected method void runMe() to cover the case when a new search parameter set is created using "Save".
  1. Class/file action/omssa/SaveOMSSAParameterSetStorage.java in client/servlet/ is updated in protected method void runMe() to cover the case when a new search parameter set is created using "Save As...".
Note: See TracTickets for help on using tickets.