From 4dfa0f32da64aead4d4269247ac52f01b2df6af0 Mon Sep 17 00:00:00 2001 From: "cmzmasek@gmail.com" Date: Thu, 8 Jan 2015 01:27:09 +0000 Subject: [PATCH] in progress --- forester/java/src/org/forester/test/Test.java | 2 +- .../org/forester/ws/seqdb/SequenceDbWsTools.java | 3 +- .../src/org/forester/ws/seqdb/UniProtEntry.java | 31 +++++++++++++++++--- 3 files changed, 29 insertions(+), 7 deletions(-) diff --git a/forester/java/src/org/forester/test/Test.java b/forester/java/src/org/forester/test/Test.java index d6e508a..607045d 100644 --- a/forester/java/src/org/forester/test/Test.java +++ b/forester/java/src/org/forester/test/Test.java @@ -139,7 +139,7 @@ public final class Test { private final static String PATH_TO_TEST_DATA = System.getProperty( "user.dir" ) + ForesterUtil.getFileSeparator() + "test_data" + ForesterUtil.getFileSeparator(); - private final static boolean PERFORM_DB_TESTS = false; + private final static boolean PERFORM_DB_TESTS = true; private static final boolean PERFORM_WEB_TREE_ACCESS = true; private static final String PHYLOXML_LOCAL_XSD = PATH_TO_RESOURCES + "phyloxml_schema/" + ForesterConstants.PHYLO_XML_VERSION + "/" diff --git a/forester/java/src/org/forester/ws/seqdb/SequenceDbWsTools.java b/forester/java/src/org/forester/ws/seqdb/SequenceDbWsTools.java index 9106c38..c2d2bd5 100644 --- a/forester/java/src/org/forester/ws/seqdb/SequenceDbWsTools.java +++ b/forester/java/src/org/forester/ws/seqdb/SequenceDbWsTools.java @@ -300,8 +300,7 @@ public final class SequenceDbWsTools { final int i_a = target.indexOf( a ); final int i_b = target.indexOf( b ); if ( ( i_a < 0 ) || ( i_b < i_a ) ) { - throw new IllegalArgumentException( "attempt to extract from \"" + target + "\" between \"" + a - + "\" and \"" + b + "\"" ); + return ""; } return target.substring( i_a + a.length(), i_b ).trim(); } diff --git a/forester/java/src/org/forester/ws/seqdb/UniProtEntry.java b/forester/java/src/org/forester/ws/seqdb/UniProtEntry.java index a3ea1e3..57652e5 100644 --- a/forester/java/src/org/forester/ws/seqdb/UniProtEntry.java +++ b/forester/java/src/org/forester/ws/seqdb/UniProtEntry.java @@ -190,20 +190,43 @@ public final class UniProtEntry implements SequenceDatabaseEntry { } else if ( line.startsWith( "DE" ) && ForesterUtil.isEmpty( e.getSequenceName() ) ) { if ( ( line.indexOf( "RecName:" ) > 0 ) && ( line.indexOf( "Full=" ) > 0 ) ) { - e.setSequenceName( SequenceDbWsTools.extractFromTo( line, "Full=", ";" ) ); + if ( line.indexOf( "{" ) > 0 ) { + e.setSequenceName( SequenceDbWsTools.extractFromTo( line, "Full=", "{" ) ); + } + else { + e.setSequenceName( SequenceDbWsTools.extractFromTo( line, "Full=", ";" ) ); + } } else if ( ( line.indexOf( "SubName:" ) > 0 ) && ( line.indexOf( "Full=" ) > 0 ) ) { - e.setSequenceName( SequenceDbWsTools.extractFromTo( line, "Full=", ";" ) ); + if ( line.indexOf( "{" ) > 0 ) { + e.setSequenceName( SequenceDbWsTools.extractFromTo( line, "Full=", "{" ) ); + } + else { + e.setSequenceName( SequenceDbWsTools.extractFromTo( line, "Full=", ";" ) ); + } + } } else if ( line.startsWith( "DE" ) && ForesterUtil.isEmpty( e.getSequenceSymbol() ) ) { + if ( line.indexOf( "Short=" ) > 0 ) { - e.setSequenceSymbol( SequenceDbWsTools.extractFromTo( line, "Short=", ";" ) ); + if ( line.indexOf( "{" ) > 0 ) { + e.setSequenceSymbol( SequenceDbWsTools.extractFromTo( line, "Short=", "{" ) ); + } + else { + e.setSequenceSymbol( SequenceDbWsTools.extractFromTo( line, "Short=", ";" ) ); + } + } } else if ( line.startsWith( "GN" ) && ForesterUtil.isEmpty( e.getGeneName() ) ) { if ( line.indexOf( "Name=" ) > 0 ) { - e.setGeneName( SequenceDbWsTools.extractFromTo( line, "Name=", ";" ) ); + if ( line.indexOf( "{" ) > 0 ) { + e.setGeneName( SequenceDbWsTools.extractFromTo( line, "Name=", "{" ) ); + } + else { + e.setGeneName( SequenceDbWsTools.extractFromTo( line, "Name=", ";" ) ); + } } } else if ( line.startsWith( "DR" ) ) { -- 1.7.10.2