-public class EmblFeatureLocations {
- Vector locElements;
- String locationType;
- boolean locationComplement;
- /**
- * @return the locationComplement
- */
- public boolean isLocationComplement() {
- return locationComplement;
- }
- /**
- * @param locationComplement the locationComplement to set
- */
- public void setLocationComplement(boolean locationComplement) {
- this.locationComplement = locationComplement;
- }
- /**
- * @return the locationType
- */
- public String getLocationType() {
- return locationType;
- }
- /**
- * @param locationType the locationType to set
- */
- public void setLocationType(String locationType) {
- this.locationType = locationType;
- }
- /**
- * @return the locElements
- */
- public Vector getLocElements() {
- return locElements;
- }
- /**
- * @param locElements the locElements to set
- */
- public void setLocElements(Vector locElements) {
- this.locElements = locElements;
- }
- /**
- * Return all location elements as start-end pairs (without accessions)
- * TODO: pass back complement and 'less than or more than' range information
- * Note: do not use this since it throws away any accessionIds associated with
- * each location!
- * @return int[] { start1, end1, ... }
- */
- public int[] getElementRanges() {
- return getElementRanges(null);
- }
- /**
- * Return all location elements concerning given accession as start-end pairs
- * TODO: pass back complement and 'less than or more than' range information
- * TODO: deal with multiple accessions
- * @param accession the accession string for which locations are requested, or null for all locations
- * @return null or int[] { start1, end1, ... }
- */
-
- public int[] getElementRanges(String accession)
+public class EmblFeatureLocations
+{
+ Vector locElements;
+
+ String locationType;
+
+ boolean locationComplement;
+
+ /**
+ * @return the locationComplement
+ */
+ public boolean isLocationComplement()
+ {
+ return locationComplement;
+ }
+
+ /**
+ * @param locationComplement
+ * the locationComplement to set
+ */
+ public void setLocationComplement(boolean locationComplement)
+ {
+ this.locationComplement = locationComplement;
+ }
+
+ /**
+ * @return the locationType
+ */
+ public String getLocationType()
+ {
+ return locationType;
+ }
+
+ /**
+ * @param locationType
+ * the locationType to set
+ */
+ public void setLocationType(String locationType)
+ {
+ this.locationType = locationType;
+ }
+
+ /**
+ * @return the locElements
+ */
+ public Vector getLocElements()
+ {
+ return locElements;
+ }
+
+ /**
+ * @param locElements
+ * the locElements to set
+ */
+ public void setLocElements(Vector locElements)
+ {
+ this.locElements = locElements;
+ }
+
+ /**
+ * Return all location elements as start-end pairs (without accessions) TODO:
+ * pass back complement and 'less than or more than' range information Note:
+ * do not use this since it throws away any accessionIds associated with each
+ * location!
+ *
+ * @return int[] { start1, end1, ... }
+ */
+ public int[] getElementRanges()
+ {
+ return getElementRanges(null);
+ }
+
+ /**
+ * Return all location elements concerning given accession as start-end pairs
+ * TODO: pass back complement and 'less than or more than' range information
+ * TODO: deal with multiple accessions
+ *
+ * @param accession
+ * the accession string for which locations are requested, or null
+ * for all locations
+ * @return null or int[] { start1, end1, ... }
+ */
+
+ public int[] getElementRanges(String accession)
+ {
+ int sepos = 0;
+ int[] se = new int[locElements.size() * 2];
+ if (locationType.equalsIgnoreCase("single"))