/*
* Copyright (c) 2010-2012 Thiago T. Sá
*
* This file is part of CloudReports.
*
* CloudReports is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* CloudReports is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* For more information about your rights as a user of CloudReports,
* refer to the LICENSE file or see <http://www.gnu.org/licenses/>.
*/
package cloudreports.gui.datacenters;
import cloudreports.dao.DatacenterRegistryDAO;
import cloudreports.dao.HostRegistryDAO;
import cloudreports.enums.*;
import cloudreports.gui.MainView;
import cloudreports.models.DatacenterRegistry;
import cloudreports.models.HostRegistry;
/**
* The EditHost form.
* Most of its code is generated automatically by the NetBeans IDE.
*
* @author Thiago T. Sá
* @since 1.0
*/
public class EditHost extends javax.swing.JDialog {
/** The host being edited. */
HostRegistry hr;
/** An instance of host registry DAO. */
HostRegistryDAO hrDAO;
/** A specific datacenter view. */
SpecificDatacenterView sdcv;
/** Creates a new EditHost form. */
public EditHost(HostRegistry h, SpecificDatacenterView sdcv) {
hr = h;
hrDAO = new HostRegistryDAO();
this.sdcv=sdcv;
initComponents();
amountSpinner.setValue(hr.getAmount());
ramSpinner.setValue(hr.getRam());
bwSpinner.setValue(hr.getBw());
maxPowerSpinner.setValue(hr.getMaxPower());
sppSinner.setValue(hr.getStaticPowerPercent());
storageSpinner.setValue(hr.getStorage());
pesSpinner.setValue(hr.getNumOfPes());
mipsSpinner.setValue(hr.getMipsPerPe());
schedulingBox.setSelectedItem(hr.getSchedulingPolicyAlias());
pmBox.setSelectedItem(hr.getPowerModelAlias());
ramProvBox.setSelectedItem(hr.getRamProvisionerAlias());
bwProvBox.setSelectedItem(hr.getBwProvisionerAlias());
peProvisionerBox.setSelectedItem(hr.getPeProvisionerAlias());
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
okButton = new javax.swing.JButton();
jPanel1 = new javax.swing.JPanel();
amountLabel = new javax.swing.JLabel();
amountSpinner = new javax.swing.JSpinner();
schedulingLabel = new javax.swing.JLabel();
pesLabel = new javax.swing.JLabel();
mipsLabel = new javax.swing.JLabel();
maxPowerLabel = new javax.swing.JLabel();
sppLabel = new javax.swing.JLabel();
pmLabel = new javax.swing.JLabel();
ramLabel = new javax.swing.JLabel();
pesSpinner = new javax.swing.JSpinner();
schedulingBox = new javax.swing.JComboBox();
mipsSpinner = new javax.swing.JSpinner();
maxPowerSpinner = new javax.swing.JSpinner();
sppSinner = new javax.swing.JSpinner();
pmBox = new javax.swing.JComboBox();
ramSpinner = new javax.swing.JSpinner();
ramProvLabel = new javax.swing.JLabel();
ramProvBox = new javax.swing.JComboBox();
bwProvLabel = new javax.swing.JLabel();
bwProvBox = new javax.swing.JComboBox();
bwLabel = new javax.swing.JLabel();
bwSpinner = new javax.swing.JSpinner();
storageLabel = new javax.swing.JLabel();
storageSpinner = new javax.swing.JSpinner();
peProvisionerLabel = new javax.swing.JLabel();
peProvisionerBox = new javax.swing.JComboBox();
setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
setTitle("Edit Host");
setModal(true);
setResizable(false);
okButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/cloudreports/gui/resources/ok.png"))); // NOI18N
okButton.setText("OK");
okButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
okButtonActionPerformed(evt);
}
});
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Settings"));
amountLabel.setText("Amount:");
amountSpinner.setModel(new javax.swing.SpinnerNumberModel(Integer.valueOf(1), Integer.valueOf(1), null, Integer.valueOf(1)));
amountSpinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
amountSpinnerStateChanged(evt);
}
});
schedulingLabel.setText("VM scheduling:");
pesLabel.setText("Processing elements:");
mipsLabel.setText("MIPS/PE:");
maxPowerLabel.setText("Maximum power:");
sppLabel.setText("Static power percent:");
pmLabel.setText("Power model:");
ramLabel.setText("RAM:");
pesSpinner.setModel(new javax.swing.SpinnerNumberModel(Integer.valueOf(1), Integer.valueOf(1), null, Integer.valueOf(1)));
pesSpinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
pesSpinnerStateChanged(evt);
}
});
schedulingBox.setModel(new javax.swing.DefaultComboBoxModel(VmScheduler.getVmSchedulerNames()));
schedulingBox.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
schedulingBoxItemStateChanged(evt);
}
});
mipsSpinner.setModel(new javax.swing.SpinnerNumberModel(Double.valueOf(10.0d), Double.valueOf(10.0d), null, Double.valueOf(10.0d)));
mipsSpinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
mipsSpinnerStateChanged(evt);
}
});
maxPowerSpinner.setModel(new javax.swing.SpinnerNumberModel(Double.valueOf(10.0d), Double.valueOf(10.0d), null, Double.valueOf(10.0d)));
maxPowerSpinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
maxPowerSpinnerStateChanged(evt);
}
});
sppSinner.setModel(new javax.swing.SpinnerNumberModel(0.0d, 0.0d, 1.0d, 0.05d));
sppSinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
sppSinnerStateChanged(evt);
}
});
pmBox.setModel(new javax.swing.DefaultComboBoxModel(PowerModel.getPowerModelNames()));
pmBox.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
pmBoxItemStateChanged(evt);
}
});
ramSpinner.setModel(new javax.swing.SpinnerNumberModel(Integer.valueOf(32), Integer.valueOf(32), null, Integer.valueOf(16)));
ramSpinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
ramSpinnerStateChanged(evt);
}
});
ramProvLabel.setText("RAM Provisioner:");
ramProvBox.setModel(new javax.swing.DefaultComboBoxModel(RamProvisioner.getRamProvisionerNames()));
ramProvBox.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
ramProvBoxItemStateChanged(evt);
}
});
bwProvLabel.setText("Bandwidth Provisioner:");
bwProvBox.setModel(new javax.swing.DefaultComboBoxModel(BwProvisioner.getBwProvisionerNames()));
bwProvBox.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
bwProvBoxItemStateChanged(evt);
}
});
bwLabel.setText("Bandwidth:");
bwSpinner.setModel(new javax.swing.SpinnerNumberModel(Integer.valueOf(100), Integer.valueOf(10), null, Integer.valueOf(10)));
bwSpinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
bwSpinnerStateChanged(evt);
}
});
storageLabel.setText("Storage:");
storageSpinner.setModel(new javax.swing.SpinnerNumberModel(Long.valueOf(0L), Long.valueOf(0L), null, Long.valueOf(1L)));
storageSpinner.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
storageSpinnerStateChanged(evt);
}
});
peProvisionerLabel.setText("PE Provisioner:");
peProvisionerBox.setModel(new javax.swing.DefaultComboBoxModel(PeProvisioner.getPeProvisionerNames()));
peProvisionerBox.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
peProvisionerBoxItemStateChanged(evt);
}
});
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(bwLabel)
.addComponent(amountLabel)
.addComponent(ramLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(ramSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(bwSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(amountSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, 86, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(storageSpinner)))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(storageLabel)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
.addComponent(maxPowerLabel)
.addGap(39, 39, 39)
.addComponent(maxPowerSpinner))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
.addComponent(sppLabel)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(sppSinner, javax.swing.GroupLayout.PREFERRED_SIZE, 76, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
.addComponent(pesLabel)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(pesSpinner))))
.addGap(3, 3, 3)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(ramProvLabel)
.addComponent(bwProvLabel)
.addComponent(schedulingLabel)
.addComponent(pmLabel)
.addComponent(mipsLabel)
.addComponent(peProvisionerLabel))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(peProvisionerBox, 0, 149, Short.MAX_VALUE)
.addComponent(schedulingBox, 0, 149, Short.MAX_VALUE)
.addComponent(pmBox, 0, 149, Short.MAX_VALUE)
.addComponent(ramProvBox, 0, 149, Short.MAX_VALUE)
.addComponent(bwProvBox, 0, 149, Short.MAX_VALUE)
.addComponent(mipsSpinner, javax.swing.GroupLayout.DEFAULT_SIZE, 149, Short.MAX_VALUE))
.addContainerGap())
);
jPanel1Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {amountSpinner, bwSpinner, ramSpinner, storageSpinner});
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(amountLabel)
.addComponent(amountSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(mipsLabel)
.addComponent(mipsSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(ramLabel)
.addComponent(ramSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(schedulingLabel)
.addComponent(schedulingBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(bwLabel)
.addComponent(bwSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(pmLabel)
.addComponent(pmBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(storageLabel)
.addComponent(storageSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(ramProvLabel)
.addComponent(ramProvBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(maxPowerLabel)
.addComponent(maxPowerSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(bwProvLabel)
.addComponent(bwProvBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(sppLabel)
.addComponent(sppSinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(peProvisionerLabel)
.addComponent(peProvisionerBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(pesLabel)
.addComponent(pesSpinner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jPanel1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(okButton, javax.swing.GroupLayout.PREFERRED_SIZE, 82, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(okButton)
.addContainerGap())
);
pack();
}// </editor-fold>//GEN-END:initComponents
/**
* Changes the amount of hosts whenever the state of the Amount
* spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void amountSpinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_amountSpinnerStateChanged
String n = String.valueOf(amountSpinner.getValue());
hr.setAmount(Integer.valueOf(n));
}//GEN-LAST:event_amountSpinnerStateChanged
/**
* Changes the amount of RAM of this host registry whenever the state
* of the RAM spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void ramSpinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_ramSpinnerStateChanged
String n = String.valueOf(ramSpinner.getValue());
hr.setRam(Integer.valueOf(n));
}//GEN-LAST:event_ramSpinnerStateChanged
/**
* Changes the amount of bandwidth of this host
* registry whenever the state of the bandwidth spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void bwSpinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_bwSpinnerStateChanged
String n = String.valueOf(bwSpinner.getValue());
hr.setBw(Integer.valueOf(n));
}//GEN-LAST:event_bwSpinnerStateChanged
/**
* Changes the maximum power consumption value of this host
* registry whenever the state of the maximum power spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void maxPowerSpinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_maxPowerSpinnerStateChanged
String n = String.valueOf(maxPowerSpinner.getValue());
hr.setMaxPower(Double.valueOf(n));
}//GEN-LAST:event_maxPowerSpinnerStateChanged
/**
* Changes the static power consumption percent value of this host
* registry whenever the state of the static power spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void sppSinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_sppSinnerStateChanged
String n = String.valueOf(sppSinner.getValue());
hr.setStaticPowerPercent(Double.valueOf(n));
}//GEN-LAST:event_sppSinnerStateChanged
/**
* Changes the number of processing elements of this host
* registry whenever the state of the PE number spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void pesSpinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_pesSpinnerStateChanged
String n = String.valueOf(pesSpinner.getValue());
hr.setNumOfPes(Integer.valueOf(n));
}//GEN-LAST:event_pesSpinnerStateChanged
/**
* Changes the number of mips per processing element of this host
* registry whenever the state of the mips spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void mipsSpinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_mipsSpinnerStateChanged
String n = String.valueOf(mipsSpinner.getValue());
hr.setMipsPerPe(Double.valueOf(n));
}//GEN-LAST:event_mipsSpinnerStateChanged
/**
* Changes the scheduling policy of this host registry whenever the
* item of the scheduling policy combo box changes.
*
* @param evt an item event.
* @since 1.0
*/
private void schedulingBoxItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_schedulingBoxItemStateChanged
hr.setSchedulingPolicyAlias(schedulingBox.getSelectedItem().toString());
}//GEN-LAST:event_schedulingBoxItemStateChanged
/**
* Changes the power model of this host registry whenever the
* item of the power model combo box changes.
*
* @param evt an item event.
* @since 1.0
*/
private void pmBoxItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_pmBoxItemStateChanged
hr.setPowerModelAlias(pmBox.getSelectedItem().toString());
}//GEN-LAST:event_pmBoxItemStateChanged
/**
* Changes the RAM provisioner of this host registry whenever the
* item of the RAM provisioner combo box changes.
*
* @param evt an item event.
* @since 1.0
*/
private void ramProvBoxItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_ramProvBoxItemStateChanged
hr.setRamProvisionerAlias(ramProvBox.getSelectedItem().toString());
}//GEN-LAST:event_ramProvBoxItemStateChanged
/**
* Changes the bandwidth provisioner of this host registry whenever the
* item of the bandwidth provisioner combo box changes.
*
* @param evt an item event.
* @since 1.0
*/
private void bwProvBoxItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_bwProvBoxItemStateChanged
hr.setBwProvisionerAlias(bwProvBox.getSelectedItem().toString());
}//GEN-LAST:event_bwProvBoxItemStateChanged
/**
* Updates the host registry and the specific datacenter view when
* the OK button is clicked.
*
* @param evt an action event.
* @since 1.0
*/
private void okButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_okButtonActionPerformed
hrDAO.updateHostRegistry(hr);
//Get updated version of the datacenter registry
DatacenterRegistryDAO drDAO = new DatacenterRegistryDAO();
DatacenterRegistry dcr = drDAO.getDatacenterRegistry(sdcv.getDatacenterRegistry().getId());
//Updates the View reference
sdcv.setDcr(dcr);
sdcv.updateHostsTable();
sdcv.updateInformationPanel();
double dcTotalMips = drDAO.getMips(dcr.getId());
sdcv.getMipsCostLabel().setText("(Cost per MIPS: "+(dcr.getCostPerSec()/dcTotalMips)+")");
MainView.setDatacenterModified(true);
dispose();
}//GEN-LAST:event_okButtonActionPerformed
/**
* Changes the storage value of this host registry whenever the state
* of the storage spinner changes.
*
* @param evt a change event.
* @since 1.0
*/
private void storageSpinnerStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_storageSpinnerStateChanged
String n = String.valueOf(storageSpinner.getValue());
hr.setStorage(Long.valueOf(n));
}//GEN-LAST:event_storageSpinnerStateChanged
/**
* Changes the processing elements provisioner of this host registry
* whenever the item of the processing elements provisioner combo box
* changes.
*
* @param evt an item event.
* @since 1.0
*/
private void peProvisionerBoxItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_peProvisionerBoxItemStateChanged
hr.setPeProvisionerAlias(peProvisionerBox.getSelectedItem().toString());
hrDAO.updateHostRegistry(hr);
}//GEN-LAST:event_peProvisionerBoxItemStateChanged
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JLabel amountLabel;
private javax.swing.JSpinner amountSpinner;
private javax.swing.JLabel bwLabel;
private javax.swing.JComboBox bwProvBox;
private javax.swing.JLabel bwProvLabel;
private javax.swing.JSpinner bwSpinner;
private javax.swing.JPanel jPanel1;
private javax.swing.JLabel maxPowerLabel;
private javax.swing.JSpinner maxPowerSpinner;
private javax.swing.JLabel mipsLabel;
private javax.swing.JSpinner mipsSpinner;
private javax.swing.JButton okButton;
private javax.swing.JComboBox peProvisionerBox;
private javax.swing.JLabel peProvisionerLabel;
private javax.swing.JLabel pesLabel;
private javax.swing.JSpinner pesSpinner;
private javax.swing.JComboBox pmBox;
private javax.swing.JLabel pmLabel;
private javax.swing.JLabel ramLabel;
private javax.swing.JComboBox ramProvBox;
private javax.swing.JLabel ramProvLabel;
private javax.swing.JSpinner ramSpinner;
private javax.swing.JComboBox schedulingBox;
private javax.swing.JLabel schedulingLabel;
private javax.swing.JLabel sppLabel;
private javax.swing.JSpinner sppSinner;
private javax.swing.JLabel storageLabel;
private javax.swing.JSpinner storageSpinner;
// End of variables declaration//GEN-END:variables
}