X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FJSONFile.java;h=f977b04bfd03dc9cbb388975e52ddafad4482581;hb=refs%2Fheads%2Ffeatures%2FJAL-1780_export-settings_flatfile;hp=d2b8412803a06628d06a73331b6a4b7a315a74f9;hpb=60bf4c4778ecca475a951c4dd00731933d0b7c59;p=jalview.git diff --git a/src/jalview/io/JSONFile.java b/src/jalview/io/JSONFile.java index d2b8412..f977b04 100644 --- a/src/jalview/io/JSONFile.java +++ b/src/jalview/io/JSONFile.java @@ -79,8 +79,6 @@ public class JSONFile extends AlignFile implements ComplexAlignFile private FeatureRenderer fr; - private JSONExportSettings jsonExportSettings; - private List hiddenColumns; private ColumnSelection columnSelection; @@ -123,15 +121,6 @@ public class JSONFile extends AlignFile implements ComplexAlignFile String jsonOutput = null; try { - if (getJsonExportSettings() == null) - { - jsonExportSettings = new JSONExportSettings(); - jsonExportSettings.setExportAnnotations(true); - jsonExportSettings.setExportGroups(true); - jsonExportSettings.setExportJalviewSettings(true); - jsonExportSettings.setExportSequenceFeatures(true); - } - AlignmentPojo jsonAlignmentPojo = new AlignmentPojo(); if (getViewport() != null) { @@ -159,44 +148,46 @@ public class JSONFile extends AlignFile implements ComplexAlignFile jsonAlignmentPojo.getSeqs().add(jsonSeqPojo); } - if (jsonExportSettings.isExportJalviewSettings()) + jsonAlignmentPojo.setGlobalColorScheme(globalColorScheme); + jsonAlignmentPojo.getAppSettings().put("application", application); + jsonAlignmentPojo.getAppSettings().put("version", version); + jsonAlignmentPojo.getAppSettings().put("webStartUrl", webstartUrl); + jsonAlignmentPojo.getAppSettings().put("showSeqFeatures", + String.valueOf(showSeqFeatures)); + + String[] hiddenSections = getHiddenSections(); + if (hiddenSections != null) { - jsonAlignmentPojo.setGlobalColorScheme(globalColorScheme); - jsonAlignmentPojo.getAppSettings().put("application", application); - jsonAlignmentPojo.getAppSettings().put("version", version); - jsonAlignmentPojo.getAppSettings().put("webStartUrl", webstartUrl); - jsonAlignmentPojo.getAppSettings().put("showSeqFeatures", - String.valueOf(showSeqFeatures)); - - String[] hiddenSections = exportHiddenSections(); - if (hiddenSections != null && getViewport().isIncludeHiddenRegion()) + if (hiddenSections[0] != null + && getViewport().getExportSettings() + .isExportHiddenColumns()) { - if (hiddenSections[0] != null) - { - jsonAlignmentPojo.getAppSettings().put("hiddenCols", - String.valueOf(hiddenSections[0])); - } - if (hiddenSections[1] != null) - { - jsonAlignmentPojo.getAppSettings().put("hiddenSeqs", - String.valueOf(hiddenSections[1])); - } + jsonAlignmentPojo.getAppSettings().put("hiddenCols", + String.valueOf(hiddenSections[0])); + } + if (hiddenSections[1] != null + && getViewport().getExportSettings() + .isExportHiddenSequences()) + { + jsonAlignmentPojo.getAppSettings().put("hiddenSeqs", + String.valueOf(hiddenSections[1])); } } - if (jsonExportSettings.isExportAnnotations()) + if (getViewport().getExportSettings().isExportAnnotations()) { jsonAlignmentPojo .setAlignAnnotation(annotationToJsonPojo(annotations)); } - if (jsonExportSettings.isExportSequenceFeatures()) + if (getViewport().getExportSettings().isExportFeatures()) { jsonAlignmentPojo .setSeqFeatures(sequenceFeatureToJsonPojo(seqs, fr)); } - if (jsonExportSettings.isExportGroups() && seqGroups != null + if (getViewport().getExportSettings().isExportGroups() + && seqGroups != null && seqGroups.size() > 0) { for (SequenceGroup seqGrp : seqGroups) @@ -231,7 +222,7 @@ public class JSONFile extends AlignFile implements ComplexAlignFile return jsonOutput; } - public String[] exportHiddenSections() + public String[] getHiddenSections() { String[] hiddenSections = new String[2]; if (getViewport() == null) @@ -614,16 +605,6 @@ public class JSONFile extends AlignFile implements ComplexAlignFile this.displayedFeatures = displayedFeatures; } - public JSONExportSettings getJsonExportSettings() - { - return jsonExportSettings; - } - - public void setJsonExportSettings(JSONExportSettings jsonExportSettings) - { - this.jsonExportSettings = jsonExportSettings; - } - public static String getJSONData(AlignViewportI av) {