Skip to content

Commit 9721a9b

Browse files
committed
initial commit as open-source software
0 parents  commit 9721a9b

188 files changed

Lines changed: 29217 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
.classpath
2+
.project
3+
.settings
4+
/distrib
5+
/lib
6+
/bin
7+
**/.DS_Store

LICENSE.txt

Lines changed: 661 additions & 0 deletions
Large diffs are not rendered by default.

NOTICE.txt

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
This product includes software developed by:
2+
3+
The Plealog Team (http://www.plealog.com)
4+
Plealog license is here: http://www.apache.org/licenses/LICENSE-2.0
5+
It targets: jgaf
6+
Plealog license is here: https://www.gnu.org/licenses/agpl-3.0.txt
7+
It targets: pb-core, pb-ui, pb-filter, pb-filter-ui, pb-seqvertor, hge
8+
9+
The Apache Software Foundation (http://www.apache.org/)
10+
Apache license is here: http://www.apache.org/licenses/LICENSE-2.0
11+
It targets: commons-io, commons-lang, commons-logging, xerces, xmlParser
12+
13+
The Castor Framework Team (http://castor-data-binding.github.io/castor)
14+
Castor license is here: http://castor-data-binding.github.io/castor/about/licenses.html
15+
It targets: castor-xml
16+
17+
The XStream Framework Team (http://x-stream.github.io/):
18+
XStream License is here: http://x-stream.github.io/license.html
19+
It targets: xstream
20+
21+
The JGoodies Forms Framework Team (http://www.jgoodies.com/freeware/libraries/forms/).
22+
JGoodies license is here: https://opensource.org/licenses/bsd-license.html
23+
It targets: forms
24+
25+
The Biojava Team (http://biojava.org)
26+
Biojava license is here: http://www.gnu.org/copyleft/lesser.html
27+
It targets: biojava
28+
29+
The JMol Team (http://jmol.sourceforge.net/)
30+
JMol license is here: https://opensource.org/licenses/LGPL-2.1
31+
It targets: JMol

README.md

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
#BioDocumentViewer
2+
3+
[![License](https://img.shields.io/badge/license-Affero%20GPL%203.0-blue.svg)](https://www.gnu.org/licenses/agpl-3.0.txt)
4+
5+
##Introduction
6+
7+
BioDocumentViewer is a software enabling to query, browse, fetch and retrieve sequences from NCBI and EBI public servers.
8+
9+
The software has been made to facilitate the use of public web services so that it is easy to retrieve set of sequences in batch mode.
10+
11+
BioDocumentViewer also provides you with viewing capabilities to display annotated sequences and 3D structures.
12+
13+
##Requirements
14+
15+
Use a [Java Virtual Machine](http://www.oracle.com/technetwork/java/javase/downloads/index.html) 1.7 (or above) from Oracle.
16+
17+
*Not tested with any other JVM providers but Oracle... so there is no guarantee that the software will work as expected if not using Oracle's JVM.*
18+
19+
##Working with the binary release
20+
21+
The most easy way to use BioDocViewer Tool consists in downloading an official release. It is made of a single Java binary archive file:
22+
23+
biodocviewer-x.y.z.jar
24+
25+
It is available from this Github page: check [Releases] tab and download the latest release.
26+
27+
We invite all users to start working with that tool, as explained in the next section.
28+
29+
*Notice for developers:* this unique JAR file is absolutely not intended to be embedded within any other applications since it contains all the dependencies (third-party libraries) into a single large file. So, if you want to include BioDocViewer into some other softwares, start from its source code (git clone).
30+
31+
##User manual
32+
33+
###Start the graphical interface
34+
35+
After retrieving an official release of the BioDocumentViewer (BDV) software (see above section), you can start it quite easily:
36+
37+
java -jar biodocviewer-x.y.z.jar
38+
39+
By default, BDV uses [NCBI Entrez eUtils services](https://www.ncbi.nlm.nih.gov/books/NBK25499/) (NCBI, Bethesda, USA) to let you query and retrieve protein and nucleotide sequences, 3D structures and taxonomy information.
40+
41+
However, you can also ask BDV to use [EB-eye Search services](https://www.ebi.ac.uk/ebisearch/) (EBI, Hinxton, UK) as follows:
42+
43+
java -DV_PROVIDER=EBI -jar biodocviewer-x.y.z.jar
44+
45+
JVM argument "V_PROVIDER" accepts one of: NCBI (default) or EBI.
46+
47+
###Make and run a query
48+
49+
Whatever the data provider you use, NCBI or EBI, the software is quite easy to use:
50+
51+
* select a bank to query
52+
* click on the [Go...] button
53+
* setup the criteria in the query dialogue box
54+
* click on the [Ok] button... and wait a little bit to get an answer from the provider
55+
56+
The DocumentNavigator is displayed as soon as you get a valid answer from the bank provider, i.e. your query matches some entries.
57+
58+
Use the DocumentNavigator:
59+
60+
* to navigate through entries; use [<] [>] buttons the the top right corner
61+
* to display an entry in the Sequence or 3D Structure viewer
62+
* to fetch entries as Fasta of plain format (e.g. Genbk, EMBL, Uniprot, etc.)
63+
64+
###NCBI/EBI recommendations
65+
66+
**BDV strictly respects the recommendations of NCBI and EBI for the use or their public resources**, especially when retrieving sequences in batch mode.
67+
68+
Basically:
69+
70+
* keep in mind that you are using resources that are shared by many users around the world
71+
* do not overload NCBI/EBI remote serves
72+
* retrieve sequences in batch mode using timers
73+
* provide your email address: NCBI or EBI can get in touch with you in case they consider your are querying too much remote services.
74+
75+
More about these recommendations: [here for NCBI](https://www.ncbi.nlm.nih.gov/home/about/policies.shtml#scripting), [here for EBI](http://www.ebi.ac.uk/Tools/webservices/help/faq).
76+
77+
###Extended configuration
78+
79+
BDV accepts the following optional JVM arguments on the command line:
80+
81+
* V_DEBUG. Accepts one of: true, false. Default is false.
82+
* V_PROVIDER. Accepts one of: NCBI, EBI. Default is NCBI.
83+
* V_EMAIL. Your email address; see "NCBI/EBI recommendations" section, above. Default is none, so BDV will ask you that information at runtime, the first time you use the software.
84+
85+
You use all these arguments as follows:
86+
87+
java -DV_PROVIDER=EBI -DV_DEBUG=true ... -jar biodocviewer-x.y.z.jar
88+
89+
###Log viewer
90+
91+
BDV uses a logging framework to monitor the software... this can be quite useful when you experience NCBI/EBI connections failure.
92+
93+
To access the log messages, simply click on the little icon located on the top right corner of BDV main frame, next to [Documents] pulldown menu.
94+
95+
By default, BDV uses "info" log level, which does not provide much messages. However, you are advised to start BDV with "-DV_DEBUG=true" to get more log messages, which can help to diagnose problems.
96+
97+
##License and dependencies
98+
99+
BioDocViewer itself is released under the GNU Affero General Public License, Version 3.0. [AGPL](https://www.gnu.org/licenses/agpl-3.0.txt)
100+
101+
BioDocViewer depends on several thrid-party libraries as stated in the NOTICE.txt file provided with this project.
102+
103+
--
104+
(c) 2007-2016 - Patrick G. Durand

build.xml

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
3+
<!-- ============================================================= -->
4+
<project name="Document Viewer Tool" default="help" basedir=".">
5+
6+
<property file="${basedir}/src/bzh/plealog/bioinfo/docviewer/ui/version.properties"/>
7+
8+
<property name="pbc.libName" value="${prg.name}" />
9+
<property name="pbc.LibVersion" value="${prg.version}" />
10+
11+
<property name="compile.optimize" value="on" />
12+
<property name="compile.debug" value="off" />
13+
14+
<property name="src" value="${basedir}/src" />
15+
<property name="jar" value="${basedir}/jar" />
16+
17+
<property name="distrib" value="${basedir}/distrib" />
18+
<property name="Dlib" value="${distrib}/lib" />
19+
<property name="Dsrc" value="${distrib}/src" />
20+
<property name="Ddoc" value="${distrib}/doc" />
21+
<property name="Ddoc.api" value="${Ddoc}/api" />
22+
23+
<property name="pbc.libJar" value="${distrib}/${pbc.libName}-${pbc.LibVersion}.jar"/>
24+
25+
<path id="class.path">
26+
<pathelement path="${classpath}"/>
27+
<fileset dir="${jar}">
28+
<include name="**/*.jar"/>
29+
</fileset>
30+
<pathelement location="${Dlib}"/>
31+
</path>
32+
33+
<!-- ============================================================= -->
34+
<target name="help">
35+
<echo>Ant task to handle Document Viewer Tool project.</echo>
36+
<echo/>
37+
<echo> compile: compile the code.</echo>
38+
<echo> makedistrib: compile and make release JAR of the DocViewer system.</echo>
39+
</target>
40+
41+
<!-- ============================================================= -->
42+
<target name="prepare">
43+
<delete dir="${distrib}"/>
44+
<mkdir dir="${Dlib}"/>
45+
<mkdir dir="${Dsrc}"/>
46+
<mkdir dir="${Ddoc.api}"/>
47+
</target>
48+
49+
<!-- ============================================================= -->
50+
<target name="compile" depends="prepare">
51+
<copy todir="${Dsrc}">
52+
<fileset dir="${src}">
53+
<include name="bzh/plealog/bioinfo/**"/>
54+
</fileset>
55+
</copy>
56+
<javac srcdir="${Dsrc}"
57+
destdir="${Dlib}"
58+
classpathref="class.path"
59+
debug="${compile.debug}"
60+
optimize="${compile.optimize}"
61+
>
62+
</javac>
63+
<copy todir="${Dlib}/bzh/plealog/bioinfo/">
64+
<fileset dir="${Dsrc}/bzh/plealog/bioinfo/">
65+
<include name="**/*properties"/>
66+
<include name="**/*messages"/>
67+
<include name="**/*cfg"/>
68+
<include name="**/*gif"/>
69+
<include name="**/*png"/>
70+
</fileset>
71+
</copy>
72+
</target>
73+
74+
<!-- ============================================================= -->
75+
<target name="makedistrib" depends="compile" >
76+
<jar destfile="${pbc.libJar}">
77+
<fileset dir="${Dlib}">
78+
<include name="bzh/plealog/bioinfo/**"/>
79+
</fileset>
80+
<restrict>
81+
<name name="**/*"/>
82+
<archives>
83+
<zips>
84+
<fileset dir="jar" includes="**/*.jar"/>
85+
</zips>
86+
</archives>
87+
</restrict>
88+
<manifest>
89+
<attribute name="Main-Class" value="bzh.plealog.bioinfo.docviewer.DocumentViewer"/>
90+
<attribute name="Built-By" value="Patrick G. Durand"/>
91+
<attribute name="Title" value="${prg.name}"/>
92+
<attribute name="Version" value="${prg.version}"/>
93+
</manifest>
94+
</jar>
95+
<jar destfile="${pbc.libJar}" update="true">
96+
<zipfileset dir="${basedir}" includes="*.txt"/>
97+
</jar>
98+
</target>
99+
100+
</project>

conf/README.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
You can place here ncbiQuery.cfg and/or ebiQuery.cfg.
2+
3+
Then start application using JVM argument: -DDV_CONF=./conf

0 commit comments

Comments
 (0)