James Moger
2011-10-28 ac7f1753d3f742e0af8dd5e142b4eac9d9d2fbba
src/com/gitblit/client/StatusPanel.java
@@ -27,8 +27,10 @@
import javax.swing.JScrollPane;
import javax.swing.JTable;
import com.gitblit.Constants;
import com.gitblit.models.ServerStatus;
import com.gitblit.utils.ByteFormat;
import com.gitblit.utils.TimeUtils;
/**
 * This panel displays the server status.
@@ -40,40 +42,57 @@
   private static final long serialVersionUID = 1L;
   private final Insets insets = new Insets(5, 5, 5, 5);
   private JLabel bootDate;
   private JLabel url;
   private JLabel servletContainer;
   private JLabel heapMaximum;
   private JLabel heapAllocated;
   private JLabel heapUsed;
   private PropertiesTableModel model;
   private HeaderPanel headerPanel;
   private JLabel version;
   private JLabel releaseDate;
   public StatusPanel() {
      super();
      initialize();
   }
   public StatusPanel(ServerStatus status) {
   public StatusPanel(String url, ServerStatus status) {
      this();
      setStatus(status);
      setStatus(url, status);
   }
   private void initialize() {
      version = new JLabel();
      releaseDate = new JLabel();
      bootDate = new JLabel();
      url = new JLabel();
      servletContainer = new JLabel();
      heapMaximum = new JLabel();
      heapAllocated = new JLabel();
      heapUsed = new JLabel();
      JPanel fieldsPanel = new JPanel(new GridLayout(0, 1));
      JPanel fieldsPanel = new JPanel(new GridLayout(0, 1, 0, 5)) {
         private static final long serialVersionUID = 1L;
         @Override
         public Insets getInsets() {
            return insets;
         }
      };
      fieldsPanel.add(createFieldPanel("gb.version", version));
      fieldsPanel.add(createFieldPanel("gb.releaseDate", releaseDate));
      fieldsPanel.add(createFieldPanel("gb.bootDate", bootDate));
      fieldsPanel.add(createFieldPanel("gb.url", url));
      fieldsPanel.add(createFieldPanel("gb.servletContainer", servletContainer));
      fieldsPanel.add(createFieldPanel("gb.heapUsed", heapUsed));
      fieldsPanel.add(createFieldPanel("gb.heapAllocated", heapAllocated));
      fieldsPanel.add(createFieldPanel("gb.heapMaximum", heapMaximum));
      model = new PropertiesTableModel();
      JTable propertiesTable = Utils.newTable(model);
      JTable propertiesTable = Utils.newTable(model, Utils.DATE_FORMAT);
      String name = propertiesTable.getColumnName(PropertiesTableModel.Columns.Name.ordinal());
      NameRenderer nameRenderer = new NameRenderer();
      propertiesTable.setRowHeight(nameRenderer.getFont().getSize() + 8);
@@ -90,10 +109,10 @@
   }
   private JPanel createFieldPanel(String key, JLabel valueLabel) {
      JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT, 5, 5));
      JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT, 5, 0));
      JLabel textLabel = new JLabel(Translation.get(key));
      textLabel.setFont(textLabel.getFont().deriveFont(Font.BOLD));
      textLabel.setPreferredSize(new Dimension(120, valueLabel.getFont().getSize() + 4));
      textLabel.setPreferredSize(new Dimension(120, 10));
      panel.add(textLabel);
      panel.add(valueLabel);
      return panel;
@@ -104,9 +123,13 @@
      return insets;
   }
   public void setStatus(ServerStatus status) {
   public void setStatus(String url, ServerStatus status) {
      headerPanel.setText(Translation.get("gb.status"));
      bootDate.setText(status.bootDate.toString());
      version.setText(Constants.NAME + (status.isGO ? " GO v" : " WAR v") + status.version);
      releaseDate.setText(status.releaseDate);
      bootDate.setText(status.bootDate.toString() + " (" + TimeUtils.timeAgo(status.bootDate)
            + ")");
      this.url.setText(url);
      servletContainer.setText(status.servletContainer);
      ByteFormat byteFormat = new ByteFormat();
      heapMaximum.setText(byteFormat.format(status.heapMaximum));