/* * 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 }