--- /dev/null
+JabRef for Debian
+-----------------
+
+Please note that JabRef needs OpenJDK (or Sun Java 6).
+
+Starting with version 2.2-01-4 /usr/bin/jabref should find and use your
+installed OpenJDK or Sun Java virtual machine.
+
+In case it doesn't find any of them it falls back to using another JVM it
+finds on your system.
+
+If you want to override this selection mechanism start JabRef with
+ JAVA_HOME=/path/to/your/JVM jabref
+
+ -- gregor herrmann <gregoa@debian.org> Fri, 21 Nov 2008 21:27:10 +0100
--- /dev/null
+jabref (2.10~beta1+ds-2) unstable; urgency=low
+
+ * Upload to unstable.
+ * Improve .desktop file. Thanks to lintian and desktop-file-validate.
+
+ -- gregor herrmann <gregoa@debian.org> Sun, 05 May 2013 21:20:50 +0200
+
+jabref (2.10~beta1+ds-1) experimental; urgency=low
+
+ * New upstream release.
+ * Refresh existing patches.
+ * Add a new patch to add back a removed file.
+ * Add a new patch to fix JComboBox errors.
+ * Update filenames in debian/jabref.{install,links}.
+ * Repacking framework: also remove the buildlib, gradle, osx directories.
+ * debian/{rules,control}: activate unit tests.
+ * Update debian/repack.stub.
+ * debian/copyright:
+ - add info about debian/repack.stub
+ - update years, add info about new files
+ - update years of packaging copyright
+ * Install original JabRef icon file, and use it in the .desktop file.
+ (LP: #1155559)
+
+ -- gregor herrmann <gregoa@debian.org> Sat, 30 Mar 2013 18:14:19 +0100
+
+jabref (2.9+r+ds-1) experimental; urgency=low
+
+ * New upstream release:
+ In fact, this is now the 2.9 release, the version from last week was a
+ pre-release that SourceForge shouldn't have shown. The only changes are in
+ documentation and internationalization.
+ * debian/copyright: add information about mrDlib_jayatana.patch.
+
+ -- gregor herrmann <gregoa@debian.org> Mon, 17 Dec 2012 20:25:13 +0100
+
+jabref (2.9+ds-1) experimental; urgency=low
+
+ * New upstream release.
+ * Update filenames in debian/jabref.{install,links}.
+
+ -- gregor herrmann <gregoa@debian.org> Fri, 14 Dec 2012 21:06:39 +0100
+
+jabref (2.9~beta2+ds-1) experimental; urgency=low
+
+ * New upstream release.
+ (Closes: #644530) (LP: #884016)
+ * Update filenames in debian/jabref.{install,links}.
+ * debian/control:
+ - Update dependency on JVM to "openjdk-7-jre | java6-runtime". Using
+ default-jre is probably no good idea, since this installs gcj-jre on
+ several architectures. Update wrapper script as well.
+ Thanks to Torquil Macdonald Sørensen for the bug report.
+ (Closes: #689253)
+ - Add new build dependencies / versions.
+ Update wrapper script accordingly.
+ - Remove versions from (build) dependencies that are already satisfied in
+ stable.
+ - Bump Standards-Version to 3.9.4 (no changes).
+ - Create a jabref-plugin-oo transitional dummy package.
+ The former LibreOffice plugin is now part of JabRef proper.
+ * debian/patches:
+ - Refresh and rename patch debian_libs.patch.
+ - New patch: disable mrDlib and ayatana features until we have all
+ dependencies in Debian. Thanks to Oliver Kopp (upstream) for providing a
+ Debian branch.
+ - Remove other patches, applied upstream or obsolete.
+ - Remove debian/README.source which referred to a removed patch.
+ * debian/copyright:
+ - Use Copyright Format 1.0.
+ - Update years of upstream and packaging copyright.
+ - Add new third-party copyright holders.
+
+ -- gregor herrmann <gregoa@debian.org> Mon, 26 Nov 2012 21:06:14 +0100
+
+jabref (2.7~beta1+ds-6) unstable; urgency=low
+
+ * Update Vcs-* headers.
+ * Add patch 09_looks2.5.patch to build against libjgoodies-looks-java >=
+ 2.5.0.
+ * Drop patch 01_free_javac.patch, not needed anymore. Make (build)
+ dependency on libjgoodies-looks-java versioned.
+ * Switch to "3.0 (quilt)" source format. Remove quilt framework, update
+ debian/README.source.
+ * Drop get-orig-source target, uscan and git-import-orig work fine.
+
+ -- gregor herrmann <gregoa@debian.org> Fri, 10 Feb 2012 21:37:59 +0100
+
+jabref (2.7~beta1+ds-5) unstable; urgency=low
+
+ * New patch 08_doubleextensions.patch, kindly backported and provided by
+ upstream: improve handling of linked files with double extensions: file
+ types with a double extension are new recognized automatically when a new
+ link is added manually, or when a link is added automatically and
+ clicked-upon once, after defining the file type in the options
+ (closes: #626582).
+ * Bump debhelper compatibility level to 8.
+ * Set Standards-Version to 3.9.2 (no changes).
+ * Change order of arguments for dh in debian/rules.
+
+ -- gregor herrmann <gregoa@debian.org> Fri, 01 Jul 2011 03:08:59 +0200
+
+jabref (2.7~beta1+ds-4) unstable; urgency=low
+
+ [ tony mancill ]
+ * Add patch to build against libpdfbox-1.5.0+dfsg.
+
+ [ gregor herrmann ]
+ * Remove version from java-wrappers dependency, already satisfied in
+ oldstable.
+ * debian/copyright: update years of packaging copyright.
+
+ -- gregor herrmann <gregoa@debian.org> Thu, 31 Mar 2011 17:15:22 +0200
+
+jabref (2.7~beta1+ds-3) unstable; urgency=low
+
+ * Edit jabref wrapper script to resolve libjgoodies-common-java jar.
+ Add libjgoodies-common-java to Depends. (Closes: #614506)
+ * Change "looks" in wrapper script to "jgoodies-looks"
+
+ -- tony mancill <tmancill@debian.org> Mon, 21 Feb 2011 20:04:55 -0800
+
+jabref (2.7~beta1+ds-2) unstable; urgency=low
+
+ * Upload to unstable.
+
+ -- gregor herrmann <gregoa@debian.org> Mon, 07 Feb 2011 18:45:19 +0100
+
+jabref (2.7~beta1+ds-1) experimental; urgency=low
+
+ * New upstream release.
+ * debian/control: uniform spelling of BibTex; thanks to Erik Esterer for the
+ bug report and patch (closes: #596946).
+ * Refresh patches.
+ * Update name of jar file in debian/jabref.{install,links}.
+ * Update debian/copyright (year of upstream copyright, formatting).
+
+ -- gregor herrmann <gregoa@debian.org> Tue, 18 Jan 2011 18:42:33 +0100
+
+jabref (2.6+ds-4) unstable; urgency=low
+
+ [ gregor herrmann ]
+ * 02_libs.patch: add antlr3-runtime.jar to classpath.
+ * Make build and runtime dependency on antlr3 versioned.
+ * Set Standards-Version to 3.9.1 (no changes).
+
+ [ tony mancill ]
+ * delete 05_antlr.patch
+ * add 05_antlrv32.patch: include new BstParser/Lexer classes generated
+ by antlr 3.2. (Closes: #591124)
+ * Update README.source with information regarding regeneration of
+ BstParser and BstLexer classes.
+
+ -- tony mancill <tmancill@debian.org> Tue, 03 Aug 2010 19:41:44 -0700
+
+jabref (2.6+ds-3) unstable; urgency=low
+
+ * Improve wrapper script to avoid unnecessary warnings; thanks to Martin
+ Lutz for the bug report and to Onkar Shinde for the instructions
+ (closes: #586781).
+
+ -- gregor herrmann <gregoa@debian.org> Tue, 22 Jun 2010 20:27:14 +0200
+
+jabref (2.6+ds-2) unstable; urgency=low
+
+ * debian/control: add "Recommends: xdg-utils"; thanks to Vincent Fourmond
+ for the bug report (closes: #579346). Change xpdf to xpdf-reader in
+ Suggests.
+
+ -- gregor herrmann <gregoa@debian.org> Tue, 27 Apr 2010 16:49:34 +0200
+
+jabref (2.6+ds-1) unstable; urgency=low
+
+ * New upstream release.
+ * Adapt name of jar file in debian/jabref.{install,links}.
+ * Remove patch 03_external_apps.patch, refresh patches 02_libs.patch and
+ 06_BibtexEntry.patch.
+ * Add a debian/source/format file.
+
+ -- gregor herrmann <gregoa@debian.org> Thu, 15 Apr 2010 20:03:46 +0200
+
+jabref (2.6~beta3+ds-1) unstable; urgency=low
+
+ * New upstream release:
+ - debian/repack.local: don't remove the three "offending" files,
+ two were removed upstream, the third was re-licensed
+ - adjust debian/copyright accordingly
+ - change version suffix to +ds since we are not repackaging for license
+ issues anymore
+ - remove patches 07_PreviewPanel.patch and 08_HighlightFilter.patch,
+ applied upstream
+ - refresh patches 03_external_apps.patch and 06_BibtexEntry.patch
+ - adapt name of jar file in debian/jabref.{install,links}
+ * Add jabref-plugin-oo to Suggests:.
+
+ -- gregor herrmann <gregoa@debian.org> Mon, 15 Mar 2010 21:42:25 +0100
+
+jabref (2.6~beta2+dfsg-2) unstable; urgency=low
+
+ * Add back sun-java6-jre as an alternative runtime dependency.
+ * debian/control: change build dependency from default-jdk-builddep to
+ default-jdk.
+ * Set Standards-Version to 3.8.4 (no changes).
+
+ -- gregor herrmann <gregoa@debian.org> Mon, 08 Feb 2010 21:37:58 +0100
+
+jabref (2.6~beta2+dfsg-1) unstable; urgency=low
+
+ [ gregor herrmann ]
+ * Move from contrib to main since all build and runtime dependencies are in
+ main now (closes: #548180).
+ * Remove sun-java6-jre from Depends.
+ * Repack upstream tarball to remove the sourceless pre-compiled libraries
+ and some files without (free) licenses.
+ * Add HighlightFilter patch to work without HighlightFilter.java.
+ * debian/rules: override dh_auto_clean, `ant clean' fails with an unpatched
+ build.xml after removing lib/. Move ant from B-D to B-D-I since it's not
+ used in the clean target anymore.
+ * debian/clean: remove build.number and src/resource/build.properties, they
+ get re-generated on each build.
+ * Install reportbug presubj file via dh_bugfiles.
+ * debian/copyright: update formatting and list of third-party copyright
+ holders.
+
+ [ tony mancill ]
+ * Add PreviewPanel patch to remove dependency on DocumentPrinter class.
+
+ -- gregor herrmann <gregoa@debian.org> Mon, 18 Jan 2010 18:35:50 +0100
+
+jabref (2.6~beta2-1) unstable; urgency=low
+
+ * Remove alternative dependency on sun-java5-jre which was removed from the
+ archive. Also adjust README.Debian and /usr/bin/jabref.
+ * New upstream beta release:
+ - fixes "allow to disable (re)storing of current tab for entries"
+ (closes: #447767)
+ - thanks again to Philip Rinn for his help with the upgrade
+ * debian/copyright: add new developer.
+ * Refresh patches 01_free_javac.patch and 06_BibtexEntry.patch.
+ * Adjust debian/jabref.links and debian/jabref.install to new jar file.
+ * Simplify debian/jabref.dirs.
+ * Add a presubj fragment for reportbug.
+
+ -- gregor herrmann <gregoa@debian.org> Tue, 01 Dec 2009 18:52:51 +0100
+
+jabref (2.5-1) unstable; urgency=low
+
+ * New upstream release (closes: #497897, LP: #301327). This version also
+ fixes the following Debian bugs:
+ - "field data lost when switching tabs without leaving field first"
+ (closes: #498926)
+ - "jumps back to previously edited entry when clicking title field"
+ (closes: #447772)
+ - "File type detection of downloaded files should use MIME type"
+ (closes: #448028)
+ - "autocompletion for crossref fields"
+ (closes: #481503)
+ - "text selection visual bug" (closes: #527323)
+ - "auto-completion in author field wrong" (closes: #442476)
+ * Add new build and runtime dependencies: libmysql-java,
+ libcommons-logging-java, libjpf-java, libjpfcodegen-java, velocity.
+ * Switch to debhelper 7; adjust debian/{compat,control,rules}.
+ * Rename a couple of files in debian/ to debian/jabref.foo for consistency.
+ * Adjust debian/jabref.links and debian/jabref.install to new jar file.
+ * Update /usr/bin/jabref to use the new libs.
+ * Update manpage.
+ * Update package/program description in debian/control and in jabref.1
+ according to the upstream README.
+ * Update debian/copyright.
+ * Patches:
+ - update 01_free_javac.patch, 02_libs.patch, 03_external_apps.patch,
+ 05_antlr.patch
+ - remove 04_HONOR_DISPLAY_PROPERTIES.patch, not needed any more
+ - remove 06_forms_groups.patch, applied upstream
+ - add new 06_BibtexEntry.patch
+ * Set Standards-Version to 3.8.3.
+ * Thanks a lot to Philip Rinn for his great help in preparing this release,
+ especially with the patches, dependencies, and the wrapper script!
+
+ -- gregor herrmann <gregoa@debian.org> Sun, 13 Sep 2009 22:01:22 +0200
+
+jabref (2.3.1-6) unstable; urgency=low
+
+ * debian/watch: back to the redirector at qa.debian.org.
+ * Use java-wrappers instead of the hand-crafted wrapper script; thanks to
+ Vincent Fourmond for the patch (closes: #506219).
+ * Update README.Debian: mention supported Java virtual machines and
+ JAVA_HOME (cf. LP: #258198).
+ * debian/rules: set JAVA_HOME=/usr/lib/jvm/default-java.
+
+ -- gregor herrmann <gregoa@debian.org> Fri, 21 Nov 2008 21:46:28 +0100
+
+jabref (2.3.1-5) unstable; urgency=low
+
+ * Change runtime dependency from "sun-java6-jre | sun-java5-jre" to
+ "openjdk-6-jre | sun-java6-jre | sun-java5-jre" (closes: #383006).
+ [Jabref stays in contrib because it (build) depends on libspin-java and
+ libpdfbox-java which are in contrib because they build depend on packages
+ in contrib/non-free.]
+ * debian/copyright: wrap long line.
+
+ -- gregor herrmann <gregoa@debian.org> Wed, 16 Jul 2008 22:24:25 +0200
+
+jabref (2.3.1-4) unstable; urgency=low
+
+ * Replace /usr/lib/jvm/java-7-icedtea with /usr/lib/jvm/java-6-openjdk in
+ wrapper script. Doesn't work on Debian yet but helps Ubuntu users (cf.
+ LP: #225450 and LP: #203636).
+ * debian/watch: use sourceforge URL directly instead of the redirector
+ at qa.debian.org.
+ * Switch patch system from dpatch to quilt.
+ * debian/rules: remove configure{,-stamp} targets.
+ * Set Standards-Version to 3.8.0; add debian/README.source to document the
+ patch system.
+ * Add patch 06_forms_groups.patch to fix an exception in the groups
+ interface; thanks to Monkey D. Luffy for the bug report and to Philipp
+ Spitzer for helping me to produce a patch (closes: #487481).
+
+ -- gregor herrmann <gregoa@debian.org> Wed, 02 Jul 2008 20:07:03 +0200
+
+jabref (2.3.1-3) unstable; urgency=low
+
+ * Build against Debian libraries instead of pre-packaged ones
+ (closes: #389068):
+ - adapt and reactivate patch 02_libs.dpatch: use libraries in
+ /usr/share/java for building and don't include them in jabref.jar
+ - add needed jars to Classpath in the wrapper script
+ - add patch 05_antlr.dpatch: antlr3 in Debian is newer than the
+ pre-packaged jar
+ - add necessary packages to Build-Depends-Indep and Depends
+ These changes are either taken directly from Gerardo Curiel's patch or
+ based on them -- thanks a lot!
+ * debian/watch: add uversionmangle to cope with upstream b(eta) releases.
+ * Move wrapper script in source package to debian/jabref-wrapper and
+ install it from debian/rules.
+ * Remove debian docs and install upstream README directly from
+ debian/rules.
+ * debian/control:
+ - change my email address
+ - replace java-gcj-compat-dev with default-jdk-builddep in
+ Build-Depends-Indep
+
+ -- gregor herrmann <gregoa@debian.org> Tue, 22 Apr 2008 21:33:33 +0200
+
+jabref (2.3.1-2) unstable; urgency=low
+
+ * Change pdfviewer to pdf-viewer in Suggests:.
+ * Set Standards-Version to 3.7.3 (no changes required).
+ * debian/rules: explicitly set JAVA_HOME.
+ * Only set JAVA to $JAVA_HOME/jre/bin/java if JAVA_HOME is not empty;
+ thanks to Michael Piefel for the hint.
+ * Set debhelper compatibility level to 6.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 11 Feb 2008 17:00:15 +0100
+
+jabref (2.3.1-1) unstable; urgency=low
+
+ * New upstream release.
+ * Adapt referenced filename in debian/links and debian/install.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 30 Nov 2007 14:28:00 +0100
+
+jabref (2.3-2) unstable; urgency=low
+
+ * Add /usr/lib/jvm/java-7-icedtea to wrapper script. Doesn't work on
+ Debian yet but helps Ubuntu users (TODO: add dependency on
+ icedtea-java7-jre (not yet in Debian)).
+ * Reformat wrapper script.
+ * debian/rules: re-arrange targets and their dependencies.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 16 Nov 2007 18:38:18 +0100
+
+jabref (2.3-1) unstable; urgency=low
+
+ * New upstream release, closes a bunch of bugs reported in the Debian BTS:
+ - "bibtexkey auto-generation cannot deal with quotes" (closes: #448917).
+ - "File download via CGI adds QUERY_STRING to suggested filename"
+ (closes: #448027).
+ - "File download aborted on click of OK" (closes: #448060).
+ - "Improve directory/filename handling on downloading" (closes: #442475).
+ - "ctrl-g should cause record to be saved" (closes: #443078).
+ - "version 2.3 released" (closes: #450789).
+ * Change XS-Vcs-* fields to Vcs-*.
+ * Adapt referenced filename in debian/links and debian/install.
+ * Sync debian/copyright with output of Help/About and reference
+ /usr/share/common-licenses/GPL-2.
+ * Install changelog_highlights.txt as upstream changelog.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sun, 11 Nov 2007 01:58:27 +0100
+
+jabref (2.3~beta3-1) unstable; urgency=low
+
+ * New upstream release.
+ * Remove debian/manpages.
+ * Clean up debian/rules.
+ * Move upstream URL from the description to the new Homepage field.
+ * Use ant clean instead of manually removing the build directory in
+ debian/rules. Move ant from Build-Depends-Indep to Build-Depends.
+ * Update patch 03_external_apps.
+ * Remove patch 04_logger, not needed anymore.
+ * Create new patch 04_HONOR_DISPLAY_PROPERTIES.dpatch.
+ * Adapt referenced filename in debian/links and debian/install.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Tue, 09 Oct 2007 19:12:09 +0200
+
+jabref (2.3~beta2-1) unstable; urgency=low
+
+ * New upstream release.
+ * Add liblog4j1.2-java to build dependencies (and a new patch 04_logger to
+ be able to use it).
+ * Fix Categories entry in desktop file and remove Encoding.
+ * Sync debian/copyright with output of Help/About.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Wed, 29 Aug 2007 23:38:22 +0200
+
+jabref (2.3~beta1-2) unstable; urgency=low
+
+ * Change section in menu file to "Applications/Data Management" due to
+ the new Menu Policy starting with the upload of menu 2.1.35.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Wed, 04 Jul 2007 19:10:47 +0200
+
+jabref (2.3~beta1-1) unstable; urgency=low
+
+ * New upstream release.
+ * Adapt patch 03_external_apps.
+ * Add suggests to ps- and pdfviewers.
+ * Adapt manpage to output of jabref --help.
+ * Sync debian/copyright with output of Help/About.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sat, 30 Jun 2007 16:45:44 +0200
+
+jabref (2.2-01-6) unstable; urgency=low
+
+ * Add patch 03_external_apps to change the default settings for some
+ external applications; thanks to Cédric Augonnet (closes: #421227).
+ * Convert debian/changelog to UTF-8 (again).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 27 Apr 2007 15:07:18 +0200
+
+jabref (2.2-01-5) unstable; urgency=low
+
+ * Exec the Java interpreter in /usr/bin/jabref; thanks to Tobias Richter
+ (closes: #415019).
+ * Adapt README.Debian to the new wrapper script.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 16 Mar 2007 02:45:21 +0100
+
+jabref (2.2-01-4) unstable; urgency=low
+
+ * Change wrapper script /usr/bin/jabref to explicitly use the Sun Java
+ 5 or 6 virtual machine (closes: #383019).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 12 Mar 2007 20:01:27 +0100
+
+jabref (2.2-01-3) unstable; urgency=low
+
+ * Add call to dh_desktop to debian/rules.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sun, 25 Feb 2007 15:56:32 +0100
+
+jabref (2.2-01-2) unstable; urgency=low
+
+ * Add mime support.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 5 Feb 2007 16:39:03 +0100
+
+jabref (2.2-01-1) unstable; urgency=low
+
+ * New upstream release.
+ * Change wrapper script, as "-v" acts as expcted; cf. #378189 for details
+ (also closes: #408081).
+ * Remove debian/source.lintian-overrides from source package, there are no longer
+ cvs remnants in the upstream tarball.
+ * Add .desktop file for easier integration into desktop environments.
+ * Add symlink /usr/share/java/JabRef-2.2.jar -> /usr/share/java/jabref.jar.
+ * Update debian/copright to reflect the changes as shown in the About Box.
+ * Add sun-java6-jre to Depends:, thanks to Gerhard Riener for the hint.
+ * Remove obsolete j2re1.5 | sun-j2sdk1.5 from Depends:.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sat, 3 Feb 2007 15:48:11 +0100
+
+jabref (2.2~b2-1) unstable; urgency=low
+
+ * New upstream release:
+ - undistributable fonts no longer included (closes: #393676);
+ - remove j2re1.4 from Depends, JabRef now needs Java 1.5;
+ - includes the patch to make Enter work in dialogs, therefore remove
+ patch 02_button;
+ - update patch 01_free_javac;
+ - update debian/copyright (new contributors);
+ - update debian/rules (icon file name changed).
+ * Fix typo in long description.
+ * Shorten call to ant and remove "-k" from dh_clean in debian/rules.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sun, 26 Nov 2006 22:28:46 +0100
+
+jabref (2.1-4) unstable; urgency=low
+
+ * Apply patch from Matthias Klose to enable building with a free java compiler -
+ thanks! (Cf. #383006)
+ * Change build dependencies accordingly.
+ * Apply patch from Morten Omholt Alver (upstream author) to enable 'enter' in
+ dialogs - thanks! (Closes: #387235)
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 25 Sep 2006 00:32:40 +0200
+
+jabref (2.1-3) unstable; urgency=low
+
+ * Change menu section to "Apps/Databases" and remove lintian override.
+ "Apps/Data Management" was premature, thanks to Frank Küster and
+ Bill Allombert for pointing this out (cf. #386320).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 11 Sep 2006 21:12:37 +0200
+
+jabref (2.1-2) unstable; urgency=low
+
+ * Change menu section to "Apps/Data Management", thanks to Frank Küster
+ (closes: #386320).
+ * Add lintian override for this new section.
+ * Convert changelog to UTF-8.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Thu, 7 Sep 2006 16:42:27 +0200
+
+jabref (2.1-1) unstable; urgency=low
+
+ * New upstream release (closes: #382310, #379704).
+ * Change back wrapper script, as the behaviour of "-v" changed in the
+ new release (cf. #378189 for details).
+ * Menu icons now created from PNGs in upstream tarball, therefore add build
+ dependency on imagemagick.
+ * Clean up README.Debian.
+ * Update debian/copright to reflect the changes as shown in the About Box.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 11 Aug 2006 12:09:45 +0200
+
+jabref (2.0.1+2.1b2-6) unstable; urgency=low
+
+ * Update menu icons, the new ones are kindly provided by Morten Omholt Alver
+ (upstream author) - thanks!
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Tue, 1 Aug 2006 22:31:16 +0200
+
+jabref (2.0.1+2.1b2-5) unstable; urgency=low
+
+ * Now really change debian/copyright.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 31 Jul 2006 21:40:47 +0200
+
+jabref (2.0.1+2.1b2-4) unstable; urgency=low
+
+ * Add icon to menu entry, thanks to LI Daobing for the idea
+ (closes: #380604).
+ * Remove references to the libraries Commons Logging and Commons HTTP Client
+ from debian/copyright, as they are not included in the upstream tarball
+ any more.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 31 Jul 2006 16:37:47 +0200
+
+jabref (2.0.1+2.1b2-3) unstable; urgency=low
+
+ * Convert debian/copyright to UTF-8.
+ * Mention startup options in manpage, thanks to LI Daobing (closes: #378190).
+ * Change wrapper script to always pass "-n" if called with "-v" in order
+ to make jabref only print the version number and quit afterwards with
+ "-v". Thanks to LI Daobing (closes: #378189).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 14 Jul 2006 13:23:58 +0200
+
+jabref (2.0.1+2.1b2-2) unstable; urgency=low
+
+ * Pass command line parameters to /usr/bin/jabref and add hint about Sun
+ Java and update-alternatives to README.Debian (closes: #377316).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sat, 8 Jul 2006 12:51:40 +0200
+
+jabref (2.0.1+2.1b2-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Tue, 4 Jul 2006 16:42:35 +0200
+
+jabref (2.0.1+2.1b-3) unstable; urgency=low
+
+ * Changed order of Build-Depend-Indep.
+ * Cleaned up debian/rules.
+ * Moved dh_ calls in debian/rules to binary-indep target.
+ * Add lintian override (upstream tarball has .cvsignore stuff).
+ * Added Tony Mancill to Uploaders (thanks for sponsoring!).
+ * Clarified debian/copyright and fixed typo (thanks to Tony Mancill).
+ * Updated debhelper compatibility level to 5.
+ * Cleaned up debian/watch.
+ * Added menu entry.
+ * Intial upload to the Debian archive (closes: #205392).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Wed, 14 Jun 2006 17:51:38 +0200
+
+jabref (2.0.1+2.1b-2) unstable; urgency=low
+
+ * Change dependencies to include several versions of the Sun JRE/JDK.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Tue, 30 May 2006 17:12:05 +0200
+
+jabref (2.0.1+2.1b-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sat, 20 May 2006 17:06:49 +0200
+
+jabref (2.0.1-3) unstable; urgency=low
+
+ * Update to Standards-Version: 3.7.2 (no changes required).
+ * Change dependencies to new sun-java5-jre/jdk.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Wed, 17 May 2006 17:48:52 +0200
+
+jabref (2.0.1-2) unstable; urgency=low
+
+ * Update to Standards-Version: 3.7.0 (no changes required).
+ * Moved debhelper from Build-Depends-Indep to Build-Depends
+ in debian/control.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Mon, 1 May 2006 14:44:02 +0200
+
+jabref (2.0.1-1) unstable; urgency=low
+
+ * New upstream release
+ * Set debhelper compatibility level to 5.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 3 Feb 2006 21:18:29 +0100
+
+jabref (1.8.1-2) unstable; urgency=low
+
+ * Added homepage to debian/control.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sun, 25 Dec 2005 14:30:28 +0100
+
+jabref (1.8.1-1) unstable; urgency=low
+
+ * New upstream release
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Fri, 7 Oct 2005 22:30:10 +0200
+
+jabref (1.8-4) unstable; urgency=low
+
+ * Fixed error in /usr/bin/jabref.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Tue, 13 Sep 2005 18:44:57 +0200
+
+jabref (1.8-3) unstable; urgency=low
+
+ * Trimmed Depends: to j2re1.4.
+ * Added j2sdk1 to Build-Depends-Indep.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sun, 11 Sep 2005 01:24:05 +0200
+
+jabref (1.8-2) unstable; urgency=low
+
+ * Moved jabref.jar from /usr/share/java/jabref to ../
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Sat, 3 Sep 2005 02:45:23 +0200
+
+jabref (1.8-1) unstable; urgency=low
+
+ * Initial release Closes: #205392
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at> Thu, 1 Sep 2005 23:18:00 +0200
+
--- /dev/null
+build.number
+src/resource/build.properties
--- /dev/null
+Source: jabref
+Maintainer: gregor herrmann <gregoa@debian.org>
+Uploaders: tony mancill <tmancill@debian.org>
+Section: tex
+Priority: optional
+Build-Depends: debhelper (>= 8)
+Build-Depends-Indep: ant,
+ antlr,
+ antlr3,
+ default-jdk,
+ imagemagick,
+ libcommons-logging-java,
+ libglazedlists-java,
+ libjempbox-java (>= 1:1.5.0),
+ libjgoodies-common-java (>= 1.4.0),
+ libjgoodies-forms-java (>= 1.6.0),
+ libjgoodies-looks-java (>= 2.4.0),
+ libjpf-java,
+ libjpfcodegen-java,
+ liblog4j1.2-java,
+ libmicroba-java,
+ libmysql-java,
+ libpdfbox-java (>= 1:1.5.0),
+ libpostgresql-jdbc-java,
+ libreoffice-java-common (>= 1:3.5),
+ libspin-java,
+ junit,
+ ure,
+ velocity
+Standards-Version: 3.9.4
+Vcs-Browser: http://git.toastfreeware.priv.at/debian/jabref.git/
+Vcs-Git: git://git.toastfreeware.priv.at/debian/jabref.git
+Homepage: http://jabref.sourceforge.net/
+
+Package: jabref
+Architecture: all
+Depends: ${misc:Depends},
+ antlr,
+ antlr3,
+ java-wrappers,
+ libcommons-logging-java,
+ libglazedlists-java,
+ libjempbox-java (>= 1:1.5.0),
+ libjgoodies-common-java (>= 1.4.0),
+ libjgoodies-forms-java (>= 1.6.0),
+ libjgoodies-looks-java (>= 2.4.0),
+ libjpf-java,
+ libjpfcodegen-java,
+ libmicroba-java,
+ libmysql-java,
+ libpdfbox-java (>= 1:1.5.0),
+ libpostgresql-jdbc-java,
+ libspin-java,
+ openjdk-7-jre | java6-runtime,
+ velocity
+Recommends: xdg-utils,
+ libreoffice-java-common,
+ libreoffice-writer
+Suggests: gv | postscript-viewer,
+ xpdf-reader | pdf-viewer
+Breaks: jabref-plugin-oo (<< 2.9~beta1-1~)
+Description: graphical frontend to manage BibTeX databases
+ JabRef is a graphical Java application for editing BibTeX (.bib) databases.
+ JabRef lets you organize your entries into overlapping logical groups, and
+ with a single click limit your view to a single group or an intersection or
+ union of several groups. You can customize the entry information shown in the
+ main window, and sort by any of the standard BibTeX fields. JabRef can
+ autogenerate BibTeX keys for your entries. JabRef also lets you easily link
+ to PDF or web sources for your reference entries.
+ .
+ JabRef can import from and export to several formats, and you can customize
+ export filters. JabRef can be run as a command line application to convert
+ from any import format to any export format.
+
+Package: jabref-plugin-oo
+Architecture: all
+Depends: ${misc:Depends},
+ jabref (>= 2.9~beta1),
+Section: oldlibs
+Description: LibreOffice plugin for JabRef (transitional dummy package)
+ This is a transitional dummy package to upgrade to a newer jabref package,
+ which now includes the LibreOffice plugin.
+ .
+ It can safely be removed after upgrading jabref to at least 2.9~beta1.
--- /dev/null
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: JabRef
+Upstream-Contact: Morten Alver, Nizar Batada
+Source: http://jabref.sourceforge.net/
+Comment: The +ds version is created by removing lib/, buildlib/, gradle/, osx/:
+ contain sourceless pre-compiled libraries which are not used anyway
+
+Files: *
+Copyright: 2003-2013, Morten Alver <mortenalver@users.sourceforge.net>
+ 2003-2013, Nizar Batada <nbatada@users.sourceforge.net>
+License: GPL-2
+
+Files: src/images/*
+Copyright: 2006-2007, Everaldo Coelho <everaldo@everaldo.com>
+License: LGPL-2.1
+Comment: The majority of icons are from the Crystal Clear icon set
+
+Files: src/java/gnu/dtools/ritopt/*
+Copyright: 2001, Damian Ryan Eads
+License: GPL-2+
+
+Files: src/help/de/JabRef-UserManual_de.tex
+Copyright: 2005-2010, Dominik Waßenhoven
+License: CC-BY-SA-3.0
+
+Files: src/tests/net/sf/jabref/bst/abbrv.bst
+Copyright: 1985, unknown
+License: other
+ % BibTeX standard bibliography style `abbrv'
+ % version 0.99a for BibTeX versions 0.99a or later, LaTeX version 2.09.
+ % Copyright (C) 1985, all rights reserved.
+ % Copying of this file is authorized only if either
+ % (1) you make absolutely no changes to your copy, including name, or
+ % (2) if you do make changes, you name it something other than
+ % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst.
+ % This restriction helps ensure that all standard styles are identical.
+ % The file btxbst.doc has the documentation for this style.
+Comment: This is the standard abbrv.bst file as also included in
+ texlive-base.
+
+Files: src/resource/layout/tablerefsabsbib/tablerefsabsbib.begin.layout
+ src/resource/layout/tablerefs/tablerefs.begin.layout
+Copyright: 2006-2011, Mark Schenk
+License: CC-BY-3.0
+
+Files: src/java/wsi/ra/tool/ResourceLoader.java
+ src/java/wsi/ra/tool/WSITools.java
+ src/java/wsi/ra/tool/ExternalHelper.java
+ src/java/wsi/ra/types/StringInt.java
+ src/java/jalopy.format.convention.xml
+ src/java/net/sf/jabref/export/layout/format/CreateDocBookAuthors.java
+ src/java/net/sf/jabref/export/layout/format/XMLChars.java
+ src/java/net/sf/jabref/export/layout/format/CreateBibORDFAuthors.java
+ src/java/net/sf/jabref/export/layout/format/RemoveBracketsAddComma.java
+ src/java/net/sf/jabref/export/layout/format/RemoveTilde.java
+ src/java/net/sf/jabref/export/layout/format/RemoveWhitespace.java
+ src/java/net/sf/jabref/export/layout/format/GetOpenOfficeType.java
+ src/java/net/sf/jabref/export/layout/format/RemoveBrackets.java
+ src/java/net/sf/jabref/export/layout/format/CreateDocBookEditors.java
+ src/java/net/sf/jabref/export/layout/format/AuthorLastFirst.java
+Copyright: Dept. Computer Architecture, University of Tuebingen, Germany
+License: GPL-2
+
+Files: src/java/net/sf/jabref/KeyCollisionException.java
+Copyright: 2003, David Weitzman
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/BibtexEntryType.java
+ src/java/net/sf/jabref/BibtexDatabase.java
+ src/java/net/sf/jabref/BibtexEntry.java
+Copyright: 2003, David Weitzman
+ 2003, Morten O. Alver
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/imports/BibtexParser.java
+Copyright: 2003-2006, David Weitzman
+ 2003-2006, Nizar N. Batada
+ 2003-2006, Morten O. Alver
+ 2003-2006, Christopher Oezbek
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/FieldTextMenu.java
+ src/java/net/sf/jabref/wizard/text/TagToMarkedTextStore.java
+ src/java/net/sf/jabref/wizard/text/gui/TextInputDialog.java
+ src/java/net/sf/jabref/wizard/text/gui/OverlayPanel.java
+ src/java/net/sf/jabref/wizard/auximport/AuxCommandLine.java
+ src/java/net/sf/jabref/wizard/auximport/gui/FromAuxDialog.java
+ src/java/net/sf/jabref/wizard/auximport/AuxSubGenerator.java
+ src/java/net/sf/jabref/wizard/integrity/IntegrityMessage.java
+ src/java/net/sf/jabref/wizard/integrity/IntegrityCheck.java
+ src/java/net/sf/jabref/wizard/integrity/gui/IntegrityWizard.java
+ src/java/net/sf/jabref/wizard/integrity/gui/IntegrityMessagePanel.java
+Copyright: 2004, R. Nagel
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/about/AnimationListener.java
+ src/java/net/sf/jabref/about/AboutPanel.java
+ src/java/net/sf/jabref/about/AboutTextLine.java
+ src/java/net/sf/jabref/about/TextBlock.java
+ src/java/net/sf/jabref/about/ExtendedInfoPanel.java
+ src/java/net/sf/jabref/about/About2.java
+ src/java/net/sf/jabref/util/TBuildInfo.java
+Copyright: 2005, Raik Nagel <kiar@users.sourceforge.net>
+License: BSD-3
+
+Files: src/java/net/sf/jabref/util/TXMLReader.java
+ src/java/net/sf/jabref/BibtexFields.java
+ src/java/net/sf/jabref/gui/date/DatePickerButton.java
+Copyright: 2006, Raik Nagel <kiar@users.sourceforge.net>
+License: BSD-3
+
+Files: src/java/com/jgoodies/uif_lite/component/UIFSplitPane.java
+ src/java/com/jgoodies/uif_lite/panel/SimpleInternalFrame.java
+Copyright: 2003, 2004 JGoodies Karsten Lentzsch.
+License: BSD-3
+
+Files: src/java/net/sf/jabref/SimpleUrlDragDrop.java
+ src/java/net/sf/jabref/UrlDragDrop.java
+Copyright: 2004, E. Putrycz
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/SearchRuleSet.java
+ src/java/net/sf/jabref/SearchRule.java
+Copyright: 2003, Nathan Dunn
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/SimpleSearchRule.java
+ src/java/net/sf/jabref/DatabaseSearch.java
+Copyright: 2003, Nathan Dunn
+ 2003, Morten O. Alver
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/label/BookLabelRule.java
+ src/java/net/sf/jabref/label/InproceedingsLabelRule.java
+Copyright: 2003, Nathan Dunn
+ 2003, Morten O. Alver
+ 2003, Nizar N. Batada
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/export/layout/format/ToLowerCase.java
+Copyright: Egon Willighagen
+License: GPL-2
+
+Files: src/java/net/sf/jabref/export/layout/format/CurrentDate.java
+Copyright: 2005, Andreas Rudert
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/util/CaseChangeMenu.java
+ src/java/net/sf/jabref/util/CaseChanger.java
+Copyright: 2003, Moritz Ringler
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/imports/DBLPHelper.java
+ src/java/net/sf/jabref/imports/DBLPParseException.java
+Copyright: 2011, Sascha Hunold
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/imports/BooleanAssign.java
+Copyright: 2003-2011, M. Spiegel
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/imports/ACMPortalFetcher.java
+Copyright: 2003-2011, Aaron Chen
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/imports/PdfContentImporter.java
+Copyright: 2011, Oliver Kopp
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/FontSelectorDialog.java
+Copyright: 1999-2002, Sylvain Reynal
+ 2000, 2001, Slava Pestov
+ 1999, Jason Ginchereau
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/imports/ImportCustomizationDialog.java
+ src/java/net/sf/jabref/imports/ZipFileChooser.java
+ src/java/net/sf/jabref/imports/CustomImportList.java
+ src/java/net/sf/jabref/imports/RepecNepImporter.java
+Copyright: 2005, Andreas Rudert
+License: GPL-2+
+
+Files: src/java/net/sf/jabref/PdfPreviewPanel.java
+Copyright: 2012, Meltem Meltem Demirköprü
+ 2012, Ahmad Hammoud
+ 2012, Oliver Kopp
+License: GPL-3+
+
+Files: src/java/net/sf/ext/BrowserLauncher.java
+Copyright: 1999-2001, Eric Albert (ejalbert@cs.stanford.edu)
+License: other
+ This code is Copyright 1999-2001 by Eric Albert (ejalbert@cs.stanford.edu) and may be
+ redistributed or modified in any form without restrictions as long as the portion of this
+ comment from this paragraph through the end of the comment is not removed. The author
+ requests that he be notified of any application, applet, or other binary that makes use of
+ this code, but that's more out of curiosity than anything and is not required. This software
+ includes no warranty. The author is not repsonsible for any loss of data or functionality
+ or any adverse or unexpected effects of using this software.
+
+Files: src/java/org/xnap/commons/gui/shortcut/EmacsKeyBindings.java
+Copyright: 2005, Steffen Pingel
+ 2005, Felix Berger
+License: LGPL-2.1+
+
+Files: src/java/net/sf/jabref/export/layout/format/Iso690FormatDate.java
+ src/java/net/sf/jabref/export/layout/format/Iso690NamesAuthors.java
+Copyright: 2009, Laura Hernández Gómez
+License: GPL-3+
+
+Files: src/osx/osxadapter/OSXAdapter.java
+Copyright: 2003-2007, Apple Computer, Inc
+License: other
+ Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc.
+ ("Apple") in consideration of your agreement to the following terms, and your
+ use, installation, modification or redistribution of this Apple software
+ constitutes acceptance of these terms. If you do not agree with these terms,
+ please do not use, install, modify or redistribute this Apple software.
+ .
+ In consideration of your agreement to abide by the following terms, and subject
+ to these terms, Apple grants you a personal, non-exclusive license, under Apple's
+ copyrights in this original Apple software (the "Apple Software"), to use,
+ reproduce, modify and redistribute the Apple Software, with or without
+ modifications, in source and/or binary forms; provided that if you redistribute
+ the Apple Software in its entirety and without modifications, you must retain
+ this notice and the following text and disclaimers in all such redistributions of
+ the Apple Software. Neither the name, trademarks, service marks or logos of
+ Apple Computer, Inc. may be used to endorse or promote products derived from the
+ Apple Software without specific prior written permission from Apple. Except as
+ expressly stated in this notice, no other rights or licenses, express or implied,
+ are granted by Apple herein, including but not limited to any patent rights that
+ may be infringed by your derivative works or by other works in which the Apple
+ Software may be incorporated.
+ .
+ The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO
+ WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED
+ WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN
+ COMBINATION WITH YOUR PRODUCTS.
+ .
+ IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION
+ OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT
+ (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN
+ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Files: debian/*
+Copyright: 2005-2013, gregor herrmann <gregoa@debian.org>
+ 2005-2013, tony mancill <tmancill@debian.org>
+License: GPL-2
+
+Files: debian/patches/mrDlib_jayatana.patch
+Copyright: 2012, Oliver Kopp <oliver.kopp@gmail.com>
+License: GPL-2
+
+Files: debian/repack.stub
+Copyright: 2009, Ryan Niebur <ryan@debian.org>
+License: Artistic or GPL-1+
+
+License: BSD-3
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+ .
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of the author nor the names of its contributors may be
+ used to endorse or promote products derived from this software without
+ specific prior written permission.
+
+License: CC-BY-3.0
+ Creative Commons Legal Code
+ .
+ Attribution 3.0 Unported
+ .
+ THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+ COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+ COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+ AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+ .
+ BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+ TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+ BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+ CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+ CONDITIONS.
+ .
+ *1. Definitions*
+ .
+ 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+ and other pre-existing works, such as a translation, adaptation,
+ derivative work, arrangement of music or other alterations of a
+ literary or artistic work, or phonogram or performance and
+ includes cinematographic adaptations or any other form in which
+ the Work may be recast, transformed, or adapted including in any
+ form recognizably derived from the original, except that a work
+ that constitutes a Collection will not be considered an Adaptation
+ for the purpose of this License. For the avoidance of doubt, where
+ the Work is a musical work, performance or phonogram, the
+ synchronization of the Work in timed-relation with a moving image
+ ("synching") will be considered an Adaptation for the purpose of
+ this License.
+ 2. *"Collection"* means a collection of literary or artistic works,
+ such as encyclopedias and anthologies, or performances, phonograms
+ or broadcasts, or other works or subject matter other than works
+ listed in Section 1(f) below, which, by reason of the selection
+ and arrangement of their contents, constitute intellectual
+ creations, in which the Work is included in its entirety in
+ unmodified form along with one or more other contributions, each
+ constituting separate and independent works in themselves, which
+ together are assembled into a collective whole. A work that
+ constitutes a Collection will not be considered an Adaptation (as
+ defined above) for the purposes of this License.
+ 3. *"Distribute"* means to make available to the public the original
+ and copies of the Work or Adaptation, as appropriate, through sale
+ or other transfer of ownership.
+ 4. *"Licensor"* means the individual, individuals, entity or entities
+ that offer(s) the Work under the terms of this License.
+ 5. *"Original Author"* means, in the case of a literary or artistic
+ work, the individual, individuals, entity or entities who created
+ the Work or if no individual or entity can be identified, the
+ publisher; and in addition (i) in the case of a performance the
+ actors, singers, musicians, dancers, and other persons who act,
+ sing, deliver, declaim, play in, interpret or otherwise perform
+ literary or artistic works or expressions of folklore; (ii) in the
+ case of a phonogram the producer being the person or legal entity
+ who first fixes the sounds of a performance or other sounds; and,
+ (iii) in the case of broadcasts, the organization that transmits
+ the broadcast.
+ 6. *"Work"* means the literary and/or artistic work offered under the
+ terms of this License including without limitation any production
+ in the literary, scientific and artistic domain, whatever may be
+ the mode or form of its expression including digital form, such as
+ a book, pamphlet and other writing; a lecture, address, sermon or
+ other work of the same nature; a dramatic or dramatico-musical
+ work; a choreographic work or entertainment in dumb show; a
+ musical composition with or without words; a cinematographic work
+ to which are assimilated works expressed by a process analogous to
+ cinematography; a work of drawing, painting, architecture,
+ sculpture, engraving or lithography; a photographic work to which
+ are assimilated works expressed by a process analogous to
+ photography; a work of applied art; an illustration, map, plan,
+ sketch or three-dimensional work relative to geography,
+ topography, architecture or science; a performance; a broadcast; a
+ phonogram; a compilation of data to the extent it is protected as
+ a copyrightable work; or a work performed by a variety or circus
+ performer to the extent it is not otherwise considered a literary
+ or artistic work.
+ 7. *"You"* means an individual or entity exercising rights under this
+ License who has not previously violated the terms of this License
+ with respect to the Work, or who has received express permission
+ from the Licensor to exercise rights under this License despite a
+ previous violation.
+ 8. *"Publicly Perform"* means to perform public recitations of the
+ Work and to communicate to the public those public recitations, by
+ any means or process, including by wire or wireless means or
+ public digital performances; to make available to the public Works
+ in such a way that members of the public may access these Works
+ from a place and at a place individually chosen by them; to
+ perform the Work to the public by any means or process and the
+ communication to the public of the performances of the Work,
+ including by public digital performance; to broadcast and
+ rebroadcast the Work by any means including signs, sounds or images.
+ 9. *"Reproduce"* means to make copies of the Work by any means
+ including without limitation by sound or visual recordings and the
+ right of fixation and reproducing fixations of the Work, including
+ storage of a protected performance or phonogram in digital form or
+ other electronic medium.
+ .
+ *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+ limit, or restrict any uses free from copyright or rights arising from
+ limitations or exceptions that are provided for in connection with the
+ copyright protection under copyright law or other applicable laws.
+ .
+ *3. License Grant.* Subject to the terms and conditions of this License,
+ Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+ perpetual (for the duration of the applicable copyright) license to
+ exercise the rights in the Work as stated below:
+ .
+ 1. to Reproduce the Work, to incorporate the Work into one or more
+ Collections, and to Reproduce the Work as incorporated in the
+ Collections;
+ 2. to create and Reproduce Adaptations provided that any such
+ Adaptation, including any translation in any medium, takes
+ reasonable steps to clearly label, demarcate or otherwise identify
+ that changes were made to the original Work. For example, a
+ translation could be marked "The original work was translated from
+ English to Spanish," or a modification could indicate "The
+ original work has been modified.";
+ 3. to Distribute and Publicly Perform the Work including as
+ incorporated in Collections; and,
+ 4. to Distribute and Publicly Perform Adaptations.
+ 5.
+ .
+ For the avoidance of doubt:
+ .
+ 1. *Non-waivable Compulsory License Schemes*. In those
+ jurisdictions in which the right to collect royalties
+ through any statutory or compulsory licensing scheme cannot
+ be waived, the Licensor reserves the exclusive right to
+ collect such royalties for any exercise by You of the rights
+ granted under this License;
+ 2. *Waivable Compulsory License Schemes*. In those
+ jurisdictions in which the right to collect royalties
+ through any statutory or compulsory licensing scheme can be
+ waived, the Licensor waives the exclusive right to collect
+ such royalties for any exercise by You of the rights granted
+ under this License; and,
+ 3. *Voluntary License Schemes*. The Licensor waives the right
+ to collect royalties, whether individually or, in the event
+ that the Licensor is a member of a collecting society that
+ administers voluntary licensing schemes, via that society,
+ from any exercise by You of the rights granted under this
+ License.
+ .
+ The above rights may be exercised in all media and formats whether now
+ known or hereafter devised. The above rights include the right to make
+ such modifications as are technically necessary to exercise the rights
+ in other media and formats. Subject to Section 8(f), all rights not
+ expressly granted by Licensor are hereby reserved.
+ .
+ *4. Restrictions.* The license granted in Section 3 above is expressly
+ made subject to and limited by the following restrictions:
+ .
+ 1. You may Distribute or Publicly Perform the Work only under the
+ terms of this License. You must include a copy of, or the Uniform
+ Resource Identifier (URI) for, this License with every copy of the
+ Work You Distribute or Publicly Perform. You may not offer or
+ impose any terms on the Work that restrict the terms of this
+ License or the ability of the recipient of the Work to exercise
+ the rights granted to that recipient under the terms of the
+ License. You may not sublicense the Work. You must keep intact all
+ notices that refer to this License and to the disclaimer of
+ warranties with every copy of the Work You Distribute or Publicly
+ Perform. When You Distribute or Publicly Perform the Work, You may
+ not impose any effective technological measures on the Work that
+ restrict the ability of a recipient of the Work from You to
+ exercise the rights granted to that recipient under the terms of
+ the License. This Section 4(a) applies to the Work as incorporated
+ in a Collection, but this does not require the Collection apart
+ from the Work itself to be made subject to the terms of this
+ License. If You create a Collection, upon notice from any Licensor
+ You must, to the extent practicable, remove from the Collection
+ any credit as required by Section 4(b), as requested. If You
+ create an Adaptation, upon notice from any Licensor You must, to
+ the extent practicable, remove from the Adaptation any credit as
+ required by Section 4(b), as requested.
+ 2. If You Distribute, or Publicly Perform the Work or any Adaptations
+ or Collections, You must, unless a request has been made pursuant
+ to Section 4(a), keep intact all copyright notices for the Work
+ and provide, reasonable to the medium or means You are utilizing:
+ (i) the name of the Original Author (or pseudonym, if applicable)
+ if supplied, and/or if the Original Author and/or Licensor
+ designate another party or parties (e.g., a sponsor institute,
+ publishing entity, journal) for attribution ("Attribution
+ Parties") in Licensor's copyright notice, terms of service or by
+ other reasonable means, the name of such party or parties; (ii)
+ the title of the Work if supplied; (iii) to the extent reasonably
+ practicable, the URI, if any, that Licensor specifies to be
+ associated with the Work, unless such URI does not refer to the
+ copyright notice or licensing information for the Work; and (iv) ,
+ consistent with Section 3(b), in the case of an Adaptation, a
+ credit identifying the use of the Work in the Adaptation (e.g.,
+ "French translation of the Work by Original Author," or
+ "Screenplay based on original Work by Original Author"). The
+ credit required by this Section 4 (b) may be implemented in any
+ reasonable manner; provided, however, that in the case of a
+ Adaptation or Collection, at a minimum such credit will appear, if
+ a credit for all contributing authors of the Adaptation or
+ Collection appears, then as part of these credits and in a manner
+ at least as prominent as the credits for the other contributing
+ authors. For the avoidance of doubt, You may only use the credit
+ required by this Section for the purpose of attribution in the
+ manner set out above and, by exercising Your rights under this
+ License, You may not implicitly or explicitly assert or imply any
+ connection with, sponsorship or endorsement by the Original
+ Author, Licensor and/or Attribution Parties, as appropriate, of
+ You or Your use of the Work, without the separate, express prior
+ written permission of the Original Author, Licensor and/or
+ Attribution Parties.
+ 3. Except as otherwise agreed in writing by the Licensor or as may be
+ otherwise permitted by applicable law, if You Reproduce,
+ Distribute or Publicly Perform the Work either by itself or as
+ part of any Adaptations or Collections, You must not distort,
+ mutilate, modify or take other derogatory action in relation to
+ the Work which would be prejudicial to the Original Author's honor
+ or reputation. Licensor agrees that in those jurisdictions (e.g.
+ Japan), in which any exercise of the right granted in Section 3(b)
+ of this License (the right to make Adaptations) would be deemed to
+ be a distortion, mutilation, modification or other derogatory
+ action prejudicial to the Original Author's honor and reputation,
+ the Licensor will waive or not assert, as appropriate, this
+ Section, to the fullest extent permitted by the applicable
+ national law, to enable You to reasonably exercise Your right
+ under Section 3(b) of this License (right to make Adaptations) but
+ not otherwise.
+ .
+ *5. Representations, Warranties and Disclaimer*
+ .
+ UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+ OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+ KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+ INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+ LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+ WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+ EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+ .
+ *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+ APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+ THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+ DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+ LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+ .
+ *7. Termination*
+ .
+ 1. This License and the rights granted hereunder will terminate
+ automatically upon any breach by You of the terms of this License.
+ Individuals or entities who have received Adaptations or
+ Collections from You under this License, however, will not have
+ their licenses terminated provided such individuals or entities
+ remain in full compliance with those licenses. Sections 1, 2, 5,
+ 6, 7, and 8 will survive any termination of this License.
+ 2. Subject to the above terms and conditions, the license granted
+ here is perpetual (for the duration of the applicable copyright in
+ the Work). Notwithstanding the above, Licensor reserves the right
+ to release the Work under different license terms or to stop
+ distributing the Work at any time; provided, however that any such
+ election will not serve to withdraw this License (or any other
+ license that has been, or is required to be, granted under the
+ terms of this License), and this License will continue in full
+ force and effect unless terminated as stated above.
+ .
+ *8. Miscellaneous*
+ .
+ 1. Each time You Distribute or Publicly Perform the Work or a
+ Collection, the Licensor offers to the recipient a license to the
+ Work on the same terms and conditions as the license granted to
+ You under this License.
+ 2. Each time You Distribute or Publicly Perform an Adaptation,
+ Licensor offers to the recipient a license to the original Work on
+ the same terms and conditions as the license granted to You under
+ this License.
+ 3. If any provision of this License is invalid or unenforceable under
+ applicable law, it shall not affect the validity or enforceability
+ of the remainder of the terms of this License, and without further
+ action by the parties to this agreement, such provision shall be
+ reformed to the minimum extent necessary to make such provision
+ valid and enforceable.
+ 4. No term or provision of this License shall be deemed waived and no
+ breach consented to unless such waiver or consent shall be in
+ writing and signed by the party to be charged with such waiver or
+ consent.
+ 5. This License constitutes the entire agreement between the parties
+ with respect to the Work licensed here. There are no
+ understandings, agreements or representations with respect to the
+ Work not specified here. Licensor shall not be bound by any
+ additional provisions that may appear in any communication from
+ You. This License may not be modified without the mutual written
+ agreement of the Licensor and You.
+ 6. The rights granted under, and the subject matter referenced, in
+ this License were drafted utilizing the terminology of the Berne
+ Convention for the Protection of Literary and Artistic Works (as
+ amended on September 28, 1979), the Rome Convention of 1961, the
+ WIPO Copyright Treaty of 1996, the WIPO Performances and
+ Phonograms Treaty of 1996 and the Universal Copyright Convention
+ (as revised on July 24, 1971). These rights and subject matter
+ take effect in the relevant jurisdiction in which the License
+ terms are sought to be enforced according to the corresponding
+ provisions of the implementation of those treaty provisions in the
+ applicable national law. If the standard suite of rights granted
+ under applicable copyright law includes additional rights not
+ granted under this License, such additional rights are deemed to
+ be included in the License; this License is not intended to
+ restrict the license of any rights under applicable law.
+
+License: CC-BY-SA-3.0
+ Creative Commons Legal Code
+ .
+ Attribution-ShareAlike 3.0 Unported
+ .
+ CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+ LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN
+ ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
+ INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO
+ WARRANTIES REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS
+ LIABILITY FOR DAMAGES RESULTING FROM ITS USE.
+ .
+ /License/
+ .
+ THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+ COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+ COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+ AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+ .
+ BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+ TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+ BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+ CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+ CONDITIONS.
+ .
+ *1. Definitions*
+ .
+ 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+ and other pre-existing works, such as a translation, adaptation,
+ derivative work, arrangement of music or other alterations of a
+ literary or artistic work, or phonogram or performance and
+ includes cinematographic adaptations or any other form in which
+ the Work may be recast, transformed, or adapted including in any
+ form recognizably derived from the original, except that a work
+ that constitutes a Collection will not be considered an Adaptation
+ for the purpose of this License. For the avoidance of doubt, where
+ the Work is a musical work, performance or phonogram, the
+ synchronization of the Work in timed-relation with a moving image
+ ("synching") will be considered an Adaptation for the purpose of
+ this License.
+ 2. *"Collection"* means a collection of literary or artistic works,
+ such as encyclopedias and anthologies, or performances, phonograms
+ or broadcasts, or other works or subject matter other than works
+ listed in Section 1(f) below, which, by reason of the selection
+ and arrangement of their contents, constitute intellectual
+ creations, in which the Work is included in its entirety in
+ unmodified form along with one or more other contributions, each
+ constituting separate and independent works in themselves, which
+ together are assembled into a collective whole. A work that
+ constitutes a Collection will not be considered an Adaptation (as
+ defined below) for the purposes of this License.
+ 3. *"Creative Commons Compatible License"* means a license that is
+ listed at http://creativecommons.org/compatiblelicenses that has
+ been approved by Creative Commons as being essentially equivalent
+ to this License, including, at a minimum, because that license:
+ (i) contains terms that have the same purpose, meaning and effect
+ as the License Elements of this License; and, (ii) explicitly
+ permits the relicensing of adaptations of works made available
+ under that license under this License or a Creative Commons
+ jurisdiction license with the same License Elements as this License.
+ 4. *"Distribute"* means to make available to the public the original
+ and copies of the Work or Adaptation, as appropriate, through sale
+ or other transfer of ownership.
+ 5. *"License Elements"* means the following high-level license
+ attributes as selected by Licensor and indicated in the title of
+ this License: Attribution, ShareAlike.
+ 6. *"Licensor"* means the individual, individuals, entity or entities
+ that offer(s) the Work under the terms of this License.
+ 7. *"Original Author"* means, in the case of a literary or artistic
+ work, the individual, individuals, entity or entities who created
+ the Work or if no individual or entity can be identified, the
+ publisher; and in addition (i) in the case of a performance the
+ actors, singers, musicians, dancers, and other persons who act,
+ sing, deliver, declaim, play in, interpret or otherwise perform
+ literary or artistic works or expressions of folklore; (ii) in the
+ case of a phonogram the producer being the person or legal entity
+ who first fixes the sounds of a performance or other sounds; and,
+ (iii) in the case of broadcasts, the organization that transmits
+ the broadcast.
+ 8. *"Work"* means the literary and/or artistic work offered under the
+ terms of this License including without limitation any production
+ in the literary, scientific and artistic domain, whatever may be
+ the mode or form of its expression including digital form, such as
+ a book, pamphlet and other writing; a lecture, address, sermon or
+ other work of the same nature; a dramatic or dramatico-musical
+ work; a choreographic work or entertainment in dumb show; a
+ musical composition with or without words; a cinematographic work
+ to which are assimilated works expressed by a process analogous to
+ cinematography; a work of drawing, painting, architecture,
+ sculpture, engraving or lithography; a photographic work to which
+ are assimilated works expressed by a process analogous to
+ photography; a work of applied art; an illustration, map, plan,
+ sketch or three-dimensional work relative to geography,
+ topography, architecture or science; a performance; a broadcast; a
+ phonogram; a compilation of data to the extent it is protected as
+ a copyrightable work; or a work performed by a variety or circus
+ performer to the extent it is not otherwise considered a literary
+ or artistic work.
+ 9. *"You"* means an individual or entity exercising rights under this
+ License who has not previously violated the terms of this License
+ with respect to the Work, or who has received express permission
+ from the Licensor to exercise rights under this License despite a
+ previous violation.
+ 10. *"Publicly Perform"* means to perform public recitations of the
+ Work and to communicate to the public those public recitations, by
+ any means or process, including by wire or wireless means or
+ public digital performances; to make available to the public Works
+ in such a way that members of the public may access these Works
+ from a place and at a place individually chosen by them; to
+ perform the Work to the public by any means or process and the
+ communication to the public of the performances of the Work,
+ including by public digital performance; to broadcast and
+ rebroadcast the Work by any means including signs, sounds or images.
+ 11. *"Reproduce"* means to make copies of the Work by any means
+ including without limitation by sound or visual recordings and the
+ right of fixation and reproducing fixations of the Work, including
+ storage of a protected performance or phonogram in digital form or
+ other electronic medium.
+ .
+ *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+ limit, or restrict any uses free from copyright or rights arising from
+ limitations or exceptions that are provided for in connection with the
+ copyright protection under copyright law or other applicable laws.
+ .
+ *3. License Grant.* Subject to the terms and conditions of this License,
+ Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+ perpetual (for the duration of the applicable copyright) license to
+ exercise the rights in the Work as stated below:
+ .
+ 1. to Reproduce the Work, to incorporate the Work into one or more
+ Collections, and to Reproduce the Work as incorporated in the
+ Collections;
+ 2. to create and Reproduce Adaptations provided that any such
+ Adaptation, including any translation in any medium, takes
+ reasonable steps to clearly label, demarcate or otherwise identify
+ that changes were made to the original Work. For example, a
+ translation could be marked "The original work was translated from
+ English to Spanish," or a modification could indicate "The
+ original work has been modified.";
+ 3. to Distribute and Publicly Perform the Work including as
+ incorporated in Collections; and,
+ 4. to Distribute and Publicly Perform Adaptations.
+ 5.
+ .
+ For the avoidance of doubt:
+ .
+ 1. *Non-waivable Compulsory License Schemes*. In those
+ jurisdictions in which the right to collect royalties
+ through any statutory or compulsory licensing scheme cannot
+ be waived, the Licensor reserves the exclusive right to
+ collect such royalties for any exercise by You of the rights
+ granted under this License;
+ 2. *Waivable Compulsory License Schemes*. In those
+ jurisdictions in which the right to collect royalties
+ through any statutory or compulsory licensing scheme can be
+ waived, the Licensor waives the exclusive right to collect
+ such royalties for any exercise by You of the rights granted
+ under this License; and,
+ 3. *Voluntary License Schemes*. The Licensor waives the right
+ to collect royalties, whether individually or, in the event
+ that the Licensor is a member of a collecting society that
+ administers voluntary licensing schemes, via that society,
+ from any exercise by You of the rights granted under this
+ License.
+ .
+ The above rights may be exercised in all media and formats whether now
+ known or hereafter devised. The above rights include the right to make
+ such modifications as are technically necessary to exercise the rights
+ in other media and formats. Subject to Section 8(f), all rights not
+ expressly granted by Licensor are hereby reserved.
+ .
+ *4. Restrictions.* The license granted in Section 3 above is expressly
+ made subject to and limited by the following restrictions:
+ .
+ 1. You may Distribute or Publicly Perform the Work only under the
+ terms of this License. You must include a copy of, or the Uniform
+ Resource Identifier (URI) for, this License with every copy of the
+ Work You Distribute or Publicly Perform. You may not offer or
+ impose any terms on the Work that restrict the terms of this
+ License or the ability of the recipient of the Work to exercise
+ the rights granted to that recipient under the terms of the
+ License. You may not sublicense the Work. You must keep intact all
+ notices that refer to this License and to the disclaimer of
+ warranties with every copy of the Work You Distribute or Publicly
+ Perform. When You Distribute or Publicly Perform the Work, You may
+ not impose any effective technological measures on the Work that
+ restrict the ability of a recipient of the Work from You to
+ exercise the rights granted to that recipient under the terms of
+ the License. This Section 4(a) applies to the Work as incorporated
+ in a Collection, but this does not require the Collection apart
+ from the Work itself to be made subject to the terms of this
+ License. If You create a Collection, upon notice from any Licensor
+ You must, to the extent practicable, remove from the Collection
+ any credit as required by Section 4(c), as requested. If You
+ create an Adaptation, upon notice from any Licensor You must, to
+ the extent practicable, remove from the Adaptation any credit as
+ required by Section 4(c), as requested.
+ 2. You may Distribute or Publicly Perform an Adaptation only under
+ the terms of: (i) this License; (ii) a later version of this
+ License with the same License Elements as this License; (iii) a
+ Creative Commons jurisdiction license (either this or a later
+ license version) that contains the same License Elements as this
+ License (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative
+ Commons Compatible License. If you license the Adaptation under
+ one of the licenses mentioned in (iv), you must comply with the
+ terms of that license. If you license the Adaptation under the
+ terms of any of the licenses mentioned in (i), (ii) or (iii) (the
+ "Applicable License"), you must comply with the terms of the
+ Applicable License generally and the following provisions: (I) You
+ must include a copy of, or the URI for, the Applicable License
+ with every copy of each Adaptation You Distribute or Publicly
+ Perform; (II) You may not offer or impose any terms on the
+ Adaptation that restrict the terms of the Applicable License or
+ the ability of the recipient of the Adaptation to exercise the
+ rights granted to that recipient under the terms of the Applicable
+ License; (III) You must keep intact all notices that refer to the
+ Applicable License and to the disclaimer of warranties with every
+ copy of the Work as included in the Adaptation You Distribute or
+ Publicly Perform; (IV) when You Distribute or Publicly Perform the
+ Adaptation, You may not impose any effective technological
+ measures on the Adaptation that restrict the ability of a
+ recipient of the Adaptation from You to exercise the rights
+ granted to that recipient under the terms of the Applicable
+ License. This Section 4(b) applies to the Adaptation as
+ incorporated in a Collection, but this does not require the
+ Collection apart from the Adaptation itself to be made subject to
+ the terms of the Applicable License.
+ 3. If You Distribute, or Publicly Perform the Work or any Adaptations
+ or Collections, You must, unless a request has been made pursuant
+ to Section 4(a), keep intact all copyright notices for the Work
+ and provide, reasonable to the medium or means You are utilizing:
+ (i) the name of the Original Author (or pseudonym, if applicable)
+ if supplied, and/or if the Original Author and/or Licensor
+ designate another party or parties (e.g., a sponsor institute,
+ publishing entity, journal) for attribution ("Attribution
+ Parties") in Licensor's copyright notice, terms of service or by
+ other reasonable means, the name of such party or parties; (ii)
+ the title of the Work if supplied; (iii) to the extent reasonably
+ practicable, the URI, if any, that Licensor specifies to be
+ associated with the Work, unless such URI does not refer to the
+ copyright notice or licensing information for the Work; and (iv) ,
+ consistent with Ssection 3(b), in the case of an Adaptation, a
+ credit identifying the use of the Work in the Adaptation (e.g.,
+ "French translation of the Work by Original Author," or
+ "Screenplay based on original Work by Original Author"). The
+ credit required by this Section 4(c) may be implemented in any
+ reasonable manner; provided, however, that in the case of a
+ Adaptation or Collection, at a minimum such credit will appear, if
+ a credit for all contributing authors of the Adaptation or
+ Collection appears, then as part of these credits and in a manner
+ at least as prominent as the credits for the other contributing
+ authors. For the avoidance of doubt, You may only use the credit
+ required by this Section for the purpose of attribution in the
+ manner set out above and, by exercising Your rights under this
+ License, You may not implicitly or explicitly assert or imply any
+ connection with, sponsorship or endorsement by the Original
+ Author, Licensor and/or Attribution Parties, as appropriate, of
+ You or Your use of the Work, without the separate, express prior
+ written permission of the Original Author, Licensor and/or
+ Attribution Parties.
+ 4. Except as otherwise agreed in writing by the Licensor or as may be
+ otherwise permitted by applicable law, if You Reproduce,
+ Distribute or Publicly Perform the Work either by itself or as
+ part of any Adaptations or Collections, You must not distort,
+ mutilate, modify or take other derogatory action in relation to
+ the Work which would be prejudicial to the Original Author's honor
+ or reputation. Licensor agrees that in those jurisdictions (e.g.
+ Japan), in which any exercise of the right granted in Section 3(b)
+ of this License (the right to make Adaptations) would be deemed to
+ be a distortion, mutilation, modification or other derogatory
+ action prejudicial to the Original Author's honor and reputation,
+ the Licensor will waive or not assert, as appropriate, this
+ Section, to the fullest extent permitted by the applicable
+ national law, to enable You to reasonably exercise Your right
+ under Section 3(b) of this License (right to make Adaptations) but
+ not otherwise.
+ .
+ *5. Representations, Warranties and Disclaimer*
+ .
+ UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+ OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+ KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+ INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+ LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+ WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+ EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+ .
+ *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+ APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+ THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+ DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+ LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+ .
+ *7. Termination*
+ .
+ 1. This License and the rights granted hereunder will terminate
+ automatically upon any breach by You of the terms of this License.
+ Individuals or entities who have received Adaptations or
+ Collections from You under this License, however, will not have
+ their licenses terminated provided such individuals or entities
+ remain in full compliance with those licenses. Sections 1, 2, 5,
+ 6, 7, and 8 will survive any termination of this License.
+ 2. Subject to the above terms and conditions, the license granted
+ here is perpetual (for the duration of the applicable copyright in
+ the Work). Notwithstanding the above, Licensor reserves the right
+ to release the Work under different license terms or to stop
+ distributing the Work at any time; provided, however that any such
+ election will not serve to withdraw this License (or any other
+ license that has been, or is required to be, granted under the
+ terms of this License), and this License will continue in full
+ force and effect unless terminated as stated above.
+ .
+ *8. Miscellaneous*
+ .
+ 1. Each time You Distribute or Publicly Perform the Work or a
+ Collection, the Licensor offers to the recipient a license to the
+ Work on the same terms and conditions as the license granted to
+ You under this License.
+ 2. Each time You Distribute or Publicly Perform an Adaptation,
+ Licensor offers to the recipient a license to the original Work on
+ the same terms and conditions as the license granted to You under
+ this License.
+ 3. If any provision of this License is invalid or unenforceable under
+ applicable law, it shall not affect the validity or enforceability
+ of the remainder of the terms of this License, and without further
+ action by the parties to this agreement, such provision shall be
+ reformed to the minimum extent necessary to make such provision
+ valid and enforceable.
+ 4. No term or provision of this License shall be deemed waived and no
+ breach consented to unless such waiver or consent shall be in
+ writing and signed by the party to be charged with such waiver or
+ consent.
+ 5. This License constitutes the entire agreement between the parties
+ with respect to the Work licensed here. There are no
+ understandings, agreements or representations with respect to the
+ Work not specified here. Licensor shall not be bound by any
+ additional provisions that may appear in any communication from
+ You. This License may not be modified without the mutual written
+ agreement of the Licensor and You.
+ 6. The rights granted under, and the subject matter referenced, in
+ this License were drafted utilizing the terminology of the Berne
+ Convention for the Protection of Literary and Artistic Works (as
+ amended on September 28, 1979), the Rome Convention of 1961, the
+ WIPO Copyright Treaty of 1996, the WIPO Performances and
+ Phonograms Treaty of 1996 and the Universal Copyright Convention
+ (as revised on July 24, 1971). These rights and subject matter
+ take effect in the relevant jurisdiction in which the License
+ terms are sought to be enforced according to the corresponding
+ provisions of the implementation of those treaty provisions in the
+ applicable national law. If the standard suite of rights granted
+ under applicable copyright law includes additional rights not
+ granted under this License, such additional rights are deemed to
+ be included in the License; this License is not intended to
+ restrict the license of any rights under applicable law.
+
+License: GPL-2
+ This program 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; version 2.
+ .
+ On Debian systems, the complete text of version 2 of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-2'.
+
+License: GPL-2+
+ This program 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 2, or (at your option)
+ any later version.
+ .
+ On Debian systems, the complete text of version 2 of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-2'
+
+License: GPL-3+
+ This program 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, or (at your option)
+ any later version.
+ .
+ On Debian systems, the complete text of version 3 of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-3'.
+
+License: LGPL-2.1
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; version 2.1.
+ .
+ On Debian systems, the complete text of version 2.1 of the GNU Lesser
+ General Public License can be found in `/usr/share/common-licenses/LGPL-2.1'.
+
+License: LGPL-2.1+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+ .
+ On Debian systems, the complete text of version 2.1 of the GNU Lesser
+ General Public License can be found in `/usr/share/common-licenses/LGPL-2.1'.
+
+License: Artistic
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the Artistic License, which comes with Perl.
+ .
+ On Debian systems, the complete text of the Artistic License can be
+ found in `/usr/share/common-licenses/Artistic'.
+
+License: GPL-1+
+ This program 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 1, or (at your option)
+ any later version.
+ .
+ On Debian systems, the complete text of version 1 of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-1'.
--- /dev/null
+#!/bin/sh
+
+# Include the wrappers utility script
+. /usr/lib/java-wrappers/java-wrappers.sh
+
+# We need openjdk7/6 or sun6 runtime.
+find_java_runtime openjdk sun6
+
+find_jars \
+ jabref \
+ JPFCodeGenerator-rt \
+ antlr \
+ antlr3 \
+ commons-logging \
+ glazedlists \
+ jempbox \
+ jgoodies-common \
+ jgoodies-forms \
+ jgoodies-looks \
+ jpf \
+ jpf-boot \
+ microba \
+ mysql-connector-java \
+ pdfbox \
+ postgresql \
+ spin
+
+run_java net.sf.jabref.JabRefMain "$@"
--- /dev/null
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH JABREF 1 "September 12, 2009"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+jabref \- graphical frontend to manage BibTeX databases
+.SH SYNOPSIS
+.B jabref [options] [bibtex\-file]
+.SH DESCRIPTION
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+\fBJabRef\fP is a graphical Java application for editing bibtex (.bib)
+databases. JabRef lets you organize your entries into overlapping
+logical groups, and with a single click limit your view to a single
+group or an intersection or union of several groups. You can customize
+the entry information shown in the main window, and sort by any of the
+standard Bibtex fields. JabRef can autogenerate bibtex keys for your
+entries. JabRef also lets you easily link to PDF or web sources for your
+reference entries.
+.br
+JabRef can import from and export to several formats, and you can
+customize export filters. JabRef can be run as a command line application
+to convert from any import format to any export format.
+.SH OPTIONS
+.TP
+\fB\-o\fR, \fB\-\-output\fR=<STRING>
+Output or export file: filename[,export format]
+.TP
+\fB\-p\fR, \fB\-\-primp\fR=<STRING>
+Import preferences from file
+.TP
+\fB\-f\fR, \fB\-\-fetch\fR=<STRING>
+Run Fetcher, e.g. "\-\-fetch=Medline:cancer"
+.TP
+\fB\-n\fR, \fB\-\-nogui\fR=<BOOLEAN>
+No GUI. Only process command line options.
+.TP
+\fB\-a\fR, \fB\-\-aux\fR=<STRING>
+Subdatabase from aux: file[.aux],new[.bib]
+.TP
+\fB\-h\fR, \fB\-\-help\fR=<BOOLEAN>
+Display help on command line options
+.TP
+\fB\-b\fR, \fB\-\-blank\fR=<BOOLEAN>
+Do not open any files at startup
+.TP
+\fB\-\-importToOpen\fR=<STRING>
+Import to open tab
+.TP
+\fB\-i\fR, \fB\-\-import\fR=<STRING>
+Import file: filename[,import format]
+.TP
+\fB\-s\fR, \fB\-\-nosplash\fR=<BOOLEAN>
+Do not show splash window at startup
+.TP
+\fB\-x\fR, \fB\-\-prexp\fR=<STRING>
+Export preferences to file
+.TP
+\fB\-v\fR, \fB\-\-version\fR=<BOOLEAN>
+Display version
+.TP
+\fB\-l\fR, \fB\-\-loads\fR=<BOOLEAN>
+Load session
+.SH JAVA-WRAPPERS NOTE
+This program is a shell script wrapper based on
+.BR java-wrappers (7).
+You therefore benefit from several features; please see the
+.BR java-wrappers (7)
+manual page for more information about them.
+.SH SEE ALSO
+the included help
+.br
+http://jabref.sourceforge.net/
+.br
+.BR java-wrappers (7)
+.SH AUTHOR
+jabref was written by Morten O. Alver and Nizar Batada.
+.PP
+This manual page was written by gregor herrmann <gregor+debian@comodo.priv.at>,
+for the Debian project (but may be used by others).
--- /dev/null
+Quite some bugs reported against JabRef are actually problems with the used
+Java Virtual machine.
+
+Before filing a bug against JabRef please make sure to test with all
+installed JVMs, and provide the output of the jabref wrapper called with the
+debug parameter in the bug report, e.g.:
+
+$ DEBUG_WRAPPER=1 JAVA_HOME=/usr/lib/jvm/java-6-openjdk/ jabref
+$ DEBUG_WRAPPER=1 JAVA_HOME=/usr/lib/jvm/java-6-sun jabref
+
+Please also go through the bug reports against the JVM you're using at
+http://bugs.debian.org/ and check if similar problems are already reported
+there.
--- /dev/null
+[Desktop Entry]
+Name=JabRef
+Comment=Graphical editor for BibTex bibliographies
+Comment[de]=Grafischer Editor für BibTex-Bibliographien
+Exec=jabref %f
+Icon=JabRef-icon-48
+Terminal=false
+Type=Application
+Categories=Office;Database;
+MimeType=text/x-bibtex;
+Keywords=BibTex;
--- /dev/null
+src/txt/README
--- /dev/null
+build/lib/JabRef-2.10b.jar usr/share/jabref
+build/*.xpm usr/share/pixmaps
+debian/jabref.desktop usr/share/applications
+src/images/JabRef-icon-48.png usr/share/pixmaps
--- /dev/null
+usr/share/jabref/JabRef-2.10b.jar usr/share/java/jabref.jar
--- /dev/null
+debian/jabref.1
--- /dev/null
+?package(jabref):needs="x11" \
+section="Applications/Data Management" \
+title="JabRef" \
+command="jabref" \
+icon="/usr/share/pixmaps/jabref32.xpm" \
+icon32x32="/usr/share/pixmaps/jabref32.xpm" \
+icon16x16="/usr/share/pixmaps/jabref16.xpm"
--- /dev/null
+text/x-bibtex; /usr/bin/jabref %s; edit=/usr/bin/jabref %s; description="BibTex document"; nametemplate=%s.bib; test=test -n "$DISPLAY"
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info" >
+ <mime-type type="text/x-bibtex">
+ <sub-class-of type="text/plain"/>
+ <comment xml:lang="en">BibTeX document</comment>
+ <comment xml:lang="bg">Документ, формат BibTeX</comment>
+ <comment xml:lang="cs">Dokument BibTeX</comment>
+ <comment xml:lang="de">BibTeX-Dokument</comment>
+ <comment xml:lang="es">Documento BibTeX</comment>
+ <comment xml:lang="eu">BibTeX dokumentua</comment>
+ <comment xml:lang="hu">BibTeX dokumentum</comment>
+ <comment xml:lang="it">Documento BibTeX</comment>
+ <comment xml:lang="ko">BibTeX 문서</comment>
+ <comment xml:lang="nb">BibTeX-dokument</comment>
+ <comment xml:lang="nl">BibTeX-document</comment>
+ <comment xml:lang="nn">BibTeX-dokument</comment>
+ <comment xml:lang="sv">BibTeX-dokument</comment>
+ <comment xml:lang="uk">Документ BibTeX</comment>
+ <comment xml:lang="vi">Tà i liệu BibTeX</comment>
+ <glob pattern="*.bib"/>
+ </mime-type>
+</mime-info>
--- /dev/null
+Description: Use debian libraries and disable unnecesary unjarlib target,
+Forwarded: not needed
+Author: Gerardo Curiel <gerardo@sophie.gerardo.com.ve>,
+ Philip Rinn <rinni@gmx.net>
+Reviewed-by: gregor herrmann <gregoa@debian.org>
+Last-Update: 2013-01-01
+
+--- a/build.xml
++++ b/build.xml
+@@ -76,8 +76,10 @@
+ <property name="help.dir" value="${src.dir}/help" />
+ <property name="extensions.dir" value="${src.dir}/extensions" />
+ <property name="layout.dir" value="${src.dir}/resource/layout" />
+- <property name="lib.dir" value="lib" />
+- <property name="buildlib.dir" value="buildlib" />
++ <property name="lib.dir" value="/usr/share/java" />
++ <property name="oo.dir" value="/usr/lib/libreoffice/program/classes" />
++ <property name="ure.dir" value="/usr/lib/ure/share/java" />
++ <property name="buildlib.dir" value="/usr/share/java" />
+ <property name="tests.dir" value="${src.dir}/tests" />
+
+ <property name="osxbin.dir" value="osx" />
+@@ -102,33 +104,35 @@
+
+ <fileset id="jarsFileset" dir="${lib.dir}">
+ <include name="antlr.jar" />
+- <include name="antlr-3.4-complete.jar" />
+- <include name="jgoodies-common-1.4.0.jar" />
+- <include name="jgoodies-looks-2.5.2.jar" />
+- <include name="jgoodies-forms-1.6.0.jar" />
+- <include name="jayatana-1.2.4.jar" />
++ <include name="antlr3.jar" />
++ <include name="antlr3-runtime.jar" />
++ <include name="jgoodies-common.jar" />
++ <include name="jgoodies-looks.jar" />
++ <include name="jgoodies-forms.jar" />
+ <include name="spin.jar" />
+- <include name="glazedlists-1.8.0_java15.jar" />
++ <include name="glazedlists.jar" />
+ <include name="microba.jar" />
+- <include name="pdfbox-1.7.1.jar" />
+- <include name="jempbox-1.7.1.jar" />
+- <include name="fontbox-1.7.1.jar" />
++ <include name="pdfbox.jar" />
++ <include name="jempbox.jar" />
++ <include name="fontbox.jar" />
+ <include name="zoom-java.jar" />
+- <include name="mysql-connector-java-5.0.7-bin.jar" />
+- <include name="postgresql-9.2-1002.jdbc4.jar" />
++ <include name="mysql-connector-java.jar" />
++ <include name="postgresql.jar" />
+ <!-- Plugin runtime dependencies -->
+- <include name="plugin/JPFCodeGenerator-rt.jar" />
+- <include name="plugin/jpf.jar" />
+- <include name="plugin/jpf-boot.jar" />
+- <include name="plugin/commons-logging.jar" />
++ <include name="JPFCodeGenerator-rt.jar" />
++ <include name="jpf.jar" />
++ <include name="jpf-boot.jar" />
++ <include name="commons-logging.jar" />
+ </fileset>
+
+ <!-- Openoffice connection dependencies. Compile-time only -->
+- <fileset id="ooFileset" dir="${lib.dir}">
+- <include name="oo/unoil.jar" />
+- <include name="oo/ridl.jar" />
+- <include name="oo/juh.jar" />
+- <include name="oo/jurt.jar" />
++ <fileset id="ureFileset" dir="${ure.dir}">
++ <include name="ridl.jar" />
++ <include name="juh.jar" />
++ <include name="jurt.jar" />
++ </fileset>
++ <fileset id="ooFileset" dir="${oo.dir}">
++ <include name="unoil.jar" />
+ </fileset>
+
+ <!-- Done by MrDlib -->
+@@ -151,14 +155,15 @@
+ <!-- Done by MrDlib -->
+ <fileset refid="jarsFileset" />
+ <fileset refid="ooFileset" />
++ <fileset refid="ureFileset" />
+ </path>
+
+ <!-- Classpath for running the code generator -->
+ <path id="codegenerator">
+- <pathelement location="${lib.dir}/plugin/JPFCodeGenerator.jar" />
+- <pathelement location="${lib.dir}/plugin/jpf.jar" />
+- <pathelement location="${lib.dir}/plugin/jpf-boot.jar" />
+- <pathelement location="${lib.dir}/plugin/velocity-dep-1.5.jar" />
++ <pathelement location="${lib.dir}/JPFCodeGenerator.jar" />
++ <pathelement location="${lib.dir}/jpf.jar" />
++ <pathelement location="${lib.dir}/jpf-boot.jar" />
++ <pathelement location="${lib.dir}/velocity.jar" />
+ </path>
+
+ <!-- Classpath for tests -->
+@@ -238,7 +243,7 @@
+ </target>
+
+ <!-- Jars up project -->
+- <target name="jars" depends="build, unjarlib">
++ <target name="jars" depends="build">
+ <mkdir dir="${build.lib}" />
+
+ <mkdir dir="${build.tmp}" />
+@@ -644,8 +649,6 @@
+ </jalopy>
+ </target>
+
+- <taskdef name="jarbundler" classpath="${buildlib.dir}/jarbundler-2.2.0.jar" classname="net.sourceforge.jarbundler.JarBundler" />
+-
+ <target name="compresssrc">
+ <!-- clone current repo into tmp dir. Reason: we want to have a clean src.zip, but do not want to execute "git clean -xdf" to allow developers having some temporary files (and user.properties) -->
+ <mkdir dir="${temp.dir}"/>
--- /dev/null
+Description: file was removed in 2.9.1 but doesn't get generated either ...
+Origin: vendor
+Forwarded: info via mail
+Author: gregor herrmann <gregoa@debian.org>
+Last-Update: 2013-01-01
+
+--- /dev/null
++++ b/src/java/net/sf/jabref/plugin/core/generated/_JabRefPlugin.java
+@@ -0,0 +1,360 @@
++package net.sf.jabref.plugin.core.generated;\r
++\r
++import java.net.URL;\r
++import java.util.ArrayList;\r
++import java.util.List;\r
++import net.sf.jabref.plugin.util.RuntimeExtension;\r
++import org.java.plugin.Plugin;\r
++import org.java.plugin.PluginLifecycleException;\r
++import org.java.plugin.registry.Extension;\r
++import org.java.plugin.registry.ExtensionPoint;\r
++\r
++import org.apache.commons.logging.Log;\r
++import org.apache.commons.logging.LogFactory;\r
++\r
++/**\r
++ * Do not modify this file, as it was auto generated and will be overwritten!\r
++ * User modifications should go in net.sf.jabref.plugin.core.JabRefPlugin.\r
++ */\r
++public abstract class _JabRefPlugin extends Plugin {\r
++\r
++ public static String getId(){\r
++ return "net.sf.jabref.core";\r
++ }\r
++\r
++ static Log log = LogFactory.getLog(_JabRefPlugin.class);\r
++\r
++ public List<ExportFormatTemplateExtension> getExportFormatTemplateExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "ExportFormatTemplate");\r
++ List<ExportFormatTemplateExtension> result = new ArrayList<ExportFormatTemplateExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new ExportFormatTemplateExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class ExportFormatTemplateExtension extends RuntimeExtension {\r
++ public ExportFormatTemplateExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ public String getDisplayName(){\r
++ return getStringParameter("displayName");\r
++ }\r
++ \r
++ \r
++ public String getConsoleName(){\r
++ return getStringParameter("consoleName");\r
++ }\r
++ \r
++ \r
++ public String getLayoutFilename(){\r
++ return getStringParameter("layoutFilename");\r
++ }\r
++ \r
++ \r
++ public URL getDirAsUrl(){\r
++ return getResourceParameter("dir");\r
++ }\r
++ \r
++ public URL getDirAsUrl(String relativePath){\r
++ return getResourceParameter("dir", relativePath);\r
++ }\r
++ \r
++ \r
++ public String getExtension(){\r
++ return getStringParameter("extension");\r
++ }\r
++ \r
++ \r
++ public String getEncoding(){\r
++ return getStringParameter("encoding");\r
++ }\r
++ \r
++ }\r
++\r
++ public List<ExportFormatExtension> getExportFormatExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "ExportFormat");\r
++ List<ExportFormatExtension> result = new ArrayList<ExportFormatExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new ExportFormatExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class ExportFormatExtension extends RuntimeExtension {\r
++ public ExportFormatExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ /**\r
++ * @return A singleton instance of the class parameter or null if the class could not be found!\r
++ */\r
++ public net.sf.jabref.export.IExportFormat getExportFormat(){\r
++ return (net.sf.jabref.export.IExportFormat)getClassParameter("exportFormat");\r
++ }\r
++ \r
++ \r
++ public String getDisplayName(){\r
++ return getStringParameter("displayName");\r
++ }\r
++ \r
++ \r
++ public String getConsoleName(){\r
++ return getStringParameter("consoleName");\r
++ }\r
++ \r
++ \r
++ public String getExtension(){\r
++ return getStringParameter("extension");\r
++ }\r
++ \r
++ }\r
++\r
++ public List<SidePanePluginExtension> getSidePanePluginExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "SidePanePlugin");\r
++ List<SidePanePluginExtension> result = new ArrayList<SidePanePluginExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new SidePanePluginExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class SidePanePluginExtension extends RuntimeExtension {\r
++ public SidePanePluginExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ /**\r
++ * @return A singleton instance of the class parameter or null if the class could not be found!\r
++ */\r
++ public net.sf.jabref.plugin.SidePanePlugin getSidePanePlugin(){\r
++ return (net.sf.jabref.plugin.SidePanePlugin)getClassParameter("sidePanePlugin");\r
++ }\r
++ \r
++ \r
++ public String getName(){\r
++ return getStringParameter("name");\r
++ }\r
++ \r
++ \r
++ public String getDescription(){\r
++ return getStringParameter("description");\r
++ }\r
++ \r
++ }\r
++\r
++ public List<EntryFetcherExtension> getEntryFetcherExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "EntryFetcher");\r
++ List<EntryFetcherExtension> result = new ArrayList<EntryFetcherExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new EntryFetcherExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class EntryFetcherExtension extends RuntimeExtension {\r
++ public EntryFetcherExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ /**\r
++ * @return A singleton instance of the class parameter or null if the class could not be found!\r
++ */\r
++ public net.sf.jabref.imports.EntryFetcher getEntryFetcher(){\r
++ return (net.sf.jabref.imports.EntryFetcher)getClassParameter("entryFetcher");\r
++ }\r
++ \r
++ \r
++ public String getName(){\r
++ return getStringParameter("name");\r
++ }\r
++ \r
++ \r
++ public String getDescription(){\r
++ return getStringParameter("description");\r
++ }\r
++ \r
++ }\r
++\r
++ public List<ExportFormatProviderExtension> getExportFormatProviderExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "ExportFormatProvider");\r
++ List<ExportFormatProviderExtension> result = new ArrayList<ExportFormatProviderExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new ExportFormatProviderExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class ExportFormatProviderExtension extends RuntimeExtension {\r
++ public ExportFormatProviderExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ /**\r
++ * @return A singleton instance of the class parameter or null if the class could not be found!\r
++ */\r
++ public net.sf.jabref.export.IExportFormatProvider getFormatProvider(){\r
++ return (net.sf.jabref.export.IExportFormatProvider)getClassParameter("formatProvider");\r
++ }\r
++ \r
++ \r
++ public String getName(){\r
++ return getStringParameter("name");\r
++ }\r
++ \r
++ \r
++ public String getDescription(){\r
++ return getStringParameter("description");\r
++ }\r
++ \r
++ }\r
++\r
++ public List<PushToApplicationExtension> getPushToApplicationExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "PushToApplication");\r
++ List<PushToApplicationExtension> result = new ArrayList<PushToApplicationExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new PushToApplicationExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class PushToApplicationExtension extends RuntimeExtension {\r
++ public PushToApplicationExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ /**\r
++ * @return A singleton instance of the class parameter or null if the class could not be found!\r
++ */\r
++ public net.sf.jabref.external.PushToApplication getPushToApp(){\r
++ return (net.sf.jabref.external.PushToApplication)getClassParameter("pushToApp");\r
++ }\r
++ \r
++ \r
++ public String getName(){\r
++ return getStringParameter("name");\r
++ }\r
++ \r
++ \r
++ public String getDescription(){\r
++ return getStringParameter("description");\r
++ }\r
++ \r
++ }\r
++\r
++ public List<LayoutFormatterExtension> getLayoutFormatterExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "LayoutFormatter");\r
++ List<LayoutFormatterExtension> result = new ArrayList<LayoutFormatterExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new LayoutFormatterExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class LayoutFormatterExtension extends RuntimeExtension {\r
++ public LayoutFormatterExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ /**\r
++ * @return A singleton instance of the class parameter or null if the class could not be found!\r
++ */\r
++ public net.sf.jabref.export.layout.LayoutFormatter getLayoutFormatter(){\r
++ return (net.sf.jabref.export.layout.LayoutFormatter)getClassParameter("layoutFormatter");\r
++ }\r
++ \r
++ \r
++ public String getDescription(){\r
++ return getStringParameter("description");\r
++ }\r
++ \r
++ \r
++ public String getName(){\r
++ return getStringParameter("name");\r
++ }\r
++ \r
++ }\r
++\r
++ public List<ImportFormatExtension> getImportFormatExtensions(){\r
++ ExtensionPoint extPoint = getManager().getRegistry().getExtensionPoint(getId(), "ImportFormat");\r
++ List<ImportFormatExtension> result = new ArrayList<ImportFormatExtension>();\r
++ for (Extension ext : extPoint.getConnectedExtensions()) {\r
++ try {\r
++ result.add(new ImportFormatExtension(getManager().getPlugin(\r
++ ext.getDeclaringPluginDescriptor().getId()), ext));\r
++ } catch (PluginLifecycleException e) {\r
++ log.error("Failed to activate plug-in " + ext.getDeclaringPluginDescriptor().getId(), e);\r
++ }\r
++ }\r
++ return result;\r
++ }\r
++\r
++ public static class ImportFormatExtension extends RuntimeExtension {\r
++ public ImportFormatExtension(Plugin declaringPlugin, Extension wrapped){\r
++ super(declaringPlugin, wrapped);\r
++ }\r
++ \r
++ \r
++ /**\r
++ * @return A singleton instance of the class parameter or null if the class could not be found!\r
++ */\r
++ public net.sf.jabref.imports.ImportFormat getImportFormat(){\r
++ return (net.sf.jabref.imports.ImportFormat)getClassParameter("importFormat");\r
++ }\r
++ \r
++ \r
++ public String getName(){\r
++ return getStringParameter("name");\r
++ }\r
++ \r
++ \r
++ public String getDescription(){\r
++ return getStringParameter("description");\r
++ }\r
++ \r
++ }\r
++\r
++}\r
--- /dev/null
+Description: workaround error:
+ [javac] /tmp/buildd/jabref-2.10~beta1+ds/src/java/net/sf/jabref/FileTab.java:40: type javax.swing.JComboBox does not take parameters
+ [javac] private JComboBox<String> valueDelimiter;
+ [javac] ^
+ .
+ [javac] /tmp/buildd/jabref-2.10~beta1+ds/src/java/net/sf/jabref/FileTab.java:70: type javax.swing.JComboBox does not take parameters
+ [javac] valueDelimiter = new JComboBox<String>(new String[]{
+ [javac] ^
+Origin: vendor
+Forwarded: via private mail
+Author: gregor herrmann <gregoa@debian.org>
+Last-Update: 2013-03-30
+Applied-Upstream: git, beta_2.10 branch, 2711226bada0120f9a98d78834e7f46f3e9a3390
+
+--- a/src/java/net/sf/jabref/FileTab.java
++++ b/src/java/net/sf/jabref/FileTab.java
+@@ -37,7 +37,7 @@
+
+ private JCheckBox backup, openLast, autoDoubleBraces, autoSave,
+ promptBeforeUsingAutoSave, includeEmptyFields, camelCase, sameColumn;
+- private JComboBox<String> valueDelimiter;
++ private JComboBox valueDelimiter;
+ private JRadioButton
+ saveOriginalOrder, saveAuthorOrder, saveTableOrder, saveTitleOrder,
+ exportOriginalOrder, exportAuthorOrder, exportTableOrder, exportTitleOrder,
+@@ -67,7 +67,7 @@
+ autoSave = new JCheckBox(Globals.lang("Autosave"));
+ promptBeforeUsingAutoSave = new JCheckBox(Globals.lang("Prompt before recovering a database from an autosave file"));
+ autoSaveInterval = new JSpinner(new SpinnerNumberModel(1, 1, 60, 1));
+- valueDelimiter = new JComboBox<String>(new String[]{
++ valueDelimiter = new JComboBox(new String[]{
+ Globals.lang("Quotes") + ": \", \"",
+ Globals.lang("Curly Brackets") + ": {, }" });
+ includeEmptyFields = new JCheckBox(Globals.lang("Include empty fields"));
--- /dev/null
+Description: This is the diff between the debian branch and the v_2.10b tag
+ in upstream git; the debian branch was created for us with the purpose to
+ disable the mrDlib functionality which needs libraries not packaged in
+ Debian yet.
+Origin: upstream git
+Forwarded: not-needed
+Author: Oliver Kopp <oliver.kopp@gmail.com>
+Reviewed-by: gregor herrmann <gregoa@debian.org>
+Last-Update: 2013-03-29
+
+--- a/.classpath
++++ b/.classpath
+@@ -11,8 +11,6 @@
+ <classpathentry exported="true" kind="lib" path="lib/plugin/JPFCodeGenerator-rt.jar" sourcepath="/JPFCodeGenerator/src"/>
+ <classpathentry exported="true" kind="lib" path="lib/glazedlists-1.8.0_java15.jar"/>
+ <classpathentry kind="lib" path="lib/mysql-connector-java-5.0.7-bin.jar"/>
+- <classpathentry kind="lib" path="lib/spl/sciplore/xstream-1.4.1.jar"/>
+- <classpathentry kind="lib" path="lib/spl/sciplore/mrDlib-serialization-api.jar" sourcepath="/Serialization API"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
+ <accessrules>
+ <accessrule kind="accessible" pattern="**"/>
+@@ -21,14 +19,10 @@
+ <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3"/>
+ <classpathentry exported="true" kind="con" path="org.eclipse.jdt.USER_LIBRARY/resources"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/sciplore"/>
+- <classpathentry kind="lib" path="lib/spl/jersey/mimepull-1.3.jar"/>
+ <classpathentry kind="lib" path="lib/oo/juh.jar"/>
+ <classpathentry kind="lib" path="lib/oo/jurt.jar"/>
+ <classpathentry kind="lib" path="lib/oo/ridl.jar"/>
+ <classpathentry kind="lib" path="lib/oo/unoil.jar"/>
+- <classpathentry kind="lib" path="lib/spl/jersey/jersey-client-1.14.jar"/>
+- <classpathentry kind="lib" path="lib/spl/jersey/jersey-core-1.14.jar"/>
+- <classpathentry kind="lib" path="lib/spl/jersey/jersey-multipart-1.14.jar"/>
+ <classpathentry kind="lib" path="lib/antlr-3.4-complete.jar"/>
+ <classpathentry kind="lib" path="lib/jgoodies-common-1.4.0.jar"/>
+ <classpathentry kind="lib" path="lib/jgoodies-forms-1.6.0.jar"/>
+@@ -36,7 +30,6 @@
+ <classpathentry kind="lib" path="lib/fontbox-1.7.1.jar"/>
+ <classpathentry kind="lib" path="lib/jempbox-1.7.1.jar"/>
+ <classpathentry kind="lib" path="lib/pdfbox-1.7.1.jar"/>
+- <classpathentry kind="lib" path="lib/jayatana-1.2.4.jar"/>
+ <classpathentry kind="lib" path="lib/postgresql-9.2-1002.jdbc4.jar"/>
+ <classpathentry kind="output" path="bin"/>
+ </classpath>
+--- a/src/java/net/sf/jabref/ImportSettingsTab.java
++++ b/src/java/net/sf/jabref/ImportSettingsTab.java
+@@ -44,10 +44,8 @@
+
+ private JRadioButton radioButtonXmp;
+ private JRadioButton radioButtonPDFcontent;
+- private JRadioButton radioButtonMrDlib;
+ private JRadioButton radioButtonNoMeta;
+ private JRadioButton radioButtononlyAttachPDF;
+- private JRadioButton radioButtonUpdateEmptyFields;
+ private JCheckBox useDefaultPDFImportStyle;
+
+ private JTextField fileNamePattern;
+@@ -59,17 +57,12 @@
+ radioButtonNoMeta = new JRadioButton(Globals.lang("Create_blank_entry_linking_the_PDF"));
+ radioButtonXmp = new JRadioButton(Globals.lang("Create_entry_based_on_XMP_data"));
+ radioButtonPDFcontent = new JRadioButton(Globals.lang("Create_entry_based_on_content"));
+- radioButtonMrDlib = new JRadioButton(Globals.lang("Create_entry_based_on_data_fetched_from")+" Mr.DLib");
+ radioButtononlyAttachPDF = new JRadioButton(Globals.lang("Only_attach_PDF"));
+- radioButtonUpdateEmptyFields = new JRadioButton(Globals.lang("Update_empty_fields_with_data_fetched_from")
+- +" Mr.DLib");
+ ButtonGroup bg = new ButtonGroup();
+ bg.add(radioButtonNoMeta);
+ bg.add(radioButtonXmp);
+ bg.add(radioButtonPDFcontent);
+- bg.add(radioButtonMrDlib);
+ bg.add(radioButtononlyAttachPDF);
+- bg.add(radioButtonUpdateEmptyFields);
+
+ useDefaultPDFImportStyle = new JCheckBox(Globals.lang("Always use this PDF import style (and do not ask for each import)"));
+
+@@ -96,15 +89,9 @@
+ builder.append(radioButtonPDFcontent);
+ builder.nextLine();
+ builder.append(pan);
+- builder.append(radioButtonMrDlib);
+- builder.nextLine();
+- builder.append(pan);
+ builder.append(radioButtononlyAttachPDF);
+ builder.nextLine();
+ builder.append(pan);
+- builder.append(radioButtonUpdateEmptyFields);
+- builder.nextLine();
+- builder.append(pan);
+ builder.append(useDefaultPDFImportStyle);
+ builder.nextLine();
+
+@@ -136,15 +123,9 @@
+ case ImportDialog.CONTENT:
+ radioButtonPDFcontent.setSelected(true);
+ break;
+- case ImportDialog.MRDLIB:
+- radioButtonMrDlib.setSelected(true);
+- break;
+ case ImportDialog.ONLYATTACH:
+ radioButtononlyAttachPDF.setSelected(true);
+ break;
+- case ImportDialog.UPDATEEMPTYFIELDS:
+- radioButtonUpdateEmptyFields.setSelected(true);
+- break;
+ default:
+ // fallback
+ radioButtonPDFcontent.setSelected(true);
+@@ -162,12 +143,9 @@
+ style = ImportDialog.XMP;
+ else if (radioButtonPDFcontent.isSelected())
+ style = ImportDialog.CONTENT;
+- else if (radioButtonMrDlib.isSelected())
+- style = ImportDialog.MRDLIB;
+ else if (radioButtononlyAttachPDF.isSelected())
+ style = ImportDialog.ONLYATTACH;
+- else if (radioButtonUpdateEmptyFields.isSelected())
+- style = ImportDialog.UPDATEEMPTYFIELDS;
++ else throw new IllegalStateException();
+ Globals.prefs.putInt(PREF_IMPORT_DEFAULT_PDF_IMPORT_STYLE, style);
+ Globals.prefs.put(PREF_IMPORT_FILENAMEPATTERN, fileNamePattern.getText());
+ }
+--- a/src/java/net/sf/jabref/JabRefFrame.java
++++ b/src/java/net/sf/jabref/JabRefFrame.java
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2003-2012 JabRef contributors.
++/* Copyright (C) 2003-2011 JabRef contributors.
+ This program 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 2 of the License, or
+@@ -40,8 +40,6 @@
+ import javax.swing.event.ChangeEvent;
+ import javax.swing.event.ChangeListener;
+
+-import org.java.ayatana.ApplicationMenu;
+-
+ import net.sf.jabref.export.*;
+ import net.sf.jabref.external.ExternalFileTypeEditor;
+ import net.sf.jabref.external.PushToApplicationButton;
+@@ -562,13 +560,6 @@
+ }
+ }
+ });
+-
+- // The following sets up integration with Unity's global menu, but currently (Nov 18, 2012)
+- // this doesn't work with OpenJDK 6 (leads to crash), only with 7.
+- String javaVersion = System.getProperty("java.version", null);
+- if (javaVersion.compareTo("1.7") >= 0)
+- ApplicationMenu.tryInstall(this);
+-
+ }
+
+ public void setWindowTitle() {
+--- a/src/java/spl/DocumentWrapper.java
++++ /dev/null
+@@ -1,272 +0,0 @@
+-package spl;\r
+-\r
+-import java.util.List;\r
+-\r
+-import org.sciplore.beans.Abstract;\r
+-import org.sciplore.beans.Author;\r
+-import org.sciplore.beans.Authors;\r
+-import org.sciplore.beans.Document;\r
+-import org.sciplore.formatter.Bean;\r
+-import org.sciplore.formatter.SimpleTypeElementBean;\r
+-\r
+-/**\r
+- * Created by IntelliJ IDEA.\r
+- * User: Christoph Arbeit\r
+- * Date: 10.09.2010\r
+- * Time: 20:02:51\r
+- * To change this template use File | Settings | File Templates.\r
+- */\r
+-public class DocumentWrapper {\r
+-\r
+- Document xmlDocument;\r
+-\r
+- public DocumentWrapper(Document xmlDocument) {\r
+- this.xmlDocument = xmlDocument;\r
+- }\r
+-\r
+- public Document getXmlDocument() {\r
+- return xmlDocument;\r
+- }\r
+-\r
+- public void setXmlDocument(Document xmlDocument) {\r
+- this.xmlDocument = xmlDocument;\r
+- }\r
+-\r
+- public String getTitle(){\r
+- if(this.hasTitle()){\r
+- return xmlDocument.getTitle().getValue();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasTitle(){\r
+- return (xmlDocument.getTitle() != null && xmlDocument.getTitle().getValue() != null && !xmlDocument.getTitle().getValue().isEmpty());\r
+- }\r
+-\r
+- public String getAbstract(){\r
+- if(this.hasAbstract()){\r
+- return ((Abstract)xmlDocument.getAbstract()).getValue();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasAbstract(){\r
+- return (xmlDocument.getAbstract() != null && ((Abstract)xmlDocument.getAbstract()).getValue() != null && !((Abstract)xmlDocument.getAbstract()).getValue().isEmpty());\r
+- }\r
+-\r
+- public String getAuthors(String seperator){\r
+- if(this.hasAuthors()){\r
+- List<Bean> authors = xmlDocument.getAuthors().getCollection();\r
+- authors = this.sortAuthors(authors);\r
+- String value = "";\r
+- int i = 1;\r
+- for(Bean author : authors){\r
+- if(i < authors.size()){\r
+- value = value + getNameComplete((Author)author);\r
+- value = value + " " + seperator + " ";\r
+- }\r
+- else{\r
+- value = value + getNameComplete((Author)author);\r
+- }\r
+- i++;\r
+- }\r
+- return value;\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasAuthors(){\r
+- return (xmlDocument.getAuthors() != null && xmlDocument.getAuthors().getCollection() != null && !xmlDocument.getAuthors().getCollection().isEmpty());\r
+- }\r
+-\r
+- /* public String getKeyWords(){\r
+- if(this.hasKeyWords()){\r
+- List<XmlKeyword> keywords = xmlDocument.getKeywords().getKeywords();\r
+- String value = "";\r
+- int i = 1;\r
+- for(XmlKeyword keyword : keywords){\r
+- if(i < keywords.size()){\r
+- value = value + keyword.getValue();\r
+- value = value + ", ";\r
+- }\r
+- else{\r
+- value = value + keyword.getValue();\r
+- }\r
+- i++;\r
+- }\r
+- return value;\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasKeyWords(){\r
+- return (xmlDocument.getKeywords() != null && xmlDocument.getKeywords().getKeywords() != null && !xmlDocument.getKeywords().getKeywords().isEmpty());\r
+- }\r
+-*/\r
+-\r
+- public String getDoi(){\r
+- if(this.hasDoi()){\r
+- return this.getSimpleTypeValue(xmlDocument.getDoi());\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasDoi(){\r
+- return (xmlDocument.getDoi() != null && this.getSimpleTypeValue(xmlDocument.getDoi()) != null && !this.getSimpleTypeValue(xmlDocument.getDoi()).isEmpty());\r
+- }\r
+-/*\r
+- public String getPages(){\r
+- if(this.hasPages()){\r
+- return xmlDocument.getPages().getValue();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasPages(){\r
+- return (xmlDocument.getPages() != null && xmlDocument.getPages().getValue() != null && !xmlDocument.getPages().getValue().isEmpty());\r
+- }\r
+-\r
+- public String getVolume(){\r
+- if(this.hasVolume()){\r
+- return xmlDocument.getVolume().getValue();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasVolume(){\r
+- return (xmlDocument.getVolume() != null && xmlDocument.getVolume().getValue() != null && !xmlDocument.getVolume().getValue().isEmpty());\r
+- }\r
+-\r
+- public String getNumber(){\r
+- if(this.hasNumber()){\r
+- return xmlDocument.getNumber().getValue();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasNumber(){\r
+- return (xmlDocument.getNumber() != null && xmlDocument.getNumber().getValue() != null && !xmlDocument.getNumber().getValue().isEmpty());\r
+- }\r
+-*/\r
+- \r
+- public String getYear(){\r
+- if(this.hasYear()){\r
+- return this.getSimpleTypeValue(xmlDocument.getYear());\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasYear(){\r
+- return (this.getSimpleTypeValue(xmlDocument.getYear()) != null && !this.getSimpleTypeValue(xmlDocument.getYear()).isEmpty() && !this.getSimpleTypeValue(xmlDocument.getYear()).equalsIgnoreCase("null"));\r
+- }\r
+- \r
+-/*\r
+- public String getMonth(){\r
+- if(this.hasMonth()){\r
+- return xmlDocument.getPublishdate().getMonth();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasMonth(){\r
+- return (xmlDocument.getPublishdate() != null && xmlDocument.getPublishdate().getMonth() != null && !xmlDocument.getPublishdate().getMonth().isEmpty());\r
+- }\r
+-\r
+- public String getDay(){\r
+- if(this.hasDay()){\r
+- return xmlDocument.getPublishdate().getDay();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasDay(){\r
+- return (xmlDocument.getPublishdate() != null && xmlDocument.getPublishdate().getDay() != null && !xmlDocument.getPublishdate().getDay().isEmpty());\r
+- }\r
+- \r
+- /*\r
+- public String getVenue() {\r
+- if(this.hasVenue()){\r
+- return xmlDocument.getVenue().getValue();\r
+- }\r
+- else{\r
+- return "";\r
+- }\r
+- }\r
+-\r
+- public boolean hasVenue(){\r
+- return (xmlDocument.getVenue() != null && xmlDocument.getVenue().getValue() != null && !xmlDocument.getVenue().getValue().isEmpty());\r
+- }*/\r
+- \r
+- private String getNameComplete(Author author){\r
+- if(author == null) return "";\r
+- String result = "";\r
+- if(getSimpleTypeValue(author.getName_First()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_First()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Middle()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Middle()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Last_Prefix()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Last_Prefix()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Last()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Last()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Last_Suffix()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Last_Suffix()).trim() + " ";\r
+- return result.trim();\r
+- }\r
+- \r
+- private String getSimpleTypeValue(Bean bean){\r
+- if(bean == null || !(bean instanceof SimpleTypeElementBean)) return null;\r
+- SimpleTypeElementBean simpleTypeElementBean = (SimpleTypeElementBean)bean;\r
+- if(simpleTypeElementBean.getValue() == null || simpleTypeElementBean.getValue().equalsIgnoreCase("null") || simpleTypeElementBean.getValue().length() <= 0) return null;\r
+- return simpleTypeElementBean.getValue();\r
+- }\r
+- \r
+- private List<Bean> sortAuthors(List<Bean> authors){\r
+- boolean unsorted = true;\r
+- Bean temp;\r
+- \r
+- while (unsorted){\r
+- unsorted = false;\r
+- for (int i = 0; i < authors.size() - 1; i++){\r
+- int rank = 99;\r
+- int otherRank = 99;\r
+- if(((Author)authors.get(i)).getRank() != null && !((Author)authors.get(i)).getRank().equalsIgnoreCase("null")){\r
+- rank = Integer.parseInt(((Author)authors.get(i)).getRank());\r
+- } \r
+- if(((Author)authors.get(i + 1)).getRank() != null && !((Author)authors.get(i + 1)).getRank().equalsIgnoreCase("null")){\r
+- otherRank = Integer.parseInt(((Author)authors.get(i + 1)).getRank());\r
+- } \r
+- \r
+- if (rank > otherRank) { \r
+- temp = authors.get(i);\r
+- authors.set(i, authors.get(i + 1));\r
+- authors.set(i + 1, temp); \r
+- unsorted = true;\r
+- } \r
+- } \r
+- } \r
+- \r
+- return authors;\r
+- }\r
+-}\r
+--- a/src/java/spl/DocumentsWrapper.java
++++ /dev/null
+@@ -1,132 +0,0 @@
+-package spl;\r
+-\r
+-import java.util.ArrayList;\r
+-import java.util.List;\r
+-import java.util.Vector;\r
+-\r
+-import org.sciplore.beans.Author;\r
+-import org.sciplore.beans.Document;\r
+-import org.sciplore.beans.Year;\r
+-import org.sciplore.formatter.Bean;\r
+-import org.sciplore.formatter.SimpleTypeElementBean;\r
+-\r
+-/**\r
+- * Created by IntelliJ IDEA.\r
+- * User: Christoph Arbeit\r
+- * Date: 09.09.2010\r
+- * Time: 10:56:50\r
+- * To change this template use File | Settings | File Templates.\r
+- */\r
+-public class DocumentsWrapper {\r
+-\r
+- Document xmlDocuments;\r
+-\r
+- public DocumentsWrapper(Document documents) {\r
+- this.xmlDocuments = documents;\r
+- }\r
+-\r
+- public Document getXmlDocuments() {\r
+- return xmlDocuments;\r
+- }\r
+-\r
+- public void setXmlDocuments(Document xmlDocuments) {\r
+- this.xmlDocuments = xmlDocuments;\r
+- }\r
+-\r
+- public List<Vector> getDocuments(){\r
+- List<Vector> documents = new ArrayList<Vector>();\r
+- //List<XmlDocument> xmlDocuments = this.xmlDocuments.getDocuments();\r
+- //for(XmlDocument xmlDocument : xmlDocuments){\r
+- Document xmlDocument = xmlDocuments;\r
+- Vector<String> vector = new Vector<String>();\r
+- if(xmlDocument.getTitle() != null){\r
+- vector.add(xmlDocument.getTitle().getValue());\r
+- }\r
+- else{\r
+- vector.add("");\r
+- }\r
+- if(xmlDocument.getAuthors() != null){\r
+- List<Bean> authors = xmlDocument.getAuthors().getCollection();\r
+- authors = this.sortAuthors(authors);\r
+- String value = "";\r
+- int i = 1;\r
+- for(Bean author : authors){\r
+- if(i < authors.size()){\r
+- value = value + getNameComplete(((Author)author));\r
+- value = value + ", ";\r
+- }\r
+- else{\r
+- value = value + getNameComplete(((Author)author));\r
+- }\r
+- i++;\r
+- }\r
+- vector.add(value);\r
+- }\r
+- else{\r
+- vector.add("");\r
+- }\r
+- if(xmlDocument.getYear() != null && ((Year)xmlDocument.getYear()).getValue() != null && !((Year)xmlDocument.getYear()).getValue().equalsIgnoreCase("null")){\r
+- vector.add(((Year)xmlDocument.getYear()).getValue());\r
+- }\r
+- /*if(xmlDocument.getPublishdate() != null && xmlDocument.getPublishdate().getYear() != null && !xmlDocument.getPublishdate().getYear().equalsIgnoreCase("null")){\r
+- vector.add(xmlDocument.getPublishdate().getYear());\r
+- }*/\r
+- else{\r
+- vector.add("");\r
+- }\r
+- documents.add(vector);\r
+- //}\r
+- return documents;\r
+- }\r
+- \r
+- private String getNameComplete(Author author){\r
+- if(author == null) return "";\r
+- String result = "";\r
+- if(getSimpleTypeValue(author.getName_First()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_First()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Middle()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Middle()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Last_Prefix()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Last_Prefix()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Last()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Last()).trim() + " ";\r
+- if(getSimpleTypeValue(author.getName_Last_Suffix()) != null)\r
+- result = result + getSimpleTypeValue(author.getName_Last_Suffix()).trim() + " ";\r
+- return result.trim();\r
+- }\r
+- \r
+- private String getSimpleTypeValue(Bean bean){\r
+- if(bean == null || !(bean instanceof SimpleTypeElementBean)) return null;\r
+- SimpleTypeElementBean simpleTypeElementBean = (SimpleTypeElementBean)bean;\r
+- if(simpleTypeElementBean.getValue() == null || simpleTypeElementBean.getValue().equalsIgnoreCase("null") || simpleTypeElementBean.getValue().length() <= 0) return null;\r
+- return simpleTypeElementBean.getValue();\r
+- }\r
+- \r
+- private List<Bean> sortAuthors(List<Bean> authors){\r
+- boolean unsorted = true;\r
+- Bean temp;\r
+- \r
+- while (unsorted){\r
+- unsorted = false;\r
+- for (int i = 0; i < authors.size() - 1; i++){\r
+- int rank = 99;\r
+- int otherRank = 99;\r
+- if(((Author)authors.get(i)).getRank() != null && !((Author)authors.get(i)).getRank().equalsIgnoreCase("null")){\r
+- rank = Integer.parseInt(((Author)authors.get(i)).getRank());\r
+- } \r
+- if(((Author)authors.get(i + 1)).getRank() != null && !((Author)authors.get(i + 1)).getRank().equalsIgnoreCase("null")){\r
+- otherRank = Integer.parseInt(((Author)authors.get(i + 1)).getRank());\r
+- } \r
+- \r
+- if (rank > otherRank) { \r
+- temp = authors.get(i);\r
+- authors.set(i, authors.get(i + 1));\r
+- authors.set(i + 1, temp); \r
+- unsorted = true;\r
+- } \r
+- } \r
+- } \r
+- \r
+- return authors;\r
+- }\r
+-}\r
+--- a/src/java/spl/PdfImporter.java
++++ b/src/java/spl/PdfImporter.java
+@@ -18,12 +18,8 @@
+ import net.sf.jabref.undo.UndoableInsertEntry;\r
+ import net.sf.jabref.util.XMPUtil;\r
+ \r
+-import org.sciplore.beans.Document;\r
+-\r
+ import spl.filter.PdfFileFilter;\r
+ import spl.gui.ImportDialog;\r
+-import spl.gui.MetaDataListDialog;\r
+-\r
+ \r
+ /**\r
+ * Created by IntelliJ IDEA.\r
+@@ -101,7 +97,6 @@
+ BibtexEntryType type;\r
+ InputStream in = null;\r
+ List<BibtexEntry> res = null;\r
+- MetaDataListDialog metaDataListDialog;\r
+ switch (choice) {\r
+ case ImportDialog.XMP:\r
+ //SplDatabaseChangeListener dataListener = new SplDatabaseChangeListener(frame, panel, entryTable, fileName);\r
+@@ -188,84 +183,9 @@
+ panel.adjustSplitter();\r
+ }\r
+ break;\r
+- case ImportDialog.MRDLIB:\r
+- metaDataListDialog = new MetaDataListDialog(fileName, true);\r
+- Tools.centerRelativeToWindow(metaDataListDialog, frame);\r
+- metaDataListDialog.showDialog();\r
+- Document document = metaDataListDialog.getXmlDocuments();\r
+- if(document != null /*&& documents.getDocuments() != null && documents.getDocuments().size() > 0*/ && metaDataListDialog.getResult() == JOptionPane.OK_OPTION){\r
+- int selected = metaDataListDialog.getTableMetadata().getSelectedRow();\r
+- if(selected > -1 /*&& selected < documents.getDocuments().size()*/){\r
+- //Document document = documents/*.getDocuments().get(selected)*/;\r
+- String id = Util.createNeutralId();\r
+- entry = new BibtexEntry(id);\r
+- if(fieldExists(document.getType())){\r
+- type = BibtexEntryType.getStandardType(document.getType());\r
+- if(type == null){\r
+- type = BibtexEntryType.ARTICLE;\r
+- }\r
+- entry.setType(type);\r
+- }\r
+- else{\r
+- entry.setType(BibtexEntryType.ARTICLE);\r
+- }\r
+- ArrayList<BibtexEntry> list = new ArrayList<BibtexEntry>();\r
+- list.add(entry);\r
+- Util.setAutomaticFields(list, true, true, false);\r
+- //insertFields(entry.getRequiredFields(), entry, document);\r
+- insertFields(BibtexFields.getAllFieldNames(), entry, document);\r
+- //insertFields(entry.getOptionalFields(), entry, document);\r
+- panel.database().insertEntry(entry);\r
+- dfh = new DroppedFileHandler(frame, panel);\r
+- dfh.linkPdfToEntry(fileName, entryTable, entry);\r
+- LabelPatternUtil.makeLabel(panel.metaData(), panel.database(), entry);\r
+- }\r
+- else{\r
+- createNewBlankEntry(fileName);\r
+- }\r
+- }\r
+- else if(metaDataListDialog.getResult() == JOptionPane.CANCEL_OPTION ){\r
+- continue;\r
+- }\r
+- else if(metaDataListDialog.getResult() == JOptionPane.NO_OPTION ){\r
+- createNewBlankEntry(fileName);\r
+- }\r
+- else if(document == null /*|| document.getDocuments() == null || document.getDocuments().size() <= 0*/ && metaDataListDialog.getResult() == JOptionPane.OK_OPTION){\r
+- createNewBlankEntry(fileName);\r
+- }\r
+- break;\r
+ case ImportDialog.NOMETA:\r
+ createNewBlankEntry(fileName);\r
+ break;\r
+- case ImportDialog.UPDATEEMPTYFIELDS:\r
+- metaDataListDialog = new MetaDataListDialog(fileName, false); \r
+- Tools.centerRelativeToWindow(metaDataListDialog, frame);\r
+- metaDataListDialog.showDialog();\r
+- document = metaDataListDialog.getXmlDocuments();\r
+- if(document != null /*&& document.getDocuments() != null && document.getDocuments().size() > 0*/ && metaDataListDialog.getResult() == JOptionPane.OK_OPTION){\r
+- int selected = metaDataListDialog.getTableMetadata().getSelectedRow();\r
+- if(selected > -1 /*&& selected < document.getDocuments().size()*/){\r
+- //XmlDocument document = documents.getDocuments().get(selected);\r
+- entry = entryTable.getEntryAt(dropRow);\r
+- if(fieldExists(document.getType())){\r
+- type = BibtexEntryType.getStandardType(document.getType());\r
+- if(type != null){\r
+- entry.setType(type);\r
+- }\r
+- }\r
+- //insertFields(entry.getRequiredFields(), entry, document);\r
+- insertFields(BibtexFields.getAllFieldNames(), entry, document);\r
+- //insertFields(entry.getOptionalFields(), entry, document);\r
+-\r
+- dfh = new DroppedFileHandler(frame, panel);\r
+- dfh.linkPdfToEntry(fileName, entryTable, dropRow);\r
+- }\r
+- }\r
+- break;\r
+- case ImportDialog.ONLYATTACH:\r
+- dfh = new DroppedFileHandler(frame, panel);\r
+- dfh.linkPdfToEntry(fileName, entryTable, dropRow);\r
+- break;\r
+ }\r
+ }\r
+ \r
+@@ -283,58 +203,6 @@
+ }\r
+ }\r
+ \r
+- private void insertFields(String[] fields, BibtexEntry entry, Document xmlDocument) {\r
+- DocumentWrapper document = new DocumentWrapper(xmlDocument);\r
+- for(String field : fields){\r
+- if(entry.getField(field) != null){\r
+- continue;\r
+- }\r
+- if(field.equalsIgnoreCase("author")){\r
+- entry.setField(field, document.getAuthors("and"));\r
+- }\r
+- if(field.equalsIgnoreCase("title")){\r
+- entry.setField(field, document.getTitle());\r
+- }\r
+- if(field.equalsIgnoreCase("abstract")){\r
+- entry.setField(field, document.getAbstract());\r
+- }\r
+- /*if(field.equalsIgnoreCase("keywords")){\r
+- entry.setField(field, document.getKeyWords());\r
+- }*/\r
+- if(field.equalsIgnoreCase("doi")){\r
+- entry.setField(field, document.getDoi());\r
+- }\r
+- /*if(field.equalsIgnoreCase("pages")){\r
+- entry.setField(field, document.getPages());\r
+- }\r
+- if(field.equalsIgnoreCase("volume")){\r
+- entry.setField(field, document.getVolume());\r
+- }\r
+- if(field.equalsIgnoreCase("number")){\r
+- entry.setField(field, document.getNumber());\r
+- }*/\r
+- if(field.equalsIgnoreCase("year")){\r
+- entry.setField(field, document.getYear());\r
+- }\r
+- /*if(field.equalsIgnoreCase("month")){\r
+- entry.setField(field, document.getMonth());\r
+- }\r
+- if(field.equalsIgnoreCase("day")){\r
+- entry.setField(field, document.getDay());\r
+- }\r
+- if(field.equalsIgnoreCase("booktitle")){\r
+- entry.setField(field, document.getVenue());\r
+- }\r
+- if(field.equalsIgnoreCase("journal")){\r
+- entry.setField(field, document.getVenue());\r
+- }*/\r
+- }\r
+- }\r
+-\r
+- private boolean fieldExists(String string) {\r
+- return string != null && !string.isEmpty();\r
+- }\r
+-\r
+ private BibtexEntry createNewEntry() {\r
+ \r
+ // Find out what type is wanted.\r
+--- a/src/java/spl/SplWebClient.java
++++ /dev/null
+@@ -1,196 +0,0 @@
+-package spl;\r
+-\r
+-import java.io.ByteArrayInputStream;\r
+-import java.io.File;\r
+-import java.io.FileInputStream;\r
+-import java.io.InputStream;\r
+-import java.io.UnsupportedEncodingException;\r
+-\r
+-import javax.ws.rs.core.MediaType;\r
+-import javax.xml.bind.JAXB;\r
+-\r
+-import org.sciplore.beans.Author;\r
+-import org.sciplore.beans.Document;\r
+-import org.sciplore.deserialize.creator.AuthorBeanCreator;\r
+-import org.sciplore.deserialize.creator.AuthorsBeanCreator;\r
+-import org.sciplore.deserialize.creator.DefaultStringCreator;\r
+-import org.sciplore.deserialize.creator.DocumentBeanCreator;\r
+-import org.sciplore.deserialize.creator.DocumentsBeanCreator;\r
+-import org.sciplore.deserialize.creator.ObjectCreator;\r
+-import org.sciplore.deserialize.creator.TitleBeanCreator;\r
+-import org.sciplore.deserialize.creator.YearBeanCreator;\r
+-import org.sciplore.deserialize.reader.ObjectCreatorMapper;\r
+-import org.sciplore.deserialize.reader.XmlResourceReader;\r
+-import org.sciplore.formatter.Bean;\r
+-import org.sciplore.formatter.SimpleTypeElementBean;\r
+-\r
+-import com.sun.jersey.api.client.Client;\r
+-import com.sun.jersey.api.client.ClientResponse;\r
+-import com.sun.jersey.api.client.WebResource;\r
+-import com.sun.jersey.multipart.FormDataMultiPart;\r
+-\r
+-/**\r
+- * Created by IntelliJ IDEA.\r
+- * User: Christoph Arbeit\r
+- * Date: 09.09.2010\r
+- * Time: 10:35:20\r
+- * To change this template use File | Settings | File Templates.\r
+- */\r
+-public class SplWebClient {\r
+-\r
+- private static Client CLIENT = Client.create();\r
+- static{\r
+- CLIENT.setConnectTimeout(1000);\r
+- CLIENT.setReadTimeout(70000);\r
+- }\r
+- private static WebResource WEBRESOURCE = CLIENT.resource( "http://api.mr-dlib.org/" );\r
+- private static WebResource INTERNETRESOURCE = CLIENT.resource( "http://www.google.com" );\r
+- //private static WebResource WEBRESOURCE = CLIENT.resource( "http://localhost:8080/rest/" );\r
+-\r
+- public static Document metadata;\r
+-\r
+- public static WebServiceStatus getMetaData(File file){\r
+- try{\r
+- if(isWebServiceAvailable() == false){\r
+- if(isInternetAvailable()){\r
+- return WebServiceStatus.WEBSERVICE_DOWN;\r
+- }\r
+- else{\r
+- return WebServiceStatus.NO_INTERNET;\r
+- }\r
+- }\r
+- if(isWebServiceOutDated()){\r
+- return WebServiceStatus.OUTDATED;\r
+- }\r
+- if(isMetaDataServiceAvailable() == false){\r
+- return WebServiceStatus.UNAVAILABLE;\r
+- }\r
+- FileInputStream fin = new FileInputStream(file); \r
+- byte[] data = new byte[(int)file.length()]; \r
+- fin.read(data); \r
+- \r
+- FormDataMultiPart formDataMultiPart = new FormDataMultiPart(); \r
+- formDataMultiPart.field("file", data, MediaType.APPLICATION_OCTET_STREAM_TYPE); \r
+- formDataMultiPart.field("source", "jabref", MediaType.TEXT_PLAIN_TYPE);\r
+- formDataMultiPart.field("filename", file.getName(), MediaType.TEXT_PLAIN_TYPE);\r
+- \r
+- \r
+- ClientResponse response = WEBRESOURCE.path("documents").type(MediaType.MULTIPART_FORM_DATA_TYPE).post(ClientResponse.class, formDataMultiPart);\r
+- //System.out.println(response.getEntity(String.class));\r
+- if(response.getClientResponseStatus() == ClientResponse.Status.OK && response.hasEntity()){\r
+- String entity = response.getEntity(String.class);\r
+- byte[] bytes = new byte[0];\r
+- try {\r
+- bytes = entity.getBytes("UTF-8");\r
+- } catch (UnsupportedEncodingException e) {\r
+- return null;\r
+- }\r
+- InputStream is = new ByteArrayInputStream(bytes);\r
+- if(is != null){\r
+- ObjectCreatorMapper resourceMapper = new ObjectCreatorMapper();\r
+- ObjectCreator stringCreator = new DefaultStringCreator();\r
+- // initialize Mapper \r
+- resourceMapper.addCreator("documents", new DocumentsBeanCreator());\r
+- resourceMapper.addCreator("authors", new AuthorsBeanCreator());\r
+- resourceMapper.addCreator("document", new DocumentBeanCreator());\r
+- resourceMapper.addCreator("title", new TitleBeanCreator());\r
+- resourceMapper.addCreator("year", new YearBeanCreator());\r
+- resourceMapper.addCreator("author", new AuthorBeanCreator());\r
+- \r
+- resourceMapper.addCreator("name_first", stringCreator);\r
+- resourceMapper.addCreator("name_middle", stringCreator);\r
+- resourceMapper.addCreator("name_last", stringCreator);\r
+- resourceMapper.addCreator("name_last_prefix", stringCreator);\r
+- resourceMapper.addCreator("name_last_suffix", stringCreator);\r
+- \r
+- // initialize xml reader\r
+- XmlResourceReader<?> reader = new XmlResourceReader(resourceMapper);\r
+- \r
+- // parse given file -> create object tree\r
+- Document docs = (Document)reader.parse(is);\r
+- for(Bean author : docs.getAuthors().getCollection()){\r
+- Author temp = (Author)author;\r
+- System.out.println(((SimpleTypeElementBean)temp.getName_Last()).getValue() + " " + temp.getRank());\r
+- }\r
+- // XmlDocuments documents = JAXB.unmarshal(is, XmlDocuments.class);\r
+- SplWebClient.metadata = docs;\r
+- return WebServiceStatus.OK;\r
+- }\r
+- else{\r
+- return WebServiceStatus.NO_METADATA;\r
+- }\r
+- }\r
+- if(response.getClientResponseStatus() == ClientResponse.Status.SERVICE_UNAVAILABLE){\r
+- return WebServiceStatus.UNAVAILABLE;\r
+- }\r
+- }catch(Exception e){\r
+- System.out.println(Tools.getStackTraceAsString(e));\r
+- //Todo logging\r
+- }\r
+- return WebServiceStatus.NO_METADATA;\r
+- }\r
+-\r
+- public static boolean isWebServiceOutDated(){\r
+- try{\r
+- ClientResponse response = WEBRESOURCE.path("service/versioncheck/" + Tools.WEBSERVICE_APP_ID + "/current").get(ClientResponse.class);\r
+- if(response.getClientResponseStatus() == ClientResponse.Status.OK && response.hasEntity()){\r
+- String entity = response.getEntity(String.class);\r
+- byte[] bytes = entity.getBytes();\r
+- InputStream is = new ByteArrayInputStream(bytes);\r
+- if(is != null){\r
+- /*XmlApplication app = JAXB.unmarshal(is, XmlApplication.class);\r
+- if(app != null){\r
+- if(app.getVersion() != null && !app.getVersion().equalsIgnoreCase(Tools.WEBSERVICE_VERSION_SHORT)){\r
+- return true;\r
+- }\r
+- }*/\r
+- }\r
+- }\r
+- }catch(Exception e){\r
+- //Todo logging\r
+- }\r
+- return false;\r
+- }\r
+-\r
+- public static boolean isMetaDataServiceAvailable(){\r
+- try{\r
+- ClientResponse response = WEBRESOURCE.path("service/metadata/available").get(ClientResponse.class);\r
+- if(response.getClientResponseStatus() == ClientResponse.Status.OK && response.hasEntity()){\r
+- String entity = response.getEntity(String.class);\r
+- if(entity != null && entity.equalsIgnoreCase("false")){\r
+- return false;\r
+- }\r
+- }\r
+- }catch(Exception e){\r
+- //Todo logging\r
+- }\r
+- return true;\r
+- }\r
+-\r
+- public static boolean isWebServiceAvailable(){\r
+- try{\r
+- ClientResponse response = WEBRESOURCE.path("service/metadata/available").get(ClientResponse.class);\r
+- }catch(Exception e){\r
+- return false;\r
+- }\r
+- return true;\r
+- }\r
+-\r
+- public static boolean isInternetAvailable(){\r
+- try{\r
+- ClientResponse response = INTERNETRESOURCE.get(ClientResponse.class);\r
+- }catch(Exception e){\r
+- return false;\r
+- }\r
+- return true;\r
+- }\r
+-\r
+- public enum WebServiceStatus {\r
+- OK,\r
+- NO_METADATA,\r
+- UNAVAILABLE,\r
+- OUTDATED,\r
+- WEBSERVICE_DOWN,\r
+- NO_INTERNET\r
+- }\r
+-}\r
+--- a/src/java/spl/gui/ImportDialog.java
++++ b/src/java/spl/gui/ImportDialog.java
+@@ -20,9 +20,7 @@
+ public final static int NOMETA = 0;\r
+ public final static int XMP = 1;\r
+ public final static int CONTENT = 2;\r
+- public final static int MRDLIB = 3;\r
+ public final static int ONLYATTACH = 4;\r
+- public final static int UPDATEEMPTYFIELDS = 5;\r
+ \r
+ private JPanel contentPane;\r
+ private JLabel labelSubHeadline;\r
+@@ -32,14 +30,10 @@
+ private JCheckBox useDefaultPDFImportStyle;\r
+ private JRadioButton radioButtonXmp;\r
+ private JRadioButton radioButtonPDFcontent;\r
+- private JRadioButton radioButtonMrDlib;\r
+ private JRadioButton radioButtonNoMeta;\r
+ private JLabel labelHeadline;\r
+ private JLabel labelFileName;\r
+ private JRadioButton radioButtononlyAttachPDF;\r
+- private JRadioButton radioButtonUpdateEmptyFields;\r
+- private JLabel labelMrDlib1;\r
+- private JLabel labelMrDlib2;\r
+ private int result;\r
+ private int dropRow;\r
+ private String fileName;\r
+@@ -71,15 +65,7 @@
+ radioButtonNoMeta = new JRadioButton(Globals.lang("Create_blank_entry_linking_the_PDF"));\r
+ radioButtonXmp = new JRadioButton(Globals.lang("Create_entry_based_on_XMP_data"));\r
+ radioButtonPDFcontent = new JRadioButton(Globals.lang("Create_entry_based_on_content"));\r
+- radioButtonMrDlib = new JRadioButton(Globals.lang("Create_entry_based_on_data_fetched_from"));\r
+ radioButtononlyAttachPDF = new JRadioButton(Globals.lang("Only_attach_PDF"));\r
+- radioButtonUpdateEmptyFields = new JRadioButton(Globals.lang("Update_empty_fields_with_data_fetched_from"));\r
+- labelMrDlib1 = new JLabel("Mr._dLib");\r
+- labelMrDlib1.setFont(new Font(labelMrDlib1.getFont().getName(), Font.BOLD, 13));\r
+- labelMrDlib1.setForeground(new Color(-16776961));\r
+- labelMrDlib2 = new JLabel("Mr._dLib");\r
+- labelMrDlib2.setFont(new Font(labelMrDlib1.getFont().getName(), Font.BOLD, 13));\r
+- labelMrDlib2.setForeground(new Color(-16776961));\r
+ buttonOK = new JButton(Globals.lang("Ok"));\r
+ buttonCancel = new JButton(Globals.lang("Cancel"));\r
+ checkBoxDoNotShowAgain = new JCheckBox(Globals.lang("Do not show this box again for this import"));\r
+@@ -89,12 +75,8 @@
+ b.append(radioButtonNoMeta, 3);\r
+ b.append(radioButtonXmp, 3);\r
+ b.append(radioButtonPDFcontent, 3);\r
+- b.append(radioButtonMrDlib);\r
+- b.append(labelMrDlib1);\r
+ b.appendSeparator(Globals.lang("Update_Existing_Entry"));\r
+ b.append(radioButtononlyAttachPDF, 3);\r
+- b.append(radioButtonUpdateEmptyFields);\r
+- b.append(labelMrDlib2);\r
+ b.nextLine();\r
+ b.append(checkBoxDoNotShowAgain);\r
+ b.append(useDefaultPDFImportStyle);\r
+@@ -114,8 +96,6 @@
+ //this.setText();\r
+ if (this.dropRow < 0) {\r
+ this.radioButtononlyAttachPDF.setEnabled(false);\r
+- this.radioButtonUpdateEmptyFields.setEnabled(false);\r
+- this.labelMrDlib2.setEnabled(false);\r
+ }\r
+ this.fileName = fileName;\r
+ String name = new File(this.fileName).getName();\r
+@@ -124,8 +104,6 @@
+ } else {\r
+ this.labelFileName.setText(new File(this.fileName).getName().substring(0, 33) + "...");\r
+ }\r
+- this.labelMrDlib1.addMouseListener(new LabelLinkListener(this.labelMrDlib1, "www.mr-dlib.org/docs/pdf_metadata_extraction.php"));\r
+- this.labelMrDlib2.addMouseListener(new LabelLinkListener(this.labelMrDlib2, "www.mr-dlib.org/docs/pdf_metadata_extraction.php"));\r
+ this.setTitle(LocalizationSupport.message("Import_Metadata_From_PDF"));\r
+ \r
+ setModal(true);\r
+@@ -136,9 +114,7 @@
+ bg.add(radioButtonNoMeta);\r
+ bg.add(radioButtonXmp);\r
+ bg.add(radioButtonPDFcontent);\r
+- bg.add(radioButtonMrDlib);\r
+ bg.add(radioButtononlyAttachPDF);\r
+- bg.add(radioButtonUpdateEmptyFields);\r
+ \r
+ buttonOK.addActionListener(new ActionListener() {\r
+ public void actionPerformed(ActionEvent e) {\r
+@@ -175,15 +151,9 @@
+ case CONTENT:\r
+ radioButtonPDFcontent.setSelected(true);\r
+ break;\r
+- case MRDLIB:\r
+- radioButtonMrDlib.setSelected(true);\r
+- break;\r
+ case ONLYATTACH:\r
+ radioButtononlyAttachPDF.setSelected(true);\r
+ break;\r
+- case UPDATEEMPTYFIELDS:\r
+- radioButtonUpdateEmptyFields.setSelected(true);\r
+- break;\r
+ default:\r
+ // fallback\r
+ radioButtonPDFcontent.setSelected(true);\r
+@@ -218,14 +188,10 @@
+ return XMP;\r
+ else if (radioButtonPDFcontent.isSelected())\r
+ return CONTENT;\r
+- else if (radioButtonMrDlib.isSelected())\r
+- return MRDLIB;\r
+ else if (radioButtonNoMeta.isSelected())\r
+ return NOMETA;\r
+ else if (radioButtononlyAttachPDF.isSelected())\r
+ return ONLYATTACH;\r
+- else if (radioButtonUpdateEmptyFields.isSelected())\r
+- return UPDATEEMPTYFIELDS;\r
+ else throw new IllegalStateException();\r
+ }\r
+ \r
+--- a/src/java/spl/gui/MetaDataListDialog.java
++++ /dev/null
+@@ -1,314 +0,0 @@
+-package spl.gui;\r
+-\r
+-\r
+-import java.awt.BorderLayout;\r
+-import java.awt.CardLayout;\r
+-import java.awt.Color;\r
+-import java.awt.Component;\r
+-import java.awt.Dimension;\r
+-import java.awt.Font;\r
+-import java.awt.event.ActionEvent;\r
+-import java.awt.event.ActionListener;\r
+-import java.awt.event.KeyEvent;\r
+-import java.awt.event.WindowAdapter;\r
+-import java.awt.event.WindowEvent;\r
+-import java.io.File;\r
+-import java.io.IOException;\r
+-import java.util.List;\r
+-import java.util.Vector;\r
+-\r
+-import javax.swing.BorderFactory;\r
+-import javax.swing.ImageIcon;\r
+-import javax.swing.JButton;\r
+-import javax.swing.JComponent;\r
+-import javax.swing.JDialog;\r
+-import javax.swing.JLabel;\r
+-import javax.swing.JOptionPane;\r
+-import javax.swing.JPanel;\r
+-import javax.swing.JScrollPane;\r
+-import javax.swing.JTable;\r
+-import javax.swing.KeyStroke;\r
+-import javax.swing.ListSelectionModel;\r
+-import javax.swing.SwingWorker;\r
+-import javax.swing.table.DefaultTableModel;\r
+-\r
+-import net.sf.jabref.Globals;\r
+-import net.sf.jabref.MetaData;\r
+-import net.sf.jabref.Util;\r
+-\r
+-import org.sciplore.beans.Document;\r
+-\r
+-import spl.DocumentsWrapper;\r
+-import spl.SplWebClient;\r
+-import spl.listener.LabelLinkListener;\r
+-import spl.localization.LocalizationSupport;\r
+-\r
+-import com.jgoodies.forms.builder.ButtonBarBuilder;\r
+-\r
+-public class MetaDataListDialog extends JDialog {\r
+- private JPanel contentPane;\r
+- private JTable tableMetadata;\r
+- private JButton buttonOK;\r
+- private JButton buttonCancel;\r
+- private JScrollPane scrollPane;\r
+- private JPanel panelWait;\r
+- private JLabel labelFetch;\r
+- private JLabel iconLabel;\r
+- private JButton blankButton;\r
+- private JLabel labelLogo;\r
+- private JButton moreInformationButton;\r
+- private JPanel panelMetadata;\r
+- private DefaultTableModel tableModel;\r
+- private int result;\r
+- private Document xmlDocuments;\r
+- private String fileName;\r
+- private SplWebClient.WebServiceStatus webserviceStatus;\r
+- private Component thisDialog;\r
+- private boolean showBlankButton;\r
+- private CardLayout cardLayou = new CardLayout();\r
+-\r
+- public MetaDataListDialog(String fileName, boolean showBlankButton) {\r
+- $$$setupUI$$$();\r
+- this.showBlankButton = showBlankButton;\r
+- this.thisDialog = this;\r
+- this.fileName = fileName;\r
+- this.labelLogo.addMouseListener(new LabelLinkListener(this.labelLogo, "www.mr-dlib.org"));\r
+- this.setTitle(LocalizationSupport.message("Mr._dLib_Metadata_Entries_Associated_With_PDF_File"));\r
+- this.tableMetadata.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
+- setContentPane(contentPane);\r
+- pack();\r
+- setModal(true);\r
+- getRootPane().setDefaultButton(buttonOK);\r
+-\r
+- buttonOK.addActionListener(new ActionListener() {\r
+- public void actionPerformed(ActionEvent e) {\r
+- onOK();\r
+- }\r
+- });\r
+-\r
+- buttonCancel.addActionListener(new ActionListener() {\r
+- public void actionPerformed(ActionEvent e) {\r
+- onCancel();\r
+- }\r
+- });\r
+-\r
+- blankButton.addActionListener(new ActionListener() {\r
+- public void actionPerformed(ActionEvent e) {\r
+- onBlank();\r
+- }\r
+- });\r
+-\r
+- moreInformationButton.addActionListener(new ActionListener() {\r
+- public void actionPerformed(ActionEvent e) {\r
+- onInfo();\r
+- }\r
+- });\r
+-\r
+- setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);\r
+- addWindowListener(new WindowAdapter() {\r
+- public void windowClosing(WindowEvent e) {\r
+- onCancel();\r
+- }\r
+- });\r
+-\r
+- contentPane.registerKeyboardAction(new ActionListener() {\r
+- public void actionPerformed(ActionEvent e) {\r
+- onCancel();\r
+- }\r
+- }, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);\r
+-\r
+- cardLayou.show(panelMetadata, "panelWait");\r
+- //this.scrollPane.setVisible(false);\r
+- //this.blankButton.setVisible(false);\r
+- this.moreInformationButton.setVisible(true);\r
+- this.setSize(616, 366);\r
+- }\r
+-\r
+- private void onInfo() {\r
+- try {\r
+- Util.openExternalViewer(new MetaData(), "http://www.mr-dlib.org/docs/jabref_metadata_extraction_alpha.php", "url");\r
+- } catch (IOException exc) {\r
+- exc.printStackTrace();\r
+- }\r
+- }\r
+-\r
+- private void onBlank() {\r
+- this.result = JOptionPane.NO_OPTION;\r
+- dispose();\r
+- }\r
+-\r
+- private void onOK() {\r
+- this.result = JOptionPane.OK_OPTION;\r
+- dispose();\r
+- }\r
+-\r
+- private void onCancel() {\r
+- this.result = JOptionPane.CANCEL_OPTION;\r
+- dispose();\r
+- }\r
+-\r
+- public void showDialog() {\r
+- SwingWorker worker = new SwingWorker<Void, Void>() {\r
+- @Override\r
+- public Void doInBackground() {\r
+- System.out.println("Starting Webclient...");\r
+- webserviceStatus = SplWebClient.getMetaData(new File(fileName));\r
+- return null;\r
+- }\r
+-\r
+- @Override\r
+- public void done() {\r
+- if (webserviceStatus == SplWebClient.WebServiceStatus.OK) {\r
+- xmlDocuments = SplWebClient.metadata;\r
+- if (xmlDocuments != null /*&& xmlDocuments.getDocuments() != null && xmlDocuments.getDocuments().size() > 0*/) {\r
+- DocumentsWrapper documents = new DocumentsWrapper(xmlDocuments);\r
+- List<Vector> vectorList = documents.getDocuments();\r
+- for (Vector vector : vectorList) {\r
+- tableModel.addRow(vector);\r
+- }\r
+-\r
+- tableMetadata.getSelectionModel().setSelectionInterval(0, 0);\r
+- cardLayou.show(panelMetadata, "scrollPane");\r
+- //panelWait.setVisible(false);\r
+- //scrollPane.setVisible(true);\r
+- moreInformationButton.setVisible(true);\r
+- } else {\r
+- iconLabel.setVisible(false);\r
+- labelFetch.setText(LocalizationSupport.message("No_metadata_found."));\r
+- blankButton.setVisible(showBlankButton);\r
+- }\r
+- }\r
+- if (webserviceStatus == SplWebClient.WebServiceStatus.NO_METADATA) {\r
+- iconLabel.setVisible(false);\r
+- labelFetch.setText(LocalizationSupport.message("No_metadata_found."));\r
+- blankButton.setVisible(showBlankButton);\r
+- }\r
+- if (webserviceStatus == SplWebClient.WebServiceStatus.UNAVAILABLE) {\r
+- iconLabel.setVisible(false);\r
+- labelFetch.setText(LocalizationSupport.message("Mr._dLib_web_service_is_temporarily_unavailable."));\r
+- blankButton.setVisible(showBlankButton);\r
+- }\r
+- if (webserviceStatus == SplWebClient.WebServiceStatus.OUTDATED) {\r
+- iconLabel.setVisible(false);\r
+- labelFetch.setText(LocalizationSupport.message("The_Mr._dLib_web_service_version_you_trying_to_access_is_outdated."));\r
+- blankButton.setVisible(showBlankButton);\r
+- JOptionPane.showMessageDialog(thisDialog, LocalizationSupport.message("This_JabRef_version_is_trying_to_access_an_old_version_of_Mr._dLib's_webservice_that_is_not_working_any_more.\nPlease_visit_http://jabref.sourceforge.net_or_http://www.mr-dlib.org_for_more_information_and_updates."), LocalizationSupport.message("Web_Service_Version_Outdated"), JOptionPane.INFORMATION_MESSAGE);\r
+- }\r
+- if (webserviceStatus == SplWebClient.WebServiceStatus.WEBSERVICE_DOWN) {\r
+- iconLabel.setVisible(false);\r
+- labelFetch.setText(LocalizationSupport.message("Mr._dLib_web_service_is_temporarily_down._Please_try_again_later."));\r
+- blankButton.setVisible(showBlankButton);\r
+- }\r
+- if (webserviceStatus == SplWebClient.WebServiceStatus.NO_INTERNET) {\r
+- iconLabel.setVisible(false);\r
+- labelFetch.setText(LocalizationSupport.message("No_Internet_Connection."));\r
+- blankButton.setVisible(showBlankButton);\r
+- JOptionPane.showMessageDialog(thisDialog, LocalizationSupport.message("You_are_not_connected_to_the_Internet._To_access_Mr._dLib_web_service_an_internet_connection_is_needed."), LocalizationSupport.message("No_Internet_Connection."), JOptionPane.INFORMATION_MESSAGE);\r
+- }\r
+- }\r
+- };\r
+- worker.execute();\r
+- this.pack();\r
+- this.setVisible(true);\r
+- }\r
+-\r
+- public Document getXmlDocuments() {\r
+- return xmlDocuments;\r
+- }\r
+-\r
+- private void createUIComponents() {\r
+- this.tableModel = new MyTableModel();\r
+- this.tableModel.addColumn(LocalizationSupport.message("Title"));\r
+- this.tableModel.addColumn(LocalizationSupport.message("Author(s)"));\r
+- this.tableModel.addColumn(LocalizationSupport.message("Published_Year"));\r
+- this.tableMetadata = new JTable(this.tableModel);\r
+- }\r
+-\r
+- public JTable getTableMetadata() {\r
+- return tableMetadata;\r
+- }\r
+-\r
+- public int getResult() {\r
+- return result;\r
+- }\r
+-\r
+- public JButton getBlankButton() {\r
+- return blankButton;\r
+- }\r
+-\r
+- private void $$$setupUI$$$() {\r
+- createUIComponents();\r
+- contentPane = new JPanel();\r
+- contentPane.setLayout(new BorderLayout());\r
+- labelLogo = new JLabel();\r
+- labelLogo.setIcon(new ImageIcon(getClass().getResource("/spl/gui/mrdlib header.png")));\r
+- labelLogo.setText("");\r
+- contentPane.add(labelLogo, BorderLayout.NORTH);\r
+- panelMetadata = new JPanel();\r
+- panelMetadata.setLayout(cardLayou);\r
+-\r
+-\r
+- panelMetadata.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), null));\r
+- scrollPane = new JScrollPane();\r
+- scrollPane.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLoweredBevelBorder(), null));\r
+- tableMetadata.setAutoCreateRowSorter(false);\r
+- tableMetadata.setEnabled(true);\r
+- tableMetadata.setFillsViewportHeight(true);\r
+- tableMetadata.setShowVerticalLines(true);\r
+- scrollPane.setViewportView(tableMetadata);\r
+- panelMetadata.add(scrollPane, "scrollPane");\r
+- panelWait = new JPanel();\r
+- panelWait.setLayout(new BorderLayout());\r
+- panelWait.setBackground(new Color(-1));\r
+- panelMetadata.add(panelWait, "panelWait");\r
+- panelWait.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLoweredBevelBorder(), null));\r
+- iconLabel = new JLabel();\r
+- iconLabel.setBackground(new Color(-1));\r
+- iconLabel.setHorizontalAlignment(0);\r
+- iconLabel.setHorizontalTextPosition(11);\r
+- iconLabel.setIcon(new ImageIcon(getClass().getResource("/spl/gui/ajax-loader.gif")));\r
+- iconLabel.setText("");\r
+- panelWait.add(iconLabel, BorderLayout.CENTER);\r
+- labelFetch = new JLabel();\r
+- labelFetch.setHorizontalAlignment(JLabel.CENTER);\r
+- labelFetch.setFont(new Font(labelFetch.getFont().getName(), labelFetch.getFont().getStyle(), 13));\r
+- labelFetch.setText(Globals.lang("Fetching Metadata..."));\r
+- panelWait.add(labelFetch, BorderLayout.SOUTH);\r
+-\r
+- cardLayou.show(panelMetadata, "panelWait");\r
+- panelMetadata.setPreferredSize(new Dimension(400, 200));\r
+- contentPane.add(panelMetadata, BorderLayout.CENTER);\r
+-\r
+- buttonOK = new JButton(Globals.lang("Ok"));\r
+- buttonCancel = new JButton(Globals.lang("Cancel"));\r
+- moreInformationButton = new JButton(Globals.lang("More information"));\r
+- ButtonBarBuilder bb = new ButtonBarBuilder();\r
+- bb.addGlue();\r
+- bb.addButton(moreInformationButton);\r
+- bb.addButton(buttonOK);\r
+- bb.addButton(buttonCancel);\r
+- bb.addGlue();\r
+- blankButton = new JButton();\r
+- blankButton.setText("");\r
+- contentPane.add(bb.getPanel(), BorderLayout.SOUTH);\r
+- iconLabel.setLabelFor(scrollPane);\r
+-\r
+-\r
+- }\r
+-\r
+- /**\r
+- * @noinspection ALL\r
+- */\r
+- public JComponent $$$getRootComponent$$$() {\r
+- return contentPane;\r
+- }\r
+-\r
+- public class MyTableModel extends DefaultTableModel {\r
+-\r
+- @Override\r
+- public boolean isCellEditable(int row, int column) {\r
+- return false;\r
+- }\r
+- }\r
+-\r
+-}\r
--- /dev/null
+debian_libs.patch
+mrDlib_jayatana.patch
+generated_JabRefPlugin.java.patch
+jcombobox-parameter.patch
--- /dev/null
+requires_version 2
+SUFFIX=+ds
+rm lib
+rm buildlib
+rm gradle
+rm osx
--- /dev/null
+#!/bin/sh
+
+: <<=cut
+=pod
+
+=head1 NAME
+
+repack.stub - script to repack upstream tarballs from uscan
+
+=head1 INSTRUCTIONS
+
+put this in debian/repack.stub and add "debian sh debian/repack.stub" to
+the end of the line in debian/watch. you will also need to add a version
+mangle to debian/watch.
+
+then create a debian/repack.local. this is a shell script that is
+sourced under "set -e", so be careful to check returns codes.
+
+=head1 FUNCTIONS
+
+=over 4
+
+=item rm
+
+rm is replaced by a function that does some magic ("rm -rv" by default), but also changes MANIFEST if $MANIFEST is 1
+
+=item mv
+
+mv is replaced by a function that just does mv (by default), but also changes MANIFEST if $MANIFEST is 1
+
+=item requires_version
+
+requires_version is there for future usage for requiring certain versions of the script
+
+=back
+
+=head1 VARIABLES
+
+=over 4
+
+=item SUFFIX
+
+defaults to +dfsg
+
+what to append to the upstream version
+
+=item RM_OPTS
+
+defaults to -vrf
+
+options to pass to rm
+
+=item MANIFEST
+
+defaults to 0, set to 1 to turn on.
+
+this will manipulate MANIFEST files in CPAN tarballs.
+
+=item UP_BASE
+
+this is the directory where the upstream source is.
+
+=back
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright 2009, Ryan Niebur <ryan@debian.org>
+
+License: Artistic or GPL-1+
+
+=cut
+
+if [ -z "$REPACK_SH" ]; then
+ if [ -f ../../scripts/repack.sh ]; then
+ REPACK_SH=../../scripts/repack.sh
+ fi
+ if [ -z "$REPACK_SH" ] && which repack.sh > /dev/null; then
+ REPACK_SH=$(which repack.sh)
+ fi
+fi
+
+if [ ! -f "$REPACK_SH" ]; then
+ echo "Couldn't find a repack.sh. please put it in your PATH, put it at ../../scripts/repack.sh, or put it somewhere else and set the REPACK_SH variable"
+ echo "You can get it from http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob_plain;f=repack.sh;hb=HEAD"
+ exit 1
+fi
+
+exec "$REPACK_SH" "$@"
--- /dev/null
+#!/usr/bin/make -f
+
+%:
+ dh $@
+
+override_dh_auto_clean:
+ # ant clean fails if build.xml is not patched
+ $(RM) -r $(CURDIR)/build
+
+override_dh_auto_build:
+ JAVA_HOME=/usr/lib/jvm/default-java ANT_OPTS=-D"file.encoding=UTF-8" \
+ dh_auto_build
+ convert -geometry 32x32 src/images/JabRef-icon-48.png build/jabref32.xpm
+ convert -geometry 16x16 src/images/JabRef-icon-48.png build/jabref16.xpm
+
+override_dh_auto_test:
+ ANT_OPTS=-Dfile.encoding=iso-8859-1 ant compiletest
+
+override_dh_auto_install:
+ dh_auto_install
+ install -m 755 debian/jabref-wrapper $(CURDIR)/debian/jabref/usr/bin/jabref
+
+override_dh_installchangelogs:
+ dh_installchangelogs src/txt/CHANGELOG
--- /dev/null
+3.0 (quilt)
--- /dev/null
+version=3
+opts="dversionmangle=s/\+(dfsg|ds)$//;,uversionmangle=s/(\D)$/${1}1/;s/b(?:eta)?(\d)?$/~beta${1}/" \
+ http://sf.net/jabref/JabRef-(.+)-src\.tar\.bz2 \
+ debian sh debian/repack.stub