- public String getJalviewAlignmentAsJsonString(AlignmentI alignment)
- throws IOException, JSONException
- {
- AlignmentPojo bjsAlignment = new AlignmentPojo();
-
- // bjsAlignment.setGlobalColorScheme(getGlobalColorScheme());
- // bjsAlignment.setJalviewVersion(jalviewVersion);
- // bjsAlignment.setWebStartUrl(webStartLaunchServletUrl);
-
- int count = 0;
- for (SequenceI seq : alignment.getSequences())
- {
- StringBuilder name = new StringBuilder();
- name.append(seq.getName()).append("/").append(seq.getStart())
- .append("-").append(seq.getEnd());
-
- SequencePojo seqPojo = new SequencePojo();
- seqPojo.setId(String.valueOf(++count));
- seqPojo.setEnd(seq.getEnd());
- seqPojo.setStart(seq.getStart());
- seqPojo.setName(name.toString());
- seqPojo.setSeq(seq.getSequenceAsString());
-
- SequenceFeature[] seqFeatures = seq.getSequenceFeatures();
- if (seqFeatures != null)
- {
- ArrayList<SequenceFeaturesPojo> bjsSeqFeatures = new ArrayList<SequenceFeaturesPojo>();
- for (SequenceFeature sf : seqFeatures)
- {
- if (displayedFeatures != null
- && displayedFeatures.isVisible(sf.getType()))
- {
-
- // TODO: translate graduated/complex colourschemes to biojs model
- String featureColour = jalview.util.Format.getHexString(fr
- .findFeatureColour(Color.white, seq,
- seq.findIndex(sf.getBegin())));
- // SequenceFeaturesPojo bjsFeature = new SequenceFeaturesPojo();
- // bjsFeature.setFillColor(featureColour);
- // bjsFeature.setXstart(seq.findIndex(sf.getBegin()) - 1);
- // bjsFeature.setXend(seq.findIndex(sf.getEnd()));
- // bjsFeature.setType(sf.getType());
- // bjsSeqFeatures.add(bjsFeature);
- }
- }
- // seqPojo.setFeatures(bjsSeqFeatures);
- }
- bjsAlignment.getSeqs().add(seqPojo);
- }
-
- return new com.json.JSONObject(bjsAlignment).toString()
- .replaceAll("xstart", "xStart").replaceAll("xend", "xEnd");
- }