* - process html strings into plain text
* @return true if features were added
*/
- public boolean parse(AlignmentI align, Hashtable colours,
- boolean removeHTML)
+ public boolean parse(AlignmentI align, Map colours, boolean removeHTML)
{
return parse(align, colours, null, removeHTML, false);
}
{
SequenceI seq = null;
/**
- * keep track of any sequences we try to create from the data if it is a GFF3 file
+ * keep track of any sequences we try to create from the data if it is a
+ * GFF3 file
*/
ArrayList<SequenceI> newseqs = new ArrayList<SequenceI>();
String type, desc, token = null;
* @return true if sf was actually added to the sequence, false if it was
* processed in another way
*/
- public boolean processOrAddSeqFeature(AlignmentI align, List<SequenceI> newseqs, SequenceI seq, SequenceFeature sf,
+ public boolean processOrAddSeqFeature(AlignmentI align,
+ List<SequenceI> newseqs, SequenceI seq, SequenceFeature sf,
boolean gFFFile, boolean relaxedIdMatching)
{
String attr = (String) sf.getValue("ATTRIBUTES");
boolean add = true;
if (gFFFile && attr != null)
{
- int nattr=8;
+ int nattr = 8;
for (String attset : attr.split("\t"))
{
- if (attset==null || attset.trim().length()==0)
+ if (attset == null || attset.trim().length() == 0)
{
continue;
}
continue;
}
- // expect either space seperated (gff2) or '=' separated (gff3)
+ // expect either space seperated (gff2) or '=' separated (gff3)
// key/value pairs here
- int eqpos = pair.indexOf('='),sppos = pair.indexOf(' ');
+ int eqpos = pair.indexOf('='), sppos = pair.indexOf(' ');
String key = null, value = null;
if (sppos > -1 && (eqpos == -1 || sppos < eqpos))
{
key = pair.substring(0, sppos);
value = pair.substring(sppos + 1);
- } else {
+ }
+ else
+ {
if (eqpos > -1 && (sppos == -1 || eqpos < sppos))
{
key = pair.substring(0, eqpos);
value = pair.substring(eqpos + 1);
- } else
+ }
+ else
{
key = pair;
}
{
add &= processGffKey(set, nattr, seq, sf, align, newseqs,
relaxedIdMatching); // process decides if
- // feature is actually
- // added
+ // feature is actually
+ // added
} catch (InvalidGFF3FieldException ivfe)
{
System.err.println(ivfe);
{
int strand = sf.getStrand();
// exonerate cdna/protein map
- // look for fields
+ // look for fields
List<SequenceI> querySeq = findNames(align, newseqs,
- relaxedIdMatching, set.get(attr="Query"));
- if (querySeq==null || querySeq.size()!=1)
+ relaxedIdMatching, set.get(attr = "Query"));
+ if (querySeq == null || querySeq.size() != 1)
{
- throw new InvalidGFF3FieldException( attr, set,
+ throw new InvalidGFF3FieldException(attr, set,
"Expecting exactly one sequence in Query field (got "
+ set.get(attr) + ")");
}
- if (set.containsKey(attr="Align"))
+ if (set.containsKey(attr = "Align"))
{
// process the align maps and create cdna/protein maps
// ideally, the query sequences are in the alignment, but maybe not...
-
+
AlignedCodonFrame alco = new AlignedCodonFrame();
MapList codonmapping = constructCodonMappingFromAlign(set, attr,
strand);
}
private MapList constructCodonMappingFromAlign(
- Map<String, List<String>> set,
- String attr, int strand) throws InvalidGFF3FieldException
+ Map<String, List<String>> set, String attr, int strand)
+ throws InvalidGFF3FieldException
{
if (strand == 0)
{
}
}
}
-
+
}
- if (match==null && newseqs!=null)
+ if (match == null && newseqs != null)
{
match = new SequenceDummy(seqId);
if (relaxedIdMatching)
{
- matcher.addAll(Arrays.asList(new SequenceI[]
- { match }));
+ matcher.addAll(Arrays.asList(new SequenceI[] { match }));
}
// add dummy sequence to the newseqs list
newseqs.add(match);
}
return match;
}
+
public void parseDescriptionHTML(SequenceFeature sf, boolean removeHTML)
{
if (sf.getDescription() == null)
* hash of feature types and colours
* @return features file contents
*/
- public String printJalviewFormat(SequenceI[] seqs, Map<String,Object> visible)
+ public String printJalviewFormat(SequenceI[] seqs,
+ Map<String, Object> visible)
{
return printJalviewFormat(seqs, visible, true, true);
}
* @param visible
* @return
*/
- public String printGFFFormat(SequenceI[] seqs, Map<String,Object> visible)
+ public String printGFFFormat(SequenceI[] seqs, Map<String, Object> visible)
{
return printGFFFormat(seqs, visible, true, true);
}
- public String printGFFFormat(SequenceI[] seqs, Map<String,Object> visible,
- boolean visOnly, boolean nonpos)
+ public String printGFFFormat(SequenceI[] seqs,
+ Map<String, Object> visible, boolean visOnly, boolean nonpos)
{
StringBuffer out = new StringBuffer();
SequenceFeature[] next;