You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by st...@apache.org on 2015/02/17 12:46:45 UTC
[18/50] [abbrv] incubator-taverna-plugin-bioinformatics git commit:
taverna-biomart-martservice/
taverna-biomart-martservice/
Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/commit/9e08cac0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/tree/9e08cac0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/diff/9e08cac0
Branch: refs/heads/master
Commit: 9e08cac01487f85a399c6534b1a0b1f93f729b8a
Parents: 0de1f90
Author: Stian Soiland-Reyes <st...@apache.org>
Authored: Mon Feb 2 09:50:17 2015 +0000
Committer: Stian Soiland-Reyes <st...@apache.org>
Committed: Mon Feb 2 09:55:09 2015 +0000
----------------------------------------------------------------------
.gitignore | 24 -
.travis.yml | 1 -
README.md | 3 -
pom.xml | 105 -
.../org/biomart/martservice/DatasetLink.java | 220 --
.../org/biomart/martservice/MartDataset.java | 342 --
.../java/org/biomart/martservice/MartQuery.java | 436 ---
.../org/biomart/martservice/MartRegistry.java | 96 -
.../org/biomart/martservice/MartService.java | 709 ----
.../martservice/MartServiceException.java | 86 -
.../biomart/martservice/MartServiceUtils.java | 725 ----
.../martservice/MartServiceXMLHandler.java | 390 --
.../biomart/martservice/MartURLLocation.java | 422 ---
.../org/biomart/martservice/ResultReceiver.java | 61 -
.../martservice/ResultReceiverException.java | 85 -
.../config/QueryConfigController.java | 388 --
.../martservice/config/QueryConfigUtils.java | 598 ---
.../config/event/QueryComponentAdapter.java | 109 -
.../config/event/QueryComponentEvent.java | 120 -
.../config/event/QueryComponentListener.java | 104 -
.../config/ui/ConfigDisplayObject.java | 125 -
.../martservice/config/ui/ExpandableBox.java | 204 -
.../martservice/config/ui/MartServiceIcons.java | 104 -
.../ui/MartServiceQueryConfigUIFactory.java | 3543 ------------------
.../martservice/config/ui/MinimalLayout.java | 158 -
.../martservice/config/ui/QueryComponent.java | 342 --
.../config/ui/QueryConfigUIFactory.java | 345 --
.../biomart/martservice/query/Attribute.java | 198 -
.../org/biomart/martservice/query/Dataset.java | 309 --
.../org/biomart/martservice/query/Filter.java | 243 --
.../org/biomart/martservice/query/Link.java | 181 -
.../org/biomart/martservice/query/Query.java | 555 ---
.../martservice/query/QueryListener.java | 108 -
.../martservice/query/QueryXMLHandler.java | 332 --
.../biomart/martservice/config/ui/contract.gif | Bin 90 -> 0 bytes
.../biomart/martservice/config/ui/expand.gif | Bin 93 -> 0 bytes
.../martservice/config/ui/gene_schematic.gif | Bin 734 -> 0 bytes
.../config/ui/gene_schematic_3utr.gif | Bin 717 -> 0 bytes
.../config/ui/gene_schematic_5utr.gif | Bin 722 -> 0 bytes
.../config/ui/gene_schematic_cdna.gif | Bin 743 -> 0 bytes
.../config/ui/gene_schematic_coding.gif | Bin 760 -> 0 bytes
.../ui/gene_schematic_coding_gene_flank.gif | Bin 715 -> 0 bytes
.../gene_schematic_coding_transcript_flank.gif | Bin 765 -> 0 bytes
.../config/ui/gene_schematic_gene_exon.gif | Bin 504 -> 0 bytes
.../ui/gene_schematic_gene_exon_intron.gif | Bin 710 -> 0 bytes
.../config/ui/gene_schematic_gene_flank.gif | Bin 710 -> 0 bytes
.../config/ui/gene_schematic_peptide.gif | Bin 760 -> 0 bytes
.../ui/gene_schematic_transcript_exon.gif | Bin 920 -> 0 bytes
.../gene_schematic_transcript_exon_intron.gif | Bin 716 -> 0 bytes
.../ui/gene_schematic_transcript_flank.gif | Bin 751 -> 0 bytes
.../biomart/martservice/MartDatasetTest.java | 335 --
.../biomart/martservice/MartRegistryTest.java | 113 -
.../martservice/MartServiceUtilsTest.java | 65 -
.../martservice/MartServiceXMLHandlerTest.java | 218 --
.../martservice/MartURLLocationTest.java | 255 --
.../config/event/QueryComponentEventTest.java | 131 -
.../config/ui/MartServiceIconsTest.java | 77 -
.../martservice/query/AttributeTest.java | 164 -
.../biomart/martservice/query/DatasetTest.java | 308 --
.../biomart/martservice/query/FilterTest.java | 242 --
.../biomart/martservice/query/QueryTest.java | 303 --
taverna-biomart-martservice/pom.xml | 105 +
.../org/biomart/martservice/DatasetLink.java | 220 ++
.../org/biomart/martservice/MartDataset.java | 342 ++
.../java/org/biomart/martservice/MartQuery.java | 436 +++
.../org/biomart/martservice/MartRegistry.java | 96 +
.../org/biomart/martservice/MartService.java | 709 ++++
.../martservice/MartServiceException.java | 86 +
.../biomart/martservice/MartServiceUtils.java | 725 ++++
.../martservice/MartServiceXMLHandler.java | 390 ++
.../biomart/martservice/MartURLLocation.java | 422 +++
.../org/biomart/martservice/ResultReceiver.java | 61 +
.../martservice/ResultReceiverException.java | 85 +
.../config/QueryConfigController.java | 388 ++
.../martservice/config/QueryConfigUtils.java | 598 +++
.../config/event/QueryComponentAdapter.java | 109 +
.../config/event/QueryComponentEvent.java | 120 +
.../config/event/QueryComponentListener.java | 104 +
.../config/ui/ConfigDisplayObject.java | 125 +
.../martservice/config/ui/ExpandableBox.java | 204 +
.../martservice/config/ui/MartServiceIcons.java | 104 +
.../ui/MartServiceQueryConfigUIFactory.java | 3543 ++++++++++++++++++
.../martservice/config/ui/MinimalLayout.java | 158 +
.../martservice/config/ui/QueryComponent.java | 342 ++
.../config/ui/QueryConfigUIFactory.java | 345 ++
.../biomart/martservice/query/Attribute.java | 198 +
.../org/biomart/martservice/query/Dataset.java | 309 ++
.../org/biomart/martservice/query/Filter.java | 243 ++
.../org/biomart/martservice/query/Link.java | 181 +
.../org/biomart/martservice/query/Query.java | 555 +++
.../martservice/query/QueryListener.java | 108 +
.../martservice/query/QueryXMLHandler.java | 332 ++
.../biomart/martservice/config/ui/contract.gif | Bin 0 -> 90 bytes
.../biomart/martservice/config/ui/expand.gif | Bin 0 -> 93 bytes
.../martservice/config/ui/gene_schematic.gif | Bin 0 -> 734 bytes
.../config/ui/gene_schematic_3utr.gif | Bin 0 -> 717 bytes
.../config/ui/gene_schematic_5utr.gif | Bin 0 -> 722 bytes
.../config/ui/gene_schematic_cdna.gif | Bin 0 -> 743 bytes
.../config/ui/gene_schematic_coding.gif | Bin 0 -> 760 bytes
.../ui/gene_schematic_coding_gene_flank.gif | Bin 0 -> 715 bytes
.../gene_schematic_coding_transcript_flank.gif | Bin 0 -> 765 bytes
.../config/ui/gene_schematic_gene_exon.gif | Bin 0 -> 504 bytes
.../ui/gene_schematic_gene_exon_intron.gif | Bin 0 -> 710 bytes
.../config/ui/gene_schematic_gene_flank.gif | Bin 0 -> 710 bytes
.../config/ui/gene_schematic_peptide.gif | Bin 0 -> 760 bytes
.../ui/gene_schematic_transcript_exon.gif | Bin 0 -> 920 bytes
.../gene_schematic_transcript_exon_intron.gif | Bin 0 -> 716 bytes
.../ui/gene_schematic_transcript_flank.gif | Bin 0 -> 751 bytes
.../biomart/martservice/MartDatasetTest.java | 335 ++
.../biomart/martservice/MartRegistryTest.java | 113 +
.../martservice/MartServiceUtilsTest.java | 65 +
.../martservice/MartServiceXMLHandlerTest.java | 218 ++
.../martservice/MartURLLocationTest.java | 255 ++
.../config/event/QueryComponentEventTest.java | 131 +
.../config/ui/MartServiceIconsTest.java | 77 +
.../martservice/query/AttributeTest.java | 164 +
.../biomart/martservice/query/DatasetTest.java | 308 ++
.../biomart/martservice/query/FilterTest.java | 242 ++
.../biomart/martservice/query/QueryTest.java | 303 ++
119 files changed, 13954 insertions(+), 13982 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index ebe0e5b..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,24 +0,0 @@
-# ignore project files #
-.classpath
-.project
-.settings/
-catalog-v001.xml
-
-# ignore target files #
-target/
-bin/
-build/
-dist/
-apidoc/
-*.swp
-
-# ignore svn files if there
-.svn
-
-# ignore log files #
-*.log
-/logs/*
-*/logs/*
-
-
-
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index dff5f3a..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1 +0,0 @@
-language: java
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
deleted file mode 100644
index 801cc7d..0000000
--- a/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-Biomart webservice API
-
-This code was previously hosted at http://taverna.googlecode.com/svn/taverna/utils/org.biomart.martservice/
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
deleted file mode 100644
index 582a601..0000000
--- a/pom.xml
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>net.sf.taverna</groupId>
- <artifactId>taverna-parent</artifactId>
- <version>3.0.1-SNAPSHOT</version>
- </parent>
- <groupId>org.biomart</groupId>
- <artifactId>martservice</artifactId>
- <packaging>bundle</packaging>
- <name>MartService</name>
- <version>2.0.1-SNAPSHOT</version>
- <description>Biomart webservice API</description>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <version>2.3.7</version>
- <extensions>true</extensions>
- <configuration>
- <instructions>
- <Private-Package>org.ensembl.mart.lib,org.ensembl.mart.lib.config,org.ensembl.mart.util</Private-Package>
- <Import-Package>!org.ensembl.util,!org.ensembl.mart.editor,!oracle.sql,!gnu.getopt,!org.ewin.*,*</Import-Package>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <dependencies>
- <dependency>
- <groupId>org.biomart</groupId>
- <artifactId>martj</artifactId>
- <version>0.6</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jdom</groupId>
- <artifactId>com.springsource.org.jdom</artifactId>
- <version>1.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.httpclient</artifactId>
- <version>3.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.io</artifactId>
- <version>1.4.0</version>
- </dependency>
- <dependency>
- <groupId>org.apache.log4j</groupId>
- <artifactId>com.springsource.org.apache.log4j</artifactId>
- <version>${log4j.version}</version>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>${junit.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <repositories>
- <repository>
- <releases />
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- <id>mygrid-repository</id>
- <name>myGrid Repository</name>
- <url>http://www.mygrid.org.uk/maven/repository</url>
- </repository>
- <repository>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots />
- <id>mygrid-snapshot-repository</id>
- <name>myGrid Snapshot Repository</name>
- <url>http://www.mygrid.org.uk/maven/snapshot-repository</url>
- </repository>
- <repository>
- <id>com.springsource.repository.bundles.release</id>
- <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name>
- <url>http://repository.springsource.com/maven/bundles/release</url>
- </repository>
- <repository>
- <id>com.springsource.repository.bundles.external</id>
- <name>SpringSource Enterprise Bundle Repository - External Bundle Releases</name>
- <url>http://repository.springsource.com/maven/bundles/external</url>
- </repository>
- </repositories>
- <scm>
- <connection>scm:git:https://github.com/taverna/taverna-biomart-martservice.git</connection>
- <developerConnection>scm:git:ssh://git@github.com:taverna/taverna-biomart-martservice.git</developerConnection>
- <url>https://github.com/taverna/taverna-biomart-martservice/</url>
- <tag>HEAD</tag>
- </scm>
-</project>
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/src/main/java/org/biomart/martservice/DatasetLink.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/biomart/martservice/DatasetLink.java b/src/main/java/org/biomart/martservice/DatasetLink.java
deleted file mode 100644
index e5dccd4..0000000
--- a/src/main/java/org/biomart/martservice/DatasetLink.java
+++ /dev/null
@@ -1,220 +0,0 @@
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate. Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename $RCSfile: DatasetLink.java,v $
- * Revision $Revision: 1.2 $
- * Release status $State: Exp $
- * Last modified on $Date: 2007/12/13 11:38:55 $
- * by $Author: davidwithers $
- * Created on 12-Apr-2006
- *****************************************************************/
-package org.biomart.martservice;
-
-import java.util.Comparator;
-import java.util.HashSet;
-import java.util.Set;
-
-/**
- * The link between two MartDatasets and the list of possible the link IDs that
- * could join the source and target MartDataset.
- *
- * @author David Withers
- */
-public class DatasetLink {
- private static final Comparator<DatasetLink> displayComparator = new DatasetLinkComparator();
-
- private MartDataset sourceDataset;
-
- private MartDataset targetDataset;
-
- private Set<String> links = new HashSet<String>();
-
- /**
- * Constructs an instance of an <code>DatasetLink</code> with the
- * specified source and target.
- *
- * @param sourceDataset
- * the link source
- * @param targetDataset
- * the link target
- */
- public DatasetLink(MartDataset sourceDataset, MartDataset targetDataset) {
- this.sourceDataset = sourceDataset;
- this.targetDataset = targetDataset;
- }
-
- /**
- * Returns the source Dataset.
- *
- * @return the source Dataset
- */
- public MartDataset getSourceDataset() {
- return sourceDataset;
- }
-
- /**
- * Sets the source Dataset.
- *
- * @param sourceDataset
- * the sourceDataset to set
- */
- public void setSourceDataset(MartDataset sourceDataset) {
- this.sourceDataset = sourceDataset;
- }
-
- /**
- * Returns the target Dataset.
- *
- * @return the target Dataset
- */
- public MartDataset getTargetDataset() {
- return targetDataset;
- }
-
- /**
- * Sets the target Dataset.
- *
- * @param targetDataset
- * the target Dataset to set
- */
- public void setTargetDataset(MartDataset targetDataset) {
- this.targetDataset = targetDataset;
- }
-
- /**
- * Returns the link IDs that could join the source and target MartDatasets.
- *
- * @return the link IDs that could join the source and target MartDatasets
- */
- public String[] getLinks() {
- return links.toArray(new String[links.size()]);
- }
-
- /**
- * Adds a link ID.
- *
- * @param link
- * the link ID to add.
- */
- public void addLink(String link) {
- links.add(link);
- }
-
- /**
- * Returns true if this DatasetLink has link IDs.
- *
- * @return true if this DatasetLink has link IDs
- */
- public boolean hasLinks() {
- return !links.isEmpty();
- }
-
- public String toString() {
- return "[" + sourceDataset.getMartURLLocation().getDisplayName() + "] "
- + sourceDataset.getDisplayName();
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#hashCode()
- */
- public int hashCode() {
- final int PRIME = 31;
- int result = 1;
- result = PRIME * result + ((sourceDataset == null) ? 0 : sourceDataset.hashCode());
- result = PRIME * result + ((targetDataset == null) ? 0 : targetDataset.hashCode());
- return result;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final DatasetLink other = (DatasetLink) obj;
- if (sourceDataset == null) {
- if (other.sourceDataset != null)
- return false;
- } else if (!sourceDataset.equals(other.sourceDataset))
- return false;
- if (targetDataset == null) {
- if (other.targetDataset != null)
- return false;
- } else if (!targetDataset.equals(other.targetDataset))
- return false;
- return true;
- }
-
- /**
- * Returns a Comparator that compares DatasetLinks based on the display name
- * of the source dataset and the display name of the MartURLLocation
- * containing the source dataset.
- *
- * @return the display comparator
- */
- public static Comparator<DatasetLink> getDisplayComparator() {
- return displayComparator;
- }
-
-}
-
-/**
- * Comparator that compares DatasetLinks based on the display name of the source
- * MartDataset and the display name of the MartURLLocation containing the source
- * MartDataset.
- *
- * @author David Withers
- */
-class DatasetLinkComparator implements Comparator<DatasetLink> {
-
- /**
- * Compares two DatasetLinks based on the display name of the source dataset
- * and the display name of the MartURLLocation containing the source
- * dataset.
- *
- * @param o1
- * the first DatasetLink to be compared
- * @param o2
- * the second DatasetLink to be compared
- * @return a negative integer, zero, or a positive integer as the first
- * argument is less than, equal to, or greater than the second
- */
- public int compare(DatasetLink o1, DatasetLink o2) {
- MartDataset ds1 = o1.getSourceDataset();
- MartDataset ds2 = o2.getSourceDataset();
- int result = ds1.getDisplayName().compareTo(ds2.getDisplayName());
- if (result == 0) {
- result = ds1.getMartURLLocation().getDisplayName().compareTo(
- ds2.getMartURLLocation().getDisplayName());
- }
- return result;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/src/main/java/org/biomart/martservice/MartDataset.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/biomart/martservice/MartDataset.java b/src/main/java/org/biomart/martservice/MartDataset.java
deleted file mode 100644
index 8c0f584..0000000
--- a/src/main/java/org/biomart/martservice/MartDataset.java
+++ /dev/null
@@ -1,342 +0,0 @@
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate. Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename $RCSfile: MartDataset.java,v $
- * Revision $Revision: 1.2 $
- * Release status $State: Exp $
- * Last modified on $Date: 2007/10/04 14:17:19 $
- * by $Author: davidwithers $
- * Created on 17-Mar-2006
- *****************************************************************/
-package org.biomart.martservice;
-
-import java.util.Comparator;
-
-/**
- * The dataset returned by a BioMart web service.
- *
- * @author David Withers
- */
-public class MartDataset {
- private static final Comparator<MartDataset> displayComparator = new MartDatasetComparator();
-
- private String type;
-
- private String name;
-
- private String displayName;
-
- private boolean visible;
-
- private long initialBatchSize;
-
- private long maximumBatchSize;
-
- private String interfaceValue;
-
- private String modified;
-
- private MartURLLocation martURLLocation;
-
- /**
- * Returns the displayName.
- *
- * @return the displayName.
- */
- public String getDisplayName() {
- return displayName;
- }
-
- /**
- * Sets the displayName.
- *
- * @param displayName
- * the displayName to set.
- */
- public void setDisplayName(String displayName) {
- this.displayName = displayName;
- }
-
- /**
- * Returns the initialBatchSize.
- *
- * @return the initialBatchSize.
- */
- public long getInitialBatchSize() {
- return initialBatchSize;
- }
-
- /**
- * Sets the initialBatchSize.
- *
- * @param initialBatchSize
- * the initialBatchSize to set.
- */
- public void setInitialBatchSize(long initialBatchSize) {
- this.initialBatchSize = initialBatchSize;
- }
-
- /**
- * Returns the maximumBatchSize.
- *
- * @return the maximumBatchSize.
- */
- public long getMaximumBatchSize() {
- return maximumBatchSize;
- }
-
- /**
- * Sets the maximumBatchSize.
- *
- * @param maximumBatchSize
- * the maximumBatchSize to set.
- */
- public void setMaximumBatchSize(long maximumBatchSize) {
- this.maximumBatchSize = maximumBatchSize;
- }
-
- /**
- * Returns the name.
- *
- * @return the name.
- */
- public String getName() {
- return name;
- }
-
- /**
- * Sets the name.
- *
- * @param name
- * the name to set.
- */
- public void setName(String name) {
- this.name = name;
- }
-
- /**
- * Returns the type.
- *
- * @return the type.
- */
- public String getType() {
- return type;
- }
-
- /**
- * Sets the type.
- *
- * @param type
- * the type to set.
- */
- public void setType(String type) {
- this.type = type;
- }
-
- /**
- * Returns the visible flag.
- *
- * @return the visible flag
- */
- public boolean isVisible() {
- return visible;
- }
-
- /**
- * Sets the visible flag.
- *
- * @param visible
- * the visible flag
- */
- public void setVisible(boolean visible) {
- this.visible = visible;
- }
-
- /**
- * Returns the modified date.
- *
- * @return the modified date
- */
- public String getModified() {
- return modified;
- }
-
- /**
- * Sets the modified date.
- *
- * @param modified the new modified date
- */
- public void setModified(String modified) {
- this.modified = modified;
- }
-
- /**
- * Returns the interface.
- *
- * @return the interface
- */
- public String getInterface() {
- return interfaceValue;
- }
-
- /**
- * Sets the interface.
- *
- * @param interfaceValue the new interface
- */
- public void setInterface(String interfaceValue) {
- this.interfaceValue = interfaceValue;
- }
-
- /**
- * Returns the martURLLocation.
- *
- * @return the martURLLocation
- */
- public MartURLLocation getMartURLLocation() {
- return martURLLocation;
- }
-
- /**
- * Sets the martURLLocation.
- *
- * @param martURLLocation
- * the martURLLocation to set.
- */
- public void setMartURLLocation(MartURLLocation martURLLocation) {
- this.martURLLocation = martURLLocation;
- }
-
- /**
- * Returns the virtualSchema of the martURLLocation. If the martURLLocation
- * is null, null is returned.
- *
- * @return the virtualSchema of the martURLLocation
- */
- public String getVirtualSchema() {
- MartURLLocation martURLLocation = getMartURLLocation();
- if (martURLLocation != null) {
- return martURLLocation.getVirtualSchema();
- } else {
- return null;
- }
- }
-
- /**
- * Returns the qualified name of this dataset in the format
- * 'virtualSchemaName.datasetName'. If there is no virtualSchema the
- * datasetName is returned.
- *
- * @return the qualified name of this dataset
- */
- public String getQualifiedName() {
- String schema = getVirtualSchema();
- if (schema != null) {
- return schema + "." + getName();
- } else {
- return getName();
- }
- }
-
- /**
- * Returns the display name.
- *
- * @return the display name
- */
- public String toString() {
- return getDisplayName();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Object#hashCode()
- */
- public int hashCode() {
- final int PRIME = 31;
- int result = 1;
- result = PRIME
- * result
- + ((getQualifiedName() == null) ? 0 : getQualifiedName()
- .hashCode());
- return result;
- }
-
- /**
- * Tests equality based on the qualified name.
- *
- * @return true if the objects are equal based on the qualified name
- */
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final MartDataset other = (MartDataset) obj;
- if (getQualifiedName() == null) {
- if (other.getQualifiedName() != null)
- return false;
- } else if (!getQualifiedName().equals(other.getQualifiedName()))
- return false;
- return true;
- }
-
- /**
- * Returns a Comparator that compares MartDatasets based on their display
- * names.
- *
- * @return the display comparator
- */
- public static Comparator<MartDataset> getDisplayComparator() {
- return displayComparator;
- }
-
-}
-
-/**
- * Comparator that compares MartDatasets based on their display names.
- *
- * @author David Withers
- */
-class MartDatasetComparator implements Comparator<MartDataset> {
-
- /**
- * Compares two MartDatasets based on their display names.
- *
- * @param martDataset1
- * the first MartDataset to be compared
- * @param martDataset2
- * the second MartDataset to be compared
- * @return a negative integer, zero, or a positive integer as the first
- * argument is less than, equal to, or greater than the second
- */
- public int compare(MartDataset martDataset1, MartDataset martDataset2) {
- return martDataset1.getDisplayName().compareTo(martDataset2.getDisplayName());
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/src/main/java/org/biomart/martservice/MartQuery.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/biomart/martservice/MartQuery.java b/src/main/java/org/biomart/martservice/MartQuery.java
deleted file mode 100644
index 9f75566..0000000
--- a/src/main/java/org/biomart/martservice/MartQuery.java
+++ /dev/null
@@ -1,436 +0,0 @@
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate. Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename $RCSfile: MartQuery.java,v $
- * Revision $Revision: 1.2 $
- * Release status $State: Exp $
- * Last modified on $Date: 2007/12/13 11:38:55 $
- * by $Author: davidwithers $
- * Created on 08-May-2006
- *****************************************************************/
-package org.biomart.martservice;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.biomart.martservice.query.Attribute;
-import org.biomart.martservice.query.Dataset;
-import org.biomart.martservice.query.Filter;
-import org.biomart.martservice.query.Link;
-import org.biomart.martservice.query.Query;
-import org.ensembl.mart.lib.config.AttributeDescription;
-import org.ensembl.mart.lib.config.DatasetConfig;
-
-/**
- * Class for creating queries to send to a BioMart web service.
- *
- * @author David Withers
- */
-public class MartQuery {
- private MartService martService;
-
- private MartDataset martDataset;
-
- private Query query;
-
- private Map<String, String> linkedDatasets = new HashMap<String, String>();
-
- private String softwareVersion;
-
- public MartQuery() {
-
- }
-
- public MartQuery(MartService martService, MartDataset martDataset, String requestId) {
- String version = null;
- try {
- version = martService.getVersion(martDataset.getMartURLLocation());
- } catch (MartServiceException e) {
- //assume it's a pre 0.5 mart service
- }
- setMartService(martService);
- setMartDataset(martDataset);
- if (version == null || version.equals("0.4")) {
- setQuery(new Query(martDataset.getVirtualSchema(), null, requestId));
- } else {
- setQuery(new Query(martDataset.getVirtualSchema(), version, requestId));
- }
- }
-
- /**
- * @param martService
- * @param martDataset
- * @param query
- */
- public MartQuery(MartService martService, MartDataset martDataset,
- Query query) {
- setMartService(martService);
- setMartDataset(martDataset);
- setQuery(query);
- }
-
- /**
- * Returns the martDataset.
- *
- * @return the martDataset.
- */
- public MartDataset getMartDataset() {
- return martDataset;
- }
-
- /**
- * Sets the martDataset.
- *
- * @param martDataset
- * the martDataset to set.
- */
- public void setMartDataset(MartDataset martDataset) {
- this.martDataset = martDataset;
- }
-
- /**
- * Returns the martService.
- *
- * @return the martService.
- */
- public MartService getMartService() {
- return martService;
- }
-
- /**
- * Sets the martService.
- *
- * @param martService
- * the martService to set.
- */
- public void setMartService(MartService martService) {
- this.martService = martService;
- }
-
- /**
- * Returns the query.
- *
- * @return the query.
- */
- public Query getQuery() {
- return query;
- }
-
- /**
- * Sets the query.
- *
- * @param query
- * the query to set.
- */
- public void setQuery(Query query) {
- this.query = query;
- softwareVersion = query.getSoftwareVersion();
- }
-
- /**
- * Adds the ID that links the specified dataset to the initial dataset.
- *
- * @param datasetName
- * the dataset
- * @param linkId
- * the link ID
- */
- public void addLinkedDataset(String datasetName, String linkId) {
- linkedDatasets.put(datasetName, linkId);
- }
-
- /**
- * Removes a dataset and any datasets linked to it.
- *
- * @param datasetName
- * the dataset to remove
- */
- public void removeLinkedDataset(String datasetName) {
- linkedDatasets.remove(datasetName);
- if (query.containsDataset(datasetName)) {
- Dataset dataset = query.getDataset(datasetName);
- dataset.removeAllAttributes();
- dataset.removeAllFilters();
- query.removeDataset(dataset);
- for (Link link : query.getLinks(datasetName)) {
- removeLinkedDataset(link.getTarget());
- }
-
- }
- if (query.containsLink(datasetName)) {
- query.removeLink(query.getLink(datasetName));
- }
- }
-
- /**
- * Changes the ID that links a dataset. This method performs no function,
- * nor does it throw an exception, if the specified dataset does not exist.
- *
- * @param datasetName
- * the dataset
- * @param linkId
- * the link ID
- */
- public void changeLinkedDataset(String datasetName, String linkId) {
- if (linkedDatasets.containsKey(datasetName)) {
- linkedDatasets.put(datasetName, linkId);
- if (query.containsLink(datasetName)) {
- query.getLink(datasetName).setDefaultLink(linkId);
- }
- }
- }
-
- public Set<String> getLinkedDatasets() {
- return linkedDatasets.keySet();
- }
-
- public String getLink(String datasetName) {
- return (String) linkedDatasets.get(datasetName);
- }
-
- /**
- * Returns the Datasets that this Query contains in the order specified by
- * the links.
- *
- * @return the Datasets that this Query contains in the order specified by
- * the links
- */
- public List<Dataset> getDatasetsInLinkOrder() {
- if (query.getLinks().size() > 0) {
- List<Dataset> datasets = new ArrayList<Dataset>();
- datasets.addAll(getLinkedDatasets(martDataset.getName()));
- // add other datasets
- for (Dataset dataset : query.getDatasets()) {
- if (!datasets.contains(dataset)) {
- datasets.add(dataset);
- }
- }
- return datasets;
- } else {
- return query.getDatasets();
- }
- }
-
- /**
- * @param dataset
- * @return
- */
- private List<Dataset> getLinkedDatasets(String dataset) {
- List<Dataset> datasets = new ArrayList<Dataset>();
- datasets.add(query.getDataset(dataset));
- if (query.containsLink(dataset)) {
- Link link = query.getLink(dataset);
- if (!link.getTarget().equals(martDataset.getName())) {
- datasets.addAll(getLinkedDatasets(link.getTarget()));
- }
- }
- return datasets;
- }
-
- /**
- * Returns all the Attributes from all the Datasets in this Query in the
- * order specified by the links.
- *
- * @return all the Attributes from all the Datasets in this Query in the
- * order specified by the links
- */
- public List<Attribute> getAttributesInLinkOrder() {
- List<Attribute> attributes = new ArrayList<Attribute>();
- List<Dataset> datasets;
- if (softwareVersion == null) {
- datasets = getDatasetsInLinkOrder();
- } else {
- datasets = query.getDatasets();
- }
- for (Dataset dataset : datasets) {
- attributes.addAll(dataset.getAttributes());
- }
- return attributes;
- }
-
- /**
- * Adds an Attribute to the Dataset with the given datasetName. If the Query
- * has no Dataset with the given datasetName then a new Dataset is created.
- *
- * @param datasetName
- * the name of the Dataset to add the Attribute to
- * @param attribute
- * the Attribute to add
- * @throws MartServiceException
- */
- public void addAttribute(String datasetName, Attribute attribute) {
- if (!query.containsDataset(datasetName)) {
- Dataset dataset = new Dataset(datasetName);
- if (datasetName.equals(martDataset.getName())) {
- query.addDataset(0, dataset);
- } else {
- query.addDataset(dataset);
- }
- }
- Dataset dataset = query.getDataset(datasetName);
- dataset.addAttribute(attribute);
- }
-
- /**
- * Removes an Attribute from its containing Dataset.
- *
- * @param attribute
- */
- public void removeAttribute(Attribute attribute) {
- Dataset dataset = attribute.getContainingDataset();
- if (dataset != null) {
- if (dataset.removeAttribute(attribute)) {
- if (!dataset.hasAttributes() && !dataset.hasFilters()) {
- Query query = dataset.getContainingQuery();
- if (query != null) {
- query.removeDataset(dataset);
- }
- }
- }
- }
- }
-
- /**
- * Adds a Filter to the Dataset with the given datasetName. If the Query has
- * no Dataset with the given datasetName then a new Dataset is created.
- *
- * @param datasetName
- * the name of the Dataset to add the Filter to
- * @param filter
- * the Filter to add
- * @throws MartServiceException
- */
- public void addFilter(String datasetName, Filter filter) {
- if (!query.containsDataset(datasetName)) {
- Dataset dataset = new Dataset(datasetName);
- if (datasetName.equals(martDataset.getName())) {
- query.addDataset(0, dataset);
- } else {
- query.addDataset(dataset);
- }
- }
- Dataset dataset = query.getDataset(datasetName);
- dataset.addFilter(filter);
- }
-
- /**
- * Removes a Filter from its containing Dataset.
- *
- * @param filter
- */
- public void removeFilter(Filter filter) {
- Dataset dataset = filter.getContainingDataset();
- if (dataset != null) {
- if (dataset.removeFilter(filter)) {
- if (!dataset.hasAttributes() && !dataset.hasFilters()) {
- Query query = dataset.getContainingQuery();
- if (query != null) {
- query.removeDataset(dataset);
- }
- }
- }
- }
- }
-
- /**
- * @throws MartServiceException
- */
- public void calculateLinks() throws MartServiceException {
- if (softwareVersion == null) {
- if (!martService.linksCalculated()) {
- martService.calculateLinks();
- }
- for (Link link : query.getLinks()) {
- query.removeLink(link);
- }
- for (Dataset dataset : query.getDatasets()) {
- if (!martDataset.getName().equals(dataset.getName())) {
- addLinks(dataset.getName());
- }
- }
- }
- }
-
- /**
- * @param source
- * @throws MartServiceException
- */
- public void addLinks(String source) throws MartServiceException {
- MartDataset sourceDataset = martService.getDataset(martDataset
- .getVirtualSchema(), source);
- MartDataset targetDataset = martDataset;
- List<MartDataset> path = martService.getPath(sourceDataset, targetDataset);
- if (path == null) {
- path = martService.getPath(targetDataset, sourceDataset);
- }
- if (path == null) {
- throw new MartServiceException("No link between " + source
- + " and " + targetDataset.getName());
- }
- Iterator<MartDataset> iter = path.iterator();
- if (iter.hasNext()) {
- MartDataset lastDataset = (MartDataset) iter.next();
- while (iter.hasNext()) {
- MartDataset dataset = (MartDataset) iter.next();
- DatasetLink link = martService.getLinkBetween(lastDataset,
- dataset);
- String linkId = link.getLinks()[0];
- if (link.getLinks().length > 1) {
- if (getLink(source) != null) {
- linkId = getLink(source);
- } else {
- List<Attribute> attributes = query.getDataset(source)
- .getAttributes();
- if (attributes.size() > 0) {
- Attribute attribute = (Attribute) attributes.get(0);
- DatasetConfig config = martService
- .getDatasetConfig(sourceDataset);
- if (config.containsAttributeDescription(attribute
- .getName())) {
- AttributeDescription description = config
- .getAttributeDescriptionByInternalName(attribute
- .getName());
- String datasetLink = description
- .getDatasetLink();
- if (datasetLink != null) {
- linkId = datasetLink;
- }
- }
- }
- }
- }
- query.addLink(new Link(lastDataset.getName(),
- dataset.getName(), linkId));
- lastDataset = dataset;
- }
- }
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/src/main/java/org/biomart/martservice/MartRegistry.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/biomart/martservice/MartRegistry.java b/src/main/java/org/biomart/martservice/MartRegistry.java
deleted file mode 100644
index 93bf04d..0000000
--- a/src/main/java/org/biomart/martservice/MartRegistry.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate. Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename $RCSfile: MartRegistry.java,v $
- * Revision $Revision: 1.2 $
- * Release status $State: Exp $
- * Last modified on $Date: 2007/12/13 11:38:55 $
- * by $Author: davidwithers $
- * Created on 17-Mar-2006
- *****************************************************************/
-package org.biomart.martservice;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * The MartRegistry returned by a BioMart web service.
- *
- * @author David Withers
- */
-public class MartRegistry {
- private List<MartURLLocation> martURLLocations = new ArrayList<MartURLLocation>();
-
- /**
- * Returns the martURLLocations.
- *
- * @return the martURLLocations.
- */
- public MartURLLocation[] getMartURLLocations() {
- return martURLLocations
- .toArray(new MartURLLocation[martURLLocations.size()]);
- }
-
- /**
- * Adds a martURLLocation to the registry.
- *
- * @param martURLLocations
- * the martURLLocations to add.
- */
- public void addMartURLLocation(MartURLLocation martURLLocation) {
- martURLLocations.add(martURLLocation);
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#hashCode()
- */
- public int hashCode() {
- final int PRIME = 31;
- int result = 1;
- result = PRIME * result + ((martURLLocations == null) ? 0 : martURLLocations.hashCode());
- return result;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final MartRegistry other = (MartRegistry) obj;
- if (martURLLocations == null) {
- if (other.martURLLocations != null)
- return false;
- } else if (!martURLLocations.equals(other.martURLLocations))
- return false;
- return true;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/src/main/java/org/biomart/martservice/MartService.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/biomart/martservice/MartService.java b/src/main/java/org/biomart/martservice/MartService.java
deleted file mode 100644
index c02bbb5..0000000
--- a/src/main/java/org/biomart/martservice/MartService.java
+++ /dev/null
@@ -1,709 +0,0 @@
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate. Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename $RCSfile: MartService.java,v $errors/failure.html
- * Revision $Revision: 1.7 $
- * Release status $State: Exp $
- * Last modified on $Date: 2008/08/11 12:48:29 $
- * by $Author: davidwithers $
- * Created on 17-Mar-2006
- *****************************************************************/
-package org.biomart.martservice;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.lang.ref.SoftReference;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.zip.GZIPInputStream;
-import java.util.zip.GZIPOutputStream;
-
-import org.apache.log4j.Logger;
-import org.biomart.martservice.query.Query;
-import org.ensembl.mart.lib.config.ConfigurationException;
-import org.ensembl.mart.lib.config.DatasetConfig;
-import org.ensembl.mart.lib.config.DatasetConfigXMLUtils;
-import org.ensembl.mart.lib.config.Exportable;
-import org.ensembl.mart.lib.config.Importable;
-import org.jdom.Document;
-import org.jdom.JDOMException;
-import org.jdom.input.SAXBuilder;
-import org.xml.sax.InputSource;
-
-/**
- * A class for interacting with a BioMart web service.
- *
- * @author David Withers
- */
-public class MartService {
- private static Logger logger = Logger.getLogger(MartServiceUtils.class);
-
- private String location;
-
- private String requestId;
-
- private File cacheDirectory;
-
- private MartRegistry registry;
-
- private Map<MartURLLocation, String> versionMap = new HashMap<MartURLLocation, String>();
-
- private Map<String, MartDataset[]> datasetsMap = new HashMap<String, MartDataset[]>();
-
- private Map<String, SoftReference<DatasetConfig>> datasetConfigMap = new HashMap<String, SoftReference<DatasetConfig>>();
-
- private Map<String, Importable[]> importablesMap = new HashMap<String, Importable[]>();
-
- private Map<String, Exportable[]> exportablesMap = new HashMap<String, Exportable[]>();
-
- private Map<MartDataset, List<DatasetLink>> linkableDatasetsMap = new HashMap<MartDataset, List<DatasetLink>>();
-
- private Map<MartDataset, Set<DatasetLink>> datasetToLinkSetMap = new HashMap<MartDataset, Set<DatasetLink>>();
-
- private Map<MartDataset, Map<MartDataset, MartDataset>> datasetsToPathMap = new HashMap<MartDataset, Map<MartDataset, MartDataset>>();
-
- private static final Map<String, MartService> martServiceMap = new HashMap<String, MartService>();
-
- private static final String fs = System.getProperty("file.separator");
-
- private boolean linksCalculated = false;
-
- /**
- * Constructs an instance of a <code>MartService</code> with the specified
- * location.
- *
- * The location must be the URL of a valid BioMart MartService, e.g.
- * http://www.biomart.org/biomart/martservice
- *
- * @param location
- * the URL of the MartService
- */
- private MartService(String location) {
- this.location = location;
- }
-
- /**
- * Returns a <code>MartService</code> for the specified location. If a
- * <code>MartService</code> does not exist for the location a new one is
- * constructed.
- *
- * The location must be the URL of a valid BioMart MartService, e.g.
- * http://www.biomart.org/biomart/martservice
- *
- * @param location
- * the URL of the MartService
- */
- public static MartService getMartService(String location) {
- if (!martServiceMap.containsKey(location)) {
- martServiceMap.put(location, new MartService(location));
- }
- return martServiceMap.get(location);
- }
-
- /**
- * Returns the requestId.
- *
- * @return the requestId
- */
- public String getRequestId() {
- return requestId;
- }
-
- /**
- * Sets the requestId.
- *
- * @param requestId
- * the new requestId
- */
- public void setRequestId(String requestId) {
- this.requestId = requestId;
- }
-
- /**
- * Returns the cacheDirectory.
- *
- * @return the cacheDirectory
- */
- public File getCacheDirectory() {
- return cacheDirectory;
- }
-
- /**
- * Sets the cacheDirectory.
- *
- * @param cacheDirectory
- * the new cacheDirectory
- */
- public void setCacheDirectory(File cacheDirectory) {
- this.cacheDirectory = cacheDirectory;
- }
-
- /**
- * Returns the URL of the MartService.
- *
- * @return the URL of the MartService
- */
- public String getLocation() {
- return location;
- }
-
- /**
- * Removes any cached items.
- */
- public void clearCache() {
- registry = null;
- datasetsMap.clear();
- datasetConfigMap.clear();
- importablesMap.clear();
- exportablesMap.clear();
- }
-
- /**
- * Returns the MartRegistry for this MartService.
- *
- * @return the MartRegistry for this MartService
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public MartRegistry getRegistry() throws MartServiceException {
- if (registry == null) {
- registry = MartServiceUtils.getRegistry(location, requestId);
- }
- return registry;
- }
-
- public String getVersion(MartURLLocation martURLLocation)
- throws MartServiceException {
- if (!versionMap.containsKey(martURLLocation)) {
- versionMap.put(martURLLocation, MartServiceUtils.getVersion(
- location, requestId, martURLLocation));
- }
- return versionMap.get(martURLLocation);
- }
-
- /**
- * Returns all the datasets available from this MartService.
- *
- * @return all the datasets available from this MartService.
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public MartDataset[] getDatasets() throws MartServiceException {
- List<MartDataset> datasets = new ArrayList<MartDataset>();
- MartURLLocation[] locations = getRegistry().getMartURLLocations();
- for (int i = 0; i < locations.length; i++) {
- datasets.addAll(Arrays.asList(getDatasets(locations[i])));
- }
- return datasets.toArray(new MartDataset[datasets.size()]);
- }
-
- /**
- * Returns the datasets belonging to the virtualSchema.
- *
- * @param virtualSchema
- * the virtual schema to include datasets from.
- * @return the datasets belonging to the virtualSchema.
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public MartDataset[] getDatasets(String virtualSchema)
- throws MartServiceException {
- List<MartDataset> datasets = new ArrayList<MartDataset>();
- MartURLLocation[] locations = getRegistry().getMartURLLocations();
- for (int i = 0; i < locations.length; i++) {
- if (virtualSchema == null
- || virtualSchema.equals(locations[i].getVirtualSchema())) {
- datasets.addAll(Arrays.asList(getDatasets(locations[i])));
- }
- }
- return datasets.toArray(new MartDataset[datasets.size()]);
- }
-
- /**
- * Returns the datasets specified by martURLLocation.
- *
- * @param martURLLocation
- * where to find the datasets.
- * @return the datasets specified by martURLLocation.
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public MartDataset[] getDatasets(MartURLLocation martURLLocation)
- throws MartServiceException {
- String name = martURLLocation.getName();
- if (!datasetsMap.containsKey(name)) {
- datasetsMap.put(name, MartServiceUtils.getDatasets(location,
- requestId, martURLLocation));
- }
- return datasetsMap.get(name);
- }
-
- /**
- * Returns the dataset specified by a virtualSchema and a dataset name.
- *
- * @param virtualSchema
- * the virtualSchema containing the dataset
- * @param datasetName
- * the name of the dataset to return
- * @return a dataset
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public MartDataset getDataset(String virtualSchema, String datasetName)
- throws MartServiceException {
- MartDataset result = null;
- MartDataset[] datasets = getDatasets(virtualSchema);
- for (int i = 0; i < datasets.length; i++) {
- if (datasetName.equals(datasets[i].getName())) {
- result = datasets[i];
- break;
- }
- }
- return result;
- }
-
- /**
- * Returns the configuration for a dataset.
- *
- * @param dataset
- * the dataset to get the configuration for
- * @return the configuration for a dataset
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public DatasetConfig getDatasetConfig(MartDataset dataset)
- throws MartServiceException {
- String qualifiedName = dataset.getQualifiedName();
- DatasetConfig datasetConfig;
- if (!datasetConfigMap.containsKey(qualifiedName)) {
- if (dataset.getModified() != null && cacheDirectory != null) {
- datasetConfig = getDatasetConfigFromCache(dataset);
- } else {
- datasetConfig = MartServiceUtils.getDatasetConfig(location,
- requestId, dataset);
- }
- datasetConfigMap.put(qualifiedName,
- new SoftReference<DatasetConfig>(datasetConfig));
- } else {
- datasetConfig = datasetConfigMap.get(qualifiedName).get();
- if (datasetConfig == null) {
- if (dataset.getModified() != null && cacheDirectory != null) {
- datasetConfig = getDatasetConfigFromCache(dataset);
- } else {
- datasetConfig = MartServiceUtils.getDatasetConfig(location,
- requestId, dataset);
- }
- datasetConfigMap.put(qualifiedName,
- new SoftReference<DatasetConfig>(datasetConfig));
- }
-
- }
- return datasetConfig;
- }
-
- private DatasetConfig getDatasetConfigFromCache(MartDataset dataset)
- throws MartServiceException {
- DatasetConfig datasetConfig = null;
- MartURLLocation mart = dataset.getMartURLLocation();
- String path = mart.getHost() + fs + mart.getName() + fs
- + mart.getVirtualSchema();
- File martCacheDir = new File(cacheDirectory, path);
- martCacheDir.mkdirs();
- File cache = new File(martCacheDir, dataset.getName() + ".cfg");
- DatasetConfigXMLUtils datasetConfigXMLUtils = new DatasetConfigXMLUtils(
- true);
- if (cache.exists()) {
- try {
- SAXBuilder builder = new SAXBuilder();
- Document doc = builder.build(new InputSource(
- new GZIPInputStream(new FileInputStream(cache))));
-
- // Document doc =
- // datasetConfigXMLUtils.getDocumentForXMLStream(new
- // FileInputStream(cache));
-
- datasetConfig = datasetConfigXMLUtils
- .getDatasetConfigForDocument(doc);
- datasetConfigXMLUtils.loadDatasetConfigWithDocument(
- datasetConfig, doc);
- if (!datasetConfig.getModified().trim().equals(
- dataset.getModified().trim())) {
- logger.info(" " + datasetConfig.getModified().trim()
- + " != " + dataset.getModified().trim());
- logger.info(" Database: "
- + dataset.getMartURLLocation().getDatabase()
- + ", Dataset: " + dataset.getName());
- datasetConfig = null;
- }
- } catch (IOException e) {
- logger.debug("error reading cache from " + cache.getPath(), e);
- datasetConfig = null;
- } catch (ConfigurationException e) {
- logger.debug("error parsing from " + cache.getPath(), e);
- datasetConfig = null;
- } catch (JDOMException e) {
- logger.debug("error parsing from " + cache.getPath(), e);
- datasetConfig = null;
- }
- }
- if (datasetConfig == null) {
- datasetConfig = MartServiceUtils.getDatasetConfig(location,
- requestId, dataset);
- try {
- GZIPOutputStream zipOutputStream = new GZIPOutputStream(
- new FileOutputStream(cache));
- datasetConfigXMLUtils.writeDatasetConfigToOutputStream(
- datasetConfig, zipOutputStream);
- zipOutputStream.flush();
- zipOutputStream.close();
- } catch (IOException e) {
- logger.debug("error writing cache to " + cache.getPath(), e);
- } catch (ConfigurationException e) {
- logger.debug("error writing cache to " + cache.getPath(), e);
- }
- }
- return datasetConfig;
- }
-
- /**
- * Returns the importables for a dataset.
- *
- * @param dataset
- * @return the importables for a dataset
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public Importable[] getImportables(MartDataset dataset)
- throws MartServiceException {
- String qualifiedName = dataset.getQualifiedName();
- if (!importablesMap.containsKey(qualifiedName)) {
- try {
- importablesMap.put(qualifiedName, getDatasetConfig(dataset)
- .getImportables());
- } catch (MartServiceException e) {
- return new Importable[0];
- }
- }
- return importablesMap.get(qualifiedName);
- }
-
- /**
- * Returns the exportables for a dataset.
- *
- * @param dataset
- * @return the exportables for a dataset
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public Exportable[] getExportables(MartDataset dataset)
- throws MartServiceException {
- String qualifiedName = dataset.getQualifiedName();
- if (!exportablesMap.containsKey(qualifiedName)) {
- try {
- exportablesMap.put(qualifiedName, getDatasetConfig(dataset)
- .getExportables());
- } catch (MartServiceException e) {
- return new Exportable[0];
- }
- }
- return exportablesMap.get(qualifiedName);
- }
-
- /**
- * Sends a <code>Query</code> to the MartService and returns the results
- * of executing the query.
- *
- * The results are returned as an array of lists; one list for each
- * attribute specified in the query.
- *
- * @param query
- * the query to execute
- * @return the results of executing the query
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- */
- public Object[] executeQuery(Query query) throws MartServiceException {
- // logger.info(MartServiceUtils.queryToXML(query));
- return MartServiceUtils.getResults(location, requestId, query);
- }
-
- /**
- * Sends a <code>Query</code> to the MartService and writes the results to
- * the <code>ResultReceiver</code> as each line of the result stream is
- * read.
- *
- * @param query
- * @param resultReceiver
- * @throws MartServiceException
- * if the MartService returns an error or is unavailable
- * @throws ResultReceiverException
- * if the ResultReceiver cannot receive the result
- * @see ResultReceiver
- */
- public void executeQuery(Query query, ResultReceiver resultReceiver)
- throws MartServiceException, ResultReceiverException {
- MartServiceUtils.putResults(location, requestId, query, resultReceiver);
- }
-
- /**
- * Returns a list of datasets that can be linked to the specified dataset.
- *
- * @param martDataset
- * @return datasets that can be linked to the specified dataset
- * @throws MartServiceException
- */
- public List<DatasetLink> getLinkableDatasets(MartDataset martDataset)
- throws MartServiceException {
- if (!linkableDatasetsMap.containsKey(martDataset)) {
- List<DatasetLink> linkableDatasets = new ArrayList<DatasetLink>();
-
- Set<String> importableSet = new HashSet<String>();
- Importable[] importables = getImportables(martDataset);
- for (int i = 0; i < importables.length; i++) {
- importableSet.add(importables[i].getLinkName());
- }
-
- MartDataset[] datasets = getDatasets(martDataset.getVirtualSchema());
- for (int j = 0; j < datasets.length; j++) {
- if (datasets[j].isVisible()
- && !datasets[j].getName().equals(martDataset.getName())) {
- DatasetLink datasetLink = new DatasetLink(datasets[j],
- martDataset);
- Exportable[] exportables = getExportables(datasets[j]);
- for (int k = 0; k < exportables.length; k++) {
- String link = exportables[k].getLinkName();
- if (importableSet.contains(link)) {
- datasetLink.addLink(link);
- }
- }
- if (datasetLink.hasLinks()) {
- linkableDatasets.add(datasetLink);
- }
- }
- }
- linkableDatasetsMap.put(martDataset, linkableDatasets);
- }
-
- return linkableDatasetsMap.get(martDataset);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals(Object obj) {
- boolean result = false;
- if (obj != null) {
- MartService other = (MartService) obj;
- if (location == null) {
- result = other.location == null;
- } else {
- result = location.equals(other.location);
- }
- }
- return result;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Object#hashCode()
- */
- public int hashCode() {
- return location.hashCode();
- }
-
- public boolean linksCalculated() {
- return linksCalculated;
- }
-
- // java implementation of the perl stuff that calculates links.
- // all this should go for the next version of biomart.
-
- public void calculateLinks() throws MartServiceException {
- synchronized (location) {
- if (!linksCalculated) {
- datasetToLinkSetMap.clear();
- datasetsToPathMap.clear();
-
- MartDataset[] allDatasets = getDatasets();
- for (int i = 0; i < allDatasets.length; i++) {
- MartDataset[] datasets = getDatasets(allDatasets[i]
- .getVirtualSchema());
- for (int j = 0; j < datasets.length; j++) {
- if (!allDatasets[i].getName().equals(
- datasets[j].getName())) {
- linkDatasets(allDatasets[i], datasets[j]);
- }
- }
- }
- for (int i = 0; i < allDatasets.length; i++) {
- datasetsToPathMap.put(allDatasets[i],
- dijkstra(allDatasets[i]));
- }
- linksCalculated = true;
- }
- }
- }
-
- public List<MartDataset> getPath(MartDataset source, MartDataset target) {
- List<MartDataset> path = new ArrayList<MartDataset>();
-
- Map<MartDataset, MartDataset> pathMap = datasetsToPathMap.get(source);
-
- MartDataset currentDataset = target;
-
- while (currentDataset != null) {
- path.add(0, currentDataset);
- currentDataset = (MartDataset) pathMap.get(currentDataset);
- }
-
- if (path.size() < 2 || !path.get(0).equals(source)
- || !path.get(path.size() - 1).equals(target)) {
- return null;
- }
-
- return path;
- }
-
- public DatasetLink getLinkBetween(MartDataset exportingDataset,
- MartDataset importingDataset) {
- Set<DatasetLink> links = datasetToLinkSetMap.get(exportingDataset);
- for (DatasetLink link : links) {
- MartDataset targetDataset = link.getTargetDataset();
- if (importingDataset.equals(targetDataset)) {
- return link;
- }
- }
-
- return null;
- }
-
- public List<DatasetLink> getLinksFrom(MartDataset dataset) {
- List<DatasetLink> linksFrom = new ArrayList<DatasetLink>();
- Set<DatasetLink> links = datasetToLinkSetMap.get(dataset);
- if (links != null) {
- for (DatasetLink link : links) {
- if (link.getSourceDataset().equals(dataset)) {
- linksFrom.add(link);
- }
- }
- }
- return linksFrom;
- }
-
- public void linkDatasets(MartDataset source, MartDataset target)
- throws MartServiceException {
- DatasetLink datasetLink = new DatasetLink(source, target);
- Importable[] importables = getImportables(target);
- for (int i = 0; i < importables.length; i++) {
- Exportable[] exportables = getExportables(source);
- for (int j = 0; j < exportables.length; j++) {
- if (importables[i].getLinkName().equals(
- exportables[j].getLinkName())) {
- String importVersion = importables[i].getLinkVersion();
- String exportVersion = exportables[j].getLinkVersion();
- if (importVersion != null && exportVersion != null) {
- if (importVersion.equals(exportVersion)) {
- datasetLink.addLink(importables[i].getLinkName());
- }
- } else {
- datasetLink.addLink(importables[i].getLinkName());
- }
- }
- }
- }
- if (datasetLink.hasLinks()) {
- if (!datasetToLinkSetMap.containsKey(source)) {
- datasetToLinkSetMap.put(source, new HashSet<DatasetLink>());
- }
- if (!datasetToLinkSetMap.containsKey(target)) {
- datasetToLinkSetMap.put(target, new HashSet<DatasetLink>());
- }
- datasetToLinkSetMap.get(source).add(datasetLink);
- datasetToLinkSetMap.get(target).add(datasetLink);
- }
- }
-
- public Map<MartDataset, MartDataset> dijkstra(MartDataset dataset)
- throws MartServiceException {
- Map<MartDataset, MartDataset> path = new HashMap<MartDataset, MartDataset>();
- LinkedList<MartDataset> vertices = new LinkedList<MartDataset>(Arrays
- .asList(getDatasets(dataset.getVirtualSchema())));
- Map<MartDataset, Integer> dist = new HashMap<MartDataset, Integer>();
- for (MartDataset vertex : vertices) {
- dist.put(vertex, new Integer(10000));
- }
-
- dist.put(dataset, new Integer(0));
-
- while (vertices.size() > 0) {
- int min_vert_idx = 0;
- MartDataset min_vert = (MartDataset) vertices.get(min_vert_idx);
- int min_dist = ((Integer) dist.get(min_vert)).intValue();
-
- for (int vertex_idx = 0; vertex_idx < vertices.size(); vertex_idx++) {
- MartDataset vertex = (MartDataset) vertices.get(vertex_idx);
- if (((Integer) dist.get(vertex)).intValue() < min_dist) {
- min_vert_idx = vertex_idx;
- min_vert = vertex;
- min_dist = ((Integer) dist.get(vertex)).intValue();
- }
- }
-
- if (min_dist == 10000) {
- // Exhausted a disjoint set of datasets.
- break;
- }
-
- vertices.remove(min_vert_idx);
-
- List<DatasetLink> edges = getLinksFrom(min_vert);
- for (DatasetLink edge : edges) {
- MartDataset vertex = edge.getTargetDataset();
-
- if (((Integer) dist.get(vertex)).intValue() > ((Integer) dist
- .get(min_vert)).intValue() + 1) {
- dist.put(vertex, new Integer(((Integer) dist.get(min_vert))
- .intValue() + 1));
- path.put(vertex, min_vert);
- }
- }
- }
-
- return path;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-bioinformatics/blob/9e08cac0/src/main/java/org/biomart/martservice/MartServiceException.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/biomart/martservice/MartServiceException.java b/src/main/java/org/biomart/martservice/MartServiceException.java
deleted file mode 100644
index f1f0639..0000000
--- a/src/main/java/org/biomart/martservice/MartServiceException.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate. Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename $RCSfile: MartServiceException.java,v $
- * Revision $Revision: 1.1 $
- * Release status $State: Exp $
- * Last modified on $Date: 2007/01/31 14:12:05 $
- * by $Author: davidwithers $
- * Created on 05-May-2006
- *****************************************************************/
-package org.biomart.martservice;
-
-/**
- * Thrown when a MartService is inaccessable or returns an error.
- *
- * @author David Withers
- */
-public class MartServiceException extends Exception {
- private static final long serialVersionUID = 5535008907746588537L;
-
- /**
- * Constructs a new exception with no detail message.
- *
- */
- public MartServiceException() {
- super();
- }
-
- /**
- * Constructs a new exception with the specified detail message.
- *
- * @param message
- * the detail message
- * @param cause
- * the cause (a null value is permitted, and indicates that the
- * cause is nonexistent or unknown)
- */
- public MartServiceException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new exception with the specified detail message and cause.
- *
- * @param message
- * the detail message
- */
- public MartServiceException(String message) {
- super(message);
- }
-
- /**
- * Constructs a new exception with the specified cause.
- *
- * @param cause
- * the cause (a null value is permitted, and indicates that the
- * cause is nonexistent or unknown)
- */
- public MartServiceException(Throwable cause) {
- super(cause);
- }
-
-}