+ return;
+ }
+ for (File f : files)
+ {
+ Platform.cacheFileData(f);
+ }
+ }
+
+ /**
+ * Retrieves and saves as file any modelled PDB entries for which we do not
+ * already have a file saved. Returns a list of absolute paths to structure
+ * files which were either retrieved, or already stored but not modelled in
+ * the structure viewer (i.e. files to add to the viewer display).
+ *
+ * Currently only used by Jmol - similar but different code used for Chimera/X
+ * and Pymol so still need to refactor
+ *
+ * @param structureViewer
+ * UI proxy for the structure viewer
+ * @return list of absolute paths to structures retrieved that need to be
+ * added to the display
+ */
+ public List<String> fetchPdbFiles(StructureViewerBase structureViewer)
+ {
+ // todo - record which pdbids were successfully imported.
+ StringBuilder errormsgs = new StringBuilder();
+
+ List<String> files = new ArrayList<>();
+ String pdbid = "";
+ try
+ {
+ String[] filesInViewer = getStructureFiles();
+ // TODO: replace with reference fetching/transfer code (validate PDBentry
+ // as a DBRef?)
+
+ for (int pi = 0; pi < getPdbCount(); pi++)