X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2Fxdb%2Fembl%2FEmblFile.java;fp=src%2Fjalview%2Fdatamodel%2Fxdb%2Fembl%2FEmblFile.java;h=0000000000000000000000000000000000000000;hb=aace9d05c0870c703bfdfb28c1608213cee019bf;hp=8a32c130c9230c6ac7a4e4e5fa52700200fda18a;hpb=2a3bac30ae8290e912eb7ffe7ff7ec700b6cfaac;p=jalview.git diff --git a/src/jalview/datamodel/xdb/embl/EmblFile.java b/src/jalview/datamodel/xdb/embl/EmblFile.java deleted file mode 100644 index 8a32c13..0000000 --- a/src/jalview/datamodel/xdb/embl/EmblFile.java +++ /dev/null @@ -1,203 +0,0 @@ -/* - * 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 . - * The Jalview Authors are detailed in the 'AUTHORS' file. - */ -package jalview.datamodel.xdb.embl; - -import jalview.datamodel.DBRefEntry; -import jalview.ws.dbsources.Uniprot; - -import java.io.File; -import java.io.FileReader; -import java.io.PrintWriter; -import java.io.Reader; -import java.util.Vector; - -import org.exolab.castor.mapping.Mapping; -import org.exolab.castor.xml.Unmarshaller; - -/** - * Data model for entries returned from an EMBL query, as marshalled by a Castor - * binding file - * - * For example: http://www.ebi.ac.uk/Tools/dbfetch/dbfetch/embl/x53828/emblxml - * - * @see embl_mapping.xml - */ -public class EmblFile -{ - Vector entries; - - Vector errors; - - String text; - - /** - * @return the entries - */ - public Vector getEntries() - { - return entries; - } - - /** - * @param entries - * the entries to set - */ - public void setEntries(Vector entries) - { - this.entries = entries; - } - - /** - * @return the errors - */ - public Vector getErrors() - { - return errors; - } - - /** - * @param errors - * the errors to set - */ - public void setErrors(Vector errors) - { - this.errors = errors; - } - - /** - * Parse an EmblXML file into an EmblFile object - * - * @param file - * @return parsed EmblXML or null if exceptions were raised - */ - public static EmblFile getEmblFile(File file) - { - if (file == null) - { - return null; - } - try - { - return EmblFile.getEmblFile(new FileReader(file)); - } catch (Exception e) - { - System.err.println("Exception whilst reading EMBLfile from " + file); - e.printStackTrace(System.err); - } - return null; - } - - public static EmblFile getEmblFile(Reader file) - { - EmblFile record = new EmblFile(); - try - { - // 1. Load the mapping information from the file - Mapping map = new Mapping(record.getClass().getClassLoader()); - - java.net.URL url = record.getClass().getResource("/embl_mapping.xml"); - map.loadMapping(url); - - // 2. Unmarshal the data - Unmarshaller unmar = new Unmarshaller(record); - try - { - // uncomment to DEBUG EMBLFile reading - if (jalview.bin.Cache - .getDefault(jalview.bin.Cache.CASTORLOGLEVEL, "debug") - .equalsIgnoreCase("DEBUG")) - { - unmar.setDebug(jalview.bin.Cache.log.isDebugEnabled()); - } - } catch (Exception e) - { - } - unmar.setIgnoreExtraElements(true); - unmar.setIgnoreExtraAttributes(true); - unmar.setMapping(map); - unmar.setLogWriter(new PrintWriter(System.out)); - record = (EmblFile) unmar.unmarshal(file); - - canonicaliseDbRefs(record); - } catch (Exception e) - { - e.printStackTrace(System.err); - record = null; - } - - return record; - } - - /** - * Change blank version to "0" in any DBRefEntry, to ensure consistent - * comparison with other DBRefEntry in Jalview - * - * @param record - * @see Uniprot#getDbVersion - */ - static void canonicaliseDbRefs(EmblFile record) - { - if (record.getEntries() == null) - { - return; - } - for (EmblEntry entry : record.getEntries()) - { - if (entry.getDbRefs() != null) - { - for (DBRefEntry dbref : entry.getDbRefs()) - { - if ("".equals(dbref.getVersion())) - { - dbref.setVersion("0"); - } - } - } - - if (entry.getFeatures() != null) - { - for (EmblFeature feature : entry.getFeatures()) - { - if (feature.getDbRefs() != null) - { - for (DBRefEntry dbref : feature.getDbRefs()) - { - if ("".equals(dbref.getVersion())) - { - dbref.setVersion("0"); - } - } - } - } - } - } - } - - public String getText() - { - return text; - } - - public void setText(String text) - { - this.text = text; - } -}