package org.rrd4j.inspector; import java.io.File; import java.text.DecimalFormat; class InspectorModel { private MainTreeModel mainTreeModel = new MainTreeModel(); private HeaderTableModel generalTableModel = new HeaderTableModel(); private DatasourceTableModel datasourceTableModel = new DatasourceTableModel(); private ArchiveTableModel archiveTableModel = new ArchiveTableModel(); private DataTableModel dataTableModel = new DataTableModel(); private File file; private boolean ok = false; MainTreeModel getMainTreeModel() { return mainTreeModel; } HeaderTableModel getGeneralTableModel() { return generalTableModel; } DatasourceTableModel getDatasourceTableModel() { return datasourceTableModel; } DataTableModel getDataTableModel() { return dataTableModel; } ArchiveTableModel getArchiveTableModel() { return archiveTableModel; } void setFile(File file) { this.file = file; this.ok = mainTreeModel.setFile(file); generalTableModel.setFile(file); datasourceTableModel.setFile(file); archiveTableModel.setFile(file); dataTableModel.setFile(file); } void refresh() { setFile(file); } void selectModel(int dsIndex, int arcIndex) { datasourceTableModel.setIndex(dsIndex); archiveTableModel.setIndex(dsIndex, arcIndex); dataTableModel.setIndex(dsIndex, arcIndex); } File getFile() { return file; } boolean isOk() { return ok; } private static String DOUBLE_FORMAT = "0.0000000000E00"; private static final DecimalFormat df = new DecimalFormat(DOUBLE_FORMAT); static String formatDouble(double x, String nanString) { if (Double.isNaN(x)) { return nanString; } return df.format(x); } static String formatDouble(double x) { return formatDouble(x, Double.toString(Double.NaN)); } }