/* Note: low and high are relative coordinates */ protected String getResiduesFromSourceImpl(int low, int high) { int realStart = low; // + getRange().getStart(); int realEnd = high; // + getRange().getStart(); Hashtable var = new Hashtable(); // var.put("bp_start",String.valueOf(new Integer(realStart))); // var.put("bp_end", String.valueOf(new Integer(realEnd))); // var.put("chr",getRange().getName()); // var.put("type","basepairs"); // var.put("format","fasta"); // var.put("region","1"); // var.put("btnsubmit","Export"); // var.put("tab","fasta"); // http://dev.ensembl.org:80/perl/exportview?tab=fasta&btnsubmit=Export&format=fasta®ion=1&type=basepairs&chr=2&bp_start=123&bp_end=100000 var.put("vc_start", String.valueOf(new Integer(realStart))); var.put("vc_end", String.valueOf(new Integer(realEnd))); var.put("chr", getRange().getName()); var.put("seqonly", "1"); // http://dev.ensembl.org:80/perl/exportview?tab=fasta&btnsubmit=Export&format=fasta®ion=1&type=basepairs&chr=2&bp_start=123&bp_end=100000 String host = server; int port = Config.getCGIPort(); String cgistr = "perl/apolloview"; // String cgistr = "perl/exportview"; CGI cgi = new CGI(host, port, cgistr, var, System.out); cgi.run(); FastaFile fa = new FastaFile(cgi.getInput(), false); Vector seqs = fa.getSeqs(); if (seqs.size() == 1) { System.out.println("Returning sequence"); return ((SequenceI) seqs.elementAt(0)).getResidues(); } else { System.out.println("Returning null"); return null; } }