Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.github.sdnwiselab.sdnwise.controller.ControllerGui Maven / Gradle / Ivy
/*
* Copyright (C) 2015 SDN-WISE
*
* This program 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.
*
* This program 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.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
package com.github.sdnwiselab.sdnwise.controller;
import com.github.sdnwiselab.sdnwise.flowtable.FlowTableEntry;
import com.github.sdnwiselab.sdnwise.flowtable.FlowTableWindow;
import com.github.sdnwiselab.sdnwise.packet.DataPacket;
import com.github.sdnwiselab.sdnwise.util.NodeAddress;
import java.awt.HeadlessException;
import java.text.ParseException;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.DefaultCellEditor;
import javax.swing.JComboBox;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import org.bouncycastle.util.Strings;
/**
*
* @author Sebastiano Milardo
*/
public final class ControllerGui extends javax.swing.JFrame {
private static final long serialVersionUID = 1L;
private final transient Controller controller;
private final JComboBox comboLoc;
private final JComboBox comboOp;
private final JComboBox comboSize;
private final JComboBox comboOff;
private final JComboBox comboActType;
/**
* Creates new form ControllerGui
*
* @param controller
*/
public ControllerGui(Controller controller) {
this.controller = controller;
initComponents();
comboLoc = new JComboBox<>();
comboLoc.addItem("");
comboLoc.addItem("PACKET");
comboLoc.addItem("STATE_ARR");
comboOp = new JComboBox<>();
comboOp.addItem("");
comboOp.addItem("==");
comboOp.addItem("!=");
comboOp.addItem(">");
comboOp.addItem("<");
comboOp.addItem(">=");
comboOp.addItem("<=");
comboSize = new JComboBox<>();
comboSize.addItem(0);
comboSize.addItem(1);
comboSize.addItem(2);
comboOff = new JComboBox<>();
comboOff.addItem("");
comboOff.addItem("0 - LEN");
comboOff.addItem("1 - NET_ID");
comboOff.addItem("2 - SRC_H");
comboOff.addItem("3 - SRC_L");
comboOff.addItem("4 - DST_H");
comboOff.addItem("5 - DST_L");
comboOff.addItem("6 - TYPE");
comboOff.addItem("7 - TTL");
comboOff.addItem("8 - NXHOP_H");
comboOff.addItem("9 - NXHOP_L");
comboOff.addItem("10 - DIST");
comboOff.addItem("11 - BATT");
comboOff.addItem("12 - NEIGH");
comboActType = new JComboBox<>();
comboActType.addItem("");
comboActType.addItem("FORWARD UNICAST");
comboActType.addItem("FORWARD_BROADCAST");
comboActType.addItem("DROP");
comboActType.addItem("MODIFY");
comboActType.addItem("AGGREGATE");
comboActType.addItem("FORWARD_UP");
for (int i = 0; i < 4; i++) {
this.jTableFlow.getColumnModel()
.getColumn((i * 4) + 2)
.setCellEditor(new DefaultCellEditor(comboLoc));
this.jTableFlow.getColumnModel()
.getColumn((i * 4) + 0)
.setCellEditor(new DefaultCellEditor(comboOp));
this.jTableFlow.getColumnModel()
.getColumn((i * 4) + 1)
.setCellEditor(new DefaultCellEditor(comboSize));
this.jTableFlow.getColumnModel()
.getColumn((i * 4) + 3)
.setCellEditor(new DefaultCellEditor(comboOff));
}
this.jTableFlow.getColumnModel()
.getColumn(18)
.setCellEditor(new DefaultCellEditor(comboActType));
this.jTableFlow.getColumnModel()
.getColumn(20)
.setCellEditor(new DefaultCellEditor(comboLoc));
this.jTableFlow.getColumnModel()
.getColumn(21)
.setCellEditor(new DefaultCellEditor(comboOff));
setIconImage(getToolkit().getImage(
getClass().getResource("/sdn-wise_icon.png")));
}
/**
* 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")
// //GEN-BEGIN:initComponents
private void initComponents() {
jFrameAdd = new javax.swing.JFrame();
jPanel5 = new javax.swing.JPanel();
jSpinnerValueH1 = new javax.swing.JSpinner();
jComboBoxS1 = new javax.swing.JComboBox();
jComboBoxSize1 = new javax.swing.JComboBox();
jComboBoxOp1 = new javax.swing.JComboBox();
jLabel7 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
jLabel9 = new javax.swing.JLabel();
jLabel10 = new javax.swing.JLabel();
jLabel11 = new javax.swing.JLabel();
jSpinnerValueL1 = new javax.swing.JSpinner();
jComboBoxOff1 = new javax.swing.JComboBox();
jPanel6 = new javax.swing.JPanel();
jSpinnerValueHA = new javax.swing.JSpinner();
jComboBoxSA = new javax.swing.JComboBox();
jLabel22 = new javax.swing.JLabel();
jLabel23 = new javax.swing.JLabel();
jComboBoxMA = new javax.swing.JComboBox();
jLabel26 = new javax.swing.JLabel();
jLabel27 = new javax.swing.JLabel();
jLabel28 = new javax.swing.JLabel();
jComboBoxOpA = new javax.swing.JComboBox();
jSpinnerValueLA = new javax.swing.JSpinner();
jComboBoxA = new javax.swing.JComboBox();
jPanel7 = new javax.swing.JPanel();
jSpinnerValueH2 = new javax.swing.JSpinner();
jComboBoxS2 = new javax.swing.JComboBox();
jComboBoxSize2 = new javax.swing.JComboBox();
jComboBoxOp2 = new javax.swing.JComboBox();
jLabel12 = new javax.swing.JLabel();
jLabel13 = new javax.swing.JLabel();
jLabel14 = new javax.swing.JLabel();
jLabel15 = new javax.swing.JLabel();
jLabel16 = new javax.swing.JLabel();
jSpinnerValueL2 = new javax.swing.JSpinner();
jComboBoxOff2 = new javax.swing.JComboBox();
jPanel8 = new javax.swing.JPanel();
jSpinnerValueH3 = new javax.swing.JSpinner();
jComboBoxS3 = new javax.swing.JComboBox();
jComboBoxSize3 = new javax.swing.JComboBox();
jComboBoxOp3 = new javax.swing.JComboBox();
jLabel29 = new javax.swing.JLabel();
jLabel30 = new javax.swing.JLabel();
jLabel31 = new javax.swing.JLabel();
jLabel32 = new javax.swing.JLabel();
jLabel33 = new javax.swing.JLabel();
jSpinnerValueL3 = new javax.swing.JSpinner();
jComboBoxOff3 = new javax.swing.JComboBox();
jButtonConvert = new javax.swing.JButton();
jSpinnerNetID = new javax.swing.JSpinner();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jSpinnerAddrL = new javax.swing.JSpinner();
jSpinnerAddrH = new javax.swing.JSpinner();
jTabbedPane1 = new javax.swing.JTabbedPane();
jPanel1 = new javax.swing.JPanel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jSpinnerBeacon = new javax.swing.JSpinner();
jSpinnerRSSI = new javax.swing.JSpinner();
jSpinnerReport = new javax.swing.JSpinner();
jSpinnerTTL = new javax.swing.JSpinner();
jButtonReadParams = new javax.swing.JButton();
jButtonWriteParams = new javax.swing.JButton();
jPanel2 = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
jTableFlow = new javax.swing.JTable();
jButtonReadFlows = new javax.swing.JButton();
jButtonRemoveFlow = new javax.swing.JButton();
jButtonAddFlow = new javax.swing.JButton();
jPanel3 = new javax.swing.JPanel();
jScrollPane2 = new javax.swing.JScrollPane();
jTableAccepted = new javax.swing.JTable();
jButtonAddAccepted = new javax.swing.JButton();
jButtonRemoveAccepted = new javax.swing.JButton();
jButtonReadAccepted = new javax.swing.JButton();
jPanel4 = new javax.swing.JPanel();
jPanel9 = new javax.swing.JPanel();
jSpinnerNetID2 = new javax.swing.JSpinner();
jSpinnerNetID3 = new javax.swing.JSpinner();
jTextField1 = new javax.swing.JTextField();
jLabel18 = new javax.swing.JLabel();
jButtonAddAccepted1 = new javax.swing.JButton();
jFrameAdd.setTitle("SDN-WISE Rule Converter");
jFrameAdd.setResizable(false);
jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder("Window 1"));
jSpinnerValueH1.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxS1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "State", "Packet" }));
jComboBoxSize1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "0", "1", "2" }));
jComboBoxOp1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "==", "!=", ">", "<", ">=", "<=" }));
jLabel7.setText("Operation");
jLabel8.setText("Size");
jLabel9.setText("Packet/State");
jLabel10.setText("Offset");
jLabel11.setText("Value");
jSpinnerValueL1.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxOff1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "LEN ", "NET_ID ", "SRC_H ", "SRC_L ", "DST_H ", "DST_L ", "TYPE ", "TTL ", "NXHOP_H ", "NXHOP_L ", "DIST - 10 ", "BATT - 11 ", "NEIGH - 12", "13", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", "131", "132", "133", "134", "135", "136", "137", "138", "139", "140", "141", "142", "143", "144", "145", "146", "147", "148", "149", "150", "151", "152", "153", "154", "155", "156", "157", "158", "159", "160", "161", "162", "163", "164", "165", "166", "167", "168", "169", "170", "171", "172", "173", "174", "175", "176", "177", "178", "179", "180", "181", "182", "183", "184", "185", "186", "187", "188", "189", "190", "191", "192", "193", "194", "195", "196", "197", "198", "199", "200", "201", "202", "203", "204", "205", "206", "207", "208", "209", "210", "211", "212", "213", "214", "215", "216", "217", "218", "219", "220", "221", "222", "223", "224", "225", "226", "227", "228", "229", "230", "231", "232", "233", "234", "235", "236", "237", "238", "239", "240", "241", "242", "243", "244", "245", "246", "247", "248", "249", "250", "251", "252", "253", "254", "255", " " }));
javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
jPanel5.setLayout(jPanel5Layout);
jPanel5Layout.setHorizontalGroup(
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel10)
.addComponent(jLabel11))
.addGap(35, 35, 35)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jComboBoxOff1, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel5Layout.createSequentialGroup()
.addComponent(jSpinnerValueH1, javax.swing.GroupLayout.PREFERRED_SIZE, 72, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jSpinnerValueL1, javax.swing.GroupLayout.PREFERRED_SIZE, 75, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGroup(jPanel5Layout.createSequentialGroup()
.addComponent(jLabel9)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jComboBoxS1, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel5Layout.createSequentialGroup()
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel7)
.addComponent(jLabel8))
.addGap(18, 18, 18)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jComboBoxSize1, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jComboBoxOp1, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
.addContainerGap())
);
jPanel5Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jSpinnerValueH1, jSpinnerValueL1});
jPanel5Layout.setVerticalGroup(
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxOp1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel7))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxSize1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel8))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxS1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel9))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel10)
.addComponent(jComboBoxOff1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jSpinnerValueH1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel11)
.addComponent(jSpinnerValueL1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder("Action"));
jSpinnerValueHA.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxSA.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Packet", "State" }));
jLabel22.setText("Multimatch");
jLabel23.setText("Operation");
jComboBoxMA.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "0", "1" }));
jLabel26.setText("Value");
jLabel27.setText("Offset");
jLabel28.setText("Packet/State");
jComboBoxOpA.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Forward Unicast", "Forward Broadcast", "Drop", "Modify ", "Aggregate", "Forward Up" }));
jSpinnerValueLA.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxA.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "LEN ", "NET_ID ", "SRC_H ", "SRC_L ", "DST_H ", "DST_L ", "TYPE ", "TTL ", "NXHOP_H ", "NXHOP_L ", "DIST - 10 ", "BATT - 11 ", "NEIGH - 12", "13", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", "131", "132", "133", "134", "135", "136", "137", "138", "139", "140", "141", "142", "143", "144", "145", "146", "147", "148", "149", "150", "151", "152", "153", "154", "155", "156", "157", "158", "159", "160", "161", "162", "163", "164", "165", "166", "167", "168", "169", "170", "171", "172", "173", "174", "175", "176", "177", "178", "179", "180", "181", "182", "183", "184", "185", "186", "187", "188", "189", "190", "191", "192", "193", "194", "195", "196", "197", "198", "199", "200", "201", "202", "203", "204", "205", "206", "207", "208", "209", "210", "211", "212", "213", "214", "215", "216", "217", "218", "219", "220", "221", "222", "223", "224", "225", "226", "227", "228", "229", "230", "231", "232", "233", "234", "235", "236", "237", "238", "239", "240", "241", "242", "243", "244", "245", "246", "247", "248", "249", "250", "251", "252", "253", "254", "255", " " }));
javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
jPanel6.setLayout(jPanel6Layout);
jPanel6Layout.setHorizontalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel6Layout.createSequentialGroup()
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel23)
.addComponent(jLabel22)
.addComponent(jLabel28)
.addComponent(jLabel27))
.addGap(18, 18, 18))
.addGroup(jPanel6Layout.createSequentialGroup()
.addComponent(jLabel26)
.addGap(54, 54, 54)))
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jComboBoxMA, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jComboBoxOpA, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel6Layout.createSequentialGroup()
.addComponent(jSpinnerValueHA, javax.swing.GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jSpinnerValueLA, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jComboBoxSA, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addComponent(jComboBoxA, 0, 166, Short.MAX_VALUE))
.addContainerGap())
);
jPanel6Layout.setVerticalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addGap(26, 26, 26)
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxMA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel22)))
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel23)
.addComponent(jComboBoxOpA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxSA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel28))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel27)
.addComponent(jComboBoxA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jSpinnerValueHA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel26)
.addComponent(jSpinnerValueLA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(61, Short.MAX_VALUE))
);
jPanel7.setBorder(javax.swing.BorderFactory.createTitledBorder("Window 2"));
jSpinnerValueH2.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxS2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "State", "Packet" }));
jComboBoxSize2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "0", "1", "2" }));
jComboBoxOp2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "==", "!=", ">", "<", ">=", "<=" }));
jLabel12.setText("Operation");
jLabel13.setText("Size");
jLabel14.setText("Packet/State");
jLabel15.setText("Offset");
jLabel16.setText("Value");
jSpinnerValueL2.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxOff2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "LEN ", "NET_ID ", "SRC_H ", "SRC_L ", "DST_H ", "DST_L ", "TYPE ", "TTL ", "NXHOP_H ", "NXHOP_L ", "DIST - 10 ", "BATT - 11 ", "NEIGH - 12", "13", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", "131", "132", "133", "134", "135", "136", "137", "138", "139", "140", "141", "142", "143", "144", "145", "146", "147", "148", "149", "150", "151", "152", "153", "154", "155", "156", "157", "158", "159", "160", "161", "162", "163", "164", "165", "166", "167", "168", "169", "170", "171", "172", "173", "174", "175", "176", "177", "178", "179", "180", "181", "182", "183", "184", "185", "186", "187", "188", "189", "190", "191", "192", "193", "194", "195", "196", "197", "198", "199", "200", "201", "202", "203", "204", "205", "206", "207", "208", "209", "210", "211", "212", "213", "214", "215", "216", "217", "218", "219", "220", "221", "222", "223", "224", "225", "226", "227", "228", "229", "230", "231", "232", "233", "234", "235", "236", "237", "238", "239", "240", "241", "242", "243", "244", "245", "246", "247", "248", "249", "250", "251", "252", "253", "254", "255", " " }));
javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7);
jPanel7.setLayout(jPanel7Layout);
jPanel7Layout.setHorizontalGroup(
jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel7Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel7Layout.createSequentialGroup()
.addComponent(jLabel14)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jComboBoxS2, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel7Layout.createSequentialGroup()
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel12)
.addComponent(jLabel13))
.addGap(18, 18, 18)
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jComboBoxSize2, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jComboBoxOp2, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addGroup(jPanel7Layout.createSequentialGroup()
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel15)
.addComponent(jLabel16))
.addGap(35, 35, 35)
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jComboBoxOff2, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel7Layout.createSequentialGroup()
.addComponent(jSpinnerValueH2, javax.swing.GroupLayout.PREFERRED_SIZE, 76, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jSpinnerValueL2)))))
.addContainerGap())
);
jPanel7Layout.setVerticalGroup(
jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel7Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxOp2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel12))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxSize2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel13))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxS2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel14))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel15)
.addComponent(jComboBoxOff2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jSpinnerValueH2)
.addComponent(jLabel16)
.addComponent(jSpinnerValueL2))
.addGap(61, 61, 61))
);
jPanel8.setBorder(javax.swing.BorderFactory.createTitledBorder("Window 3"));
jSpinnerValueH3.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxS3.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "State", "Packet" }));
jComboBoxSize3.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "0", "1", "2" }));
jComboBoxOp3.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "==", "!=", ">", "<", ">=", "<=" }));
jLabel29.setText("Operation");
jLabel30.setText("Size");
jLabel31.setText("Packet/State");
jLabel32.setText("Offset");
jLabel33.setText("Value");
jSpinnerValueL3.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jComboBoxOff3.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "LEN ", "NET_ID ", "SRC_H ", "SRC_L ", "DST_H ", "DST_L ", "TYPE ", "TTL ", "NXHOP_H ", "NXHOP_L ", "DIST - 10 ", "BATT - 11 ", "NEIGH - 12", "13", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", "131", "132", "133", "134", "135", "136", "137", "138", "139", "140", "141", "142", "143", "144", "145", "146", "147", "148", "149", "150", "151", "152", "153", "154", "155", "156", "157", "158", "159", "160", "161", "162", "163", "164", "165", "166", "167", "168", "169", "170", "171", "172", "173", "174", "175", "176", "177", "178", "179", "180", "181", "182", "183", "184", "185", "186", "187", "188", "189", "190", "191", "192", "193", "194", "195", "196", "197", "198", "199", "200", "201", "202", "203", "204", "205", "206", "207", "208", "209", "210", "211", "212", "213", "214", "215", "216", "217", "218", "219", "220", "221", "222", "223", "224", "225", "226", "227", "228", "229", "230", "231", "232", "233", "234", "235", "236", "237", "238", "239", "240", "241", "242", "243", "244", "245", "246", "247", "248", "249", "250", "251", "252", "253", "254", "255", " " }));
javax.swing.GroupLayout jPanel8Layout = new javax.swing.GroupLayout(jPanel8);
jPanel8.setLayout(jPanel8Layout);
jPanel8Layout.setHorizontalGroup(
jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel8Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel8Layout.createSequentialGroup()
.addComponent(jLabel31)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jComboBoxS3, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel8Layout.createSequentialGroup()
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel29)
.addComponent(jLabel30))
.addGap(18, 18, 18)
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jComboBoxSize3, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jComboBoxOp3, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addGroup(jPanel8Layout.createSequentialGroup()
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel32)
.addComponent(jLabel33))
.addGap(35, 35, 35)
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jComboBoxOff3, 0, 157, Short.MAX_VALUE)
.addGroup(jPanel8Layout.createSequentialGroup()
.addComponent(jSpinnerValueH3, javax.swing.GroupLayout.PREFERRED_SIZE, 66, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jSpinnerValueL3, javax.swing.GroupLayout.PREFERRED_SIZE, 69, javax.swing.GroupLayout.PREFERRED_SIZE)))))
.addContainerGap())
);
jPanel8Layout.setVerticalGroup(
jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel8Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxOp3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel29))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxSize3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel30))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jComboBoxS3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel31))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel32)
.addComponent(jComboBoxOff3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jSpinnerValueH3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel33)
.addComponent(jSpinnerValueL3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(61, Short.MAX_VALUE))
);
jButtonConvert.setText("Send");
jButtonConvert.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonConvertActionPerformed(evt);
}
});
javax.swing.GroupLayout jFrameAddLayout = new javax.swing.GroupLayout(jFrameAdd.getContentPane());
jFrameAdd.getContentPane().setLayout(jFrameAddLayout);
jFrameAddLayout.setHorizontalGroup(
jFrameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jFrameAddLayout.createSequentialGroup()
.addContainerGap()
.addGroup(jFrameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jFrameAddLayout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jButtonConvert)
.addContainerGap())
.addGroup(jFrameAddLayout.createSequentialGroup()
.addGroup(jFrameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jFrameAddLayout.createSequentialGroup()
.addComponent(jPanel8, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jFrameAddLayout.createSequentialGroup()
.addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jPanel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addGap(10, 10, 10))))
);
jFrameAddLayout.setVerticalGroup(
jFrameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jFrameAddLayout.createSequentialGroup()
.addContainerGap()
.addGroup(jFrameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(jPanel7, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel5, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jFrameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel8, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jPanel6, 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(jButtonConvert)
.addContainerGap())
);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("SDN-WISE");
jSpinnerNetID.setModel(new javax.swing.SpinnerNumberModel(Byte.valueOf((byte)0), null, null, Byte.valueOf((byte)1)));
jLabel1.setText("Node Address");
jLabel2.setText("Network ID");
jSpinnerAddrL.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jSpinnerAddrH.setModel(new javax.swing.SpinnerNumberModel(0, 0, 255, 1));
jLabel3.setText("Beacon Period");
jLabel4.setText("Report Period");
jLabel5.setText("TTL Max");
jLabel6.setText("RSSI Min");
jSpinnerBeacon.setModel(new javax.swing.SpinnerNumberModel(0, 0, 65535, 1));
jSpinnerRSSI.setModel(new javax.swing.SpinnerNumberModel(Short.valueOf((short)0), Short.valueOf((short)0), Short.valueOf((short)255), Short.valueOf((short)1)));
jSpinnerReport.setModel(new javax.swing.SpinnerNumberModel(0, 0, 65535, 1));
jSpinnerTTL.setModel(new javax.swing.SpinnerNumberModel(Short.valueOf((short)0), Short.valueOf((short)0), Short.valueOf((short)255), Short.valueOf((short)1)));
jButtonReadParams.setLabel("Refresh");
jButtonReadParams.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonReadParamsActionPerformed(evt);
}
});
jButtonWriteParams.setText("Write Values");
jButtonWriteParams.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonWriteParamsActionPerformed(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()
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jSpinnerBeacon, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel4)
.addComponent(jLabel5)
.addComponent(jLabel6))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jSpinnerRSSI)
.addComponent(jSpinnerTTL)
.addComponent(jSpinnerReport)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addGap(0, 196, Short.MAX_VALUE)
.addComponent(jButtonReadParams)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButtonWriteParams)))
.addContainerGap())
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(jSpinnerBeacon, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(jSpinnerReport, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(jSpinnerTTL, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel6)
.addComponent(jSpinnerRSSI, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 88, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButtonReadParams)
.addComponent(jButtonWriteParams))
.addContainerGap())
);
jTabbedPane1.addTab("Parameters Configuration", jPanel1);
jTableFlow.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null}
},
new String [] {
"Operator", "Size", "Location", "Offset", "Value", "Value", "Operator", "Size", "Location", "Offset", "Value", "Value", "Operator", "Size", "Location", "Offset", "Value", "Value", "Type", "Multimatch", "Location", "Offset", "Value", "Value", "TTL", "Count"
}
) {
Class[] types = new Class [] {
java.lang.String.class, java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.String.class, java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.String.class, java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.String.class, java.lang.Boolean.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class
};
boolean[] canEdit = new boolean [] {
false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false
};
public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
jTableFlow.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);
jScrollPane1.setViewportView(jTableFlow);
jButtonReadFlows.setLabel("Refresh");
jButtonReadFlows.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonReadFlowsActionPerformed(evt);
}
});
jButtonRemoveFlow.setText("Remove");
jButtonRemoveFlow.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonRemoveFlowActionPerformed(evt);
}
});
jButtonAddFlow.setText("Add");
jButtonAddFlow.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonAddFlowActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
.addGap(0, 161, Short.MAX_VALUE)
.addComponent(jButtonReadFlows)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButtonRemoveFlow)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButtonAddFlow))
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButtonAddFlow)
.addComponent(jButtonRemoveFlow)
.addComponent(jButtonReadFlows))
.addContainerGap())
);
jTabbedPane1.addTab("WISE Flow Table", jPanel2);
jTableAccepted.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"", ""
}
));
jTableAccepted.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
jTableAccepted.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
jScrollPane2.setViewportView(jTableAccepted);
jButtonAddAccepted.setText("Add");
jButtonAddAccepted.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonAddAcceptedActionPerformed(evt);
}
});
jButtonRemoveAccepted.setText("Remove");
jButtonRemoveAccepted.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonRemoveAcceptedActionPerformed(evt);
}
});
jButtonReadAccepted.setLabel("Refresh");
jButtonReadAccepted.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonReadAcceptedActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jButtonReadAccepted)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButtonRemoveAccepted)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButtonAddAccepted))
.addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 366, Short.MAX_VALUE))
.addContainerGap())
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButtonAddAccepted)
.addComponent(jButtonRemoveAccepted)
.addComponent(jButtonReadAccepted))
.addContainerGap())
);
jTabbedPane1.addTab("Accepted ID", jPanel3);
javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
jPanel4.setLayout(jPanel4Layout);
jPanel4Layout.setHorizontalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 386, Short.MAX_VALUE)
);
jPanel4Layout.setVerticalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 231, Short.MAX_VALUE)
);
jTabbedPane1.addTab("State Array", jPanel4);
jSpinnerNetID2.setModel(new javax.swing.SpinnerNumberModel(Byte.valueOf((byte)0), null, null, Byte.valueOf((byte)1)));
jSpinnerNetID3.setModel(new javax.swing.SpinnerNumberModel(Byte.valueOf((byte)0), null, null, Byte.valueOf((byte)1)));
jLabel18.setText("Source Address");
jButtonAddAccepted1.setText("Add");
jButtonAddAccepted1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonAddAccepted1ActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel9Layout = new javax.swing.GroupLayout(jPanel9);
jPanel9.setLayout(jPanel9Layout);
jPanel9Layout.setHorizontalGroup(
jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel9Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTextField1, javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel9Layout.createSequentialGroup()
.addComponent(jLabel18)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 227, Short.MAX_VALUE)
.addComponent(jSpinnerNetID3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jSpinnerNetID2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel9Layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jButtonAddAccepted1)))
.addContainerGap())
);
jPanel9Layout.setVerticalGroup(
jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel9Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel18)
.addGroup(jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jSpinnerNetID3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jSpinnerNetID2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 135, Short.MAX_VALUE)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButtonAddAccepted1)
.addContainerGap())
);
jTabbedPane1.addTab("Packet Sender", jPanel9);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTabbedPane1)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jSpinnerNetID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jSpinnerAddrH, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jSpinnerAddrL, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jSpinnerNetID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(jSpinnerAddrL, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jSpinnerAddrH, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jTabbedPane1)
.addContainerGap())
);
pack();
}// //GEN-END:initComponents
private void jButtonReadParamsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonReadParamsActionPerformed
try {
// TODO add your handling code here:
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
this.jSpinnerBeacon.setValue(
controller.getNodeBeaconPeriod(
(byte)this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue())));
this.jSpinnerReport.setValue(
controller.getNodeReportPeriod(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue())));
this.jSpinnerRSSI.setValue(
controller.getNodeRssiMin(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue())));
this.jSpinnerTTL.setValue(
controller.getNodeTtlMax(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue())));
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonReadParamsActionPerformed
private void jButtonWriteParamsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonWriteParamsActionPerformed
try {
// TODO add your handling code here:
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
jSpinnerRSSI.commitEdit();
jSpinnerTTL.commitEdit();
jSpinnerBeacon.commitEdit();
jSpinnerReport.commitEdit();
controller.setNodeBeaconPeriod(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()),
((Number) this.jSpinnerBeacon.getValue()).shortValue());
controller.setNodeReportPeriod(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()),
((Number) this.jSpinnerReport.getValue()).shortValue());
controller.setNodeRssiMin(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()),
((Number) this.jSpinnerRSSI.getValue()).byteValue());
controller.setNodeTtlMax(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()),
((Number) this.jSpinnerTTL.getValue()).byteValue());
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonWriteParamsActionPerformed
private void jButtonReadAcceptedActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonReadAcceptedActionPerformed
try {
// TODO add your handling code here:
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
List list = controller.getAcceptedAddressesList((byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()));
DefaultTableModel model = (DefaultTableModel) jTableAccepted.getModel();
model.setRowCount(0);
if (list != null) {
for (NodeAddress addr : list) {
model.addRow(addr.getArray());
}
}
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonReadAcceptedActionPerformed
private void jButtonRemoveAcceptedActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonRemoveAcceptedActionPerformed
// TODO add your handling code here:
int index = this.jTableAccepted.getSelectedRow();
if (index >= 0) {
try {
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
controller.removeAcceptedAddress(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()),
new NodeAddress(
((Number) jTableAccepted.getValueAt(index, 0)).byteValue(),
((Number) jTableAccepted.getValueAt(index, 1)).byteValue()));
((DefaultTableModel) this.jTableAccepted.getModel()).removeRow(index);
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
} else {
System.out.println("Please select a row");
}
}//GEN-LAST:event_jButtonRemoveAcceptedActionPerformed
private void jButtonAddAcceptedActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonAddAcceptedActionPerformed
// TODO add your handling code here:
DefaultTableModel model = (DefaultTableModel) jTableAccepted.getModel();
try {
NodeAddress addr;
String addrStr = JOptionPane.showInputDialog("Enter new address :");
if (addrStr.contains(".")) {
addr = new NodeAddress(addrStr);
model.addRow(new Integer[]{(int) addr.getHigh() & 0xFF, (int) addr.getLow() & 0xFF});
} else {
addr = new NodeAddress(Integer.parseInt(addrStr));
model.addRow(new Integer[]{(int) addr.getHigh() & 0xFF, (int) addr.getLow() & 0xFF});
}
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
controller.addAcceptedAddress(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()),
addr);
} catch (HeadlessException | NumberFormatException e) {
JOptionPane.showMessageDialog(this,
"Please insert a valid address."
+ "\nExample: 0.125",
"Address Error",
JOptionPane.ERROR_MESSAGE);
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonAddAcceptedActionPerformed
private void jButtonReadFlowsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonReadFlowsActionPerformed
try {
// TODO add your handling code here:
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
DefaultTableModel model = (DefaultTableModel) jTableFlow.getModel();
model.setRowCount(0);
List entryList = controller.getRules(
(byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()));
int j = 0;
for (FlowTableEntry entry : entryList) {
if (entry.getWindow()[0].getSize() != 0) {
model.setRowCount(model.getRowCount() + 1);
int i = 0;
for (FlowTableWindow fw : entry.getWindow()) {
if (fw.getSize() != 0) {
this.jTableFlow.setValueAt(comboOp.getItemAt((fw.getOperator() / 8)), j, i);
i++;
this.jTableFlow.setValueAt(comboSize.getItemAt(fw.getSize() / 2), j, i);
i++;
this.jTableFlow.setValueAt(comboLoc.getItemAt((fw.getLocation())), j, i);
i++;
this.jTableFlow.setValueAt(comboOff.getItemAt((fw.getPos()) + 1), j, i);
i++;
this.jTableFlow.setValueAt(fw.getValueHigh(), j, i);
i++;
this.jTableFlow.setValueAt(fw.getValueLow(), j, i);
i++;
} else {
i += 6;
}
}
this.jTableFlow.setValueAt(comboActType.getItemAt((entry.getAction().getType() / 4)), j, i);
i++;
this.jTableFlow.setValueAt(entry.getAction().getMultimatch(), j, i);
i++;
this.jTableFlow.setValueAt(comboLoc.getItemAt((entry.getAction().getLocation())), j, i);
i++;
this.jTableFlow.setValueAt(comboOff.getItemAt((entry.getAction().getPos()) + 1), j, i);
i++;
this.jTableFlow.setValueAt(entry.getAction().getValueHigh(), j, i);
i++;
this.jTableFlow.setValueAt(entry.getAction().getValueLow(), j, i);
i++;
this.jTableFlow.setValueAt(entry.getStats().getTtl(), j, i);
i++;
this.jTableFlow.setValueAt(entry.getStats().getCounter(), j, i);
i++;
}
j++;
}
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonReadFlowsActionPerformed
private void jButtonRemoveFlowActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonRemoveFlowActionPerformed
try {
if (this.jTableFlow.getSelectedRow() != -1) {
// TODO add your handling code here:
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
controller.removeRule((byte) this.jSpinnerNetID.getValue(),
new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue()),
this.jTableFlow.getSelectedRow());
DefaultTableModel model = (DefaultTableModel) jTableFlow.getModel();
model.removeRow(this.jTableFlow.getSelectedRow());
}
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonRemoveFlowActionPerformed
private void jButtonAddFlowActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonAddFlowActionPerformed
// TODO add your handling code here:
this.jFrameAdd.setSize(563, 520);
this.jFrameAdd.setVisible(true);
}//GEN-LAST:event_jButtonAddFlowActionPerformed
private void jButtonConvertActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonConvertActionPerformed
try {
byte[] rule = new byte[16];
if (jComboBoxSize1.getSelectedIndex() != 0) {
rule[0] = (byte) ((jComboBoxOp1.getSelectedIndex() + 1) * 8 + (jComboBoxSize1.getSelectedIndex()) * 2 + jComboBoxS1.getSelectedIndex());
rule[1] = ((Number) jComboBoxOff1.getSelectedIndex()).byteValue();
rule[2] = ((((Number) jSpinnerValueH1.getValue()).byteValue()));
rule[3] = ((((Number) jSpinnerValueL1.getValue()).byteValue()));
}
if (jComboBoxSize2.getSelectedIndex() != 0) {
rule[4] = (byte) ((jComboBoxOp2.getSelectedIndex() + 1) * 8 + (jComboBoxSize2.getSelectedIndex()) * 2 + jComboBoxS2.getSelectedIndex());
rule[5] = ((Number) jComboBoxOff2.getSelectedIndex()).byteValue();
rule[6] = ((((Number) jSpinnerValueH2.getValue()).byteValue()));
rule[7] = ((((Number) jSpinnerValueL2.getValue()).byteValue()));
}
if (jComboBoxSize3.getSelectedIndex() != 0) {
rule[8] = (byte) ((jComboBoxOp3.getSelectedIndex() + 1) * 8 + (jComboBoxSize3.getSelectedIndex()) * 2 + jComboBoxS3.getSelectedIndex());
rule[9] = ((Number) jComboBoxOff3.getSelectedIndex()).byteValue();
rule[10] = ((((Number) jSpinnerValueH3.getValue()).byteValue()));
rule[11] = ((((Number) jSpinnerValueL3.getValue()).byteValue()));
}
rule[12] = (byte) (((jComboBoxOpA.getSelectedIndex() + 1) << 2) + (jComboBoxMA.getSelectedIndex() * 2) + (jComboBoxSA.getSelectedIndex()));
rule[13] = ((Number) jComboBoxA.getSelectedIndex()).byteValue();
rule[14] = ((((Number) jSpinnerValueHA.getValue()).byteValue()));
rule[15] = ((((Number) jSpinnerValueLA.getValue()).byteValue()));
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
NodeAddress dest = new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue());
byte id = (byte) this.jSpinnerNetID.getValue();
controller.addRule(id, dest, new FlowTableEntry(rule));
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonConvertActionPerformed
private void jButtonAddAccepted1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonAddAccepted1ActionPerformed
try {
jSpinnerNetID.commitEdit();
jSpinnerAddrH.commitEdit();
jSpinnerAddrL.commitEdit();
NodeAddress dest = new NodeAddress(
(Integer) this.jSpinnerAddrH.getValue(),
(Integer) this.jSpinnerAddrL.getValue());
byte id = (byte) this.jSpinnerNetID.getValue();
DataPacket dp = new DataPacket();
dp.setPayload(Strings.toByteArray(jTextField1.getText()))
.setNetId(id)
.setDst(dest)
.setSrc("0.0")
.setNxhop("0.0");
controller.sendNetworkPacket(dp);
} catch (ParseException ex) {
Logger.getLogger(ControllerGui.class.getName()).log(Level.SEVERE, null, ex);
}
}//GEN-LAST:event_jButtonAddAccepted1ActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton jButtonAddAccepted;
private javax.swing.JButton jButtonAddAccepted1;
private javax.swing.JButton jButtonAddFlow;
private javax.swing.JButton jButtonConvert;
private javax.swing.JButton jButtonReadAccepted;
private javax.swing.JButton jButtonReadFlows;
private javax.swing.JButton jButtonReadParams;
private javax.swing.JButton jButtonRemoveAccepted;
private javax.swing.JButton jButtonRemoveFlow;
private javax.swing.JButton jButtonWriteParams;
private javax.swing.JComboBox jComboBoxA;
private javax.swing.JComboBox jComboBoxMA;
private javax.swing.JComboBox jComboBoxOff1;
private javax.swing.JComboBox jComboBoxOff2;
private javax.swing.JComboBox jComboBoxOff3;
private javax.swing.JComboBox jComboBoxOp1;
private javax.swing.JComboBox jComboBoxOp2;
private javax.swing.JComboBox jComboBoxOp3;
private javax.swing.JComboBox jComboBoxOpA;
private javax.swing.JComboBox jComboBoxS1;
private javax.swing.JComboBox jComboBoxS2;
private javax.swing.JComboBox jComboBoxS3;
private javax.swing.JComboBox jComboBoxSA;
private javax.swing.JComboBox jComboBoxSize1;
private javax.swing.JComboBox jComboBoxSize2;
private javax.swing.JComboBox jComboBoxSize3;
private javax.swing.JFrame jFrameAdd;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel11;
private javax.swing.JLabel jLabel12;
private javax.swing.JLabel jLabel13;
private javax.swing.JLabel jLabel14;
private javax.swing.JLabel jLabel15;
private javax.swing.JLabel jLabel16;
private javax.swing.JLabel jLabel18;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel22;
private javax.swing.JLabel jLabel23;
private javax.swing.JLabel jLabel26;
private javax.swing.JLabel jLabel27;
private javax.swing.JLabel jLabel28;
private javax.swing.JLabel jLabel29;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel30;
private javax.swing.JLabel jLabel31;
private javax.swing.JLabel jLabel32;
private javax.swing.JLabel jLabel33;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JPanel jPanel5;
private javax.swing.JPanel jPanel6;
private javax.swing.JPanel jPanel7;
private javax.swing.JPanel jPanel8;
private javax.swing.JPanel jPanel9;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JSpinner jSpinnerAddrH;
private javax.swing.JSpinner jSpinnerAddrL;
private javax.swing.JSpinner jSpinnerBeacon;
private javax.swing.JSpinner jSpinnerNetID;
private javax.swing.JSpinner jSpinnerNetID2;
private javax.swing.JSpinner jSpinnerNetID3;
private javax.swing.JSpinner jSpinnerRSSI;
private javax.swing.JSpinner jSpinnerReport;
private javax.swing.JSpinner jSpinnerTTL;
private javax.swing.JSpinner jSpinnerValueH1;
private javax.swing.JSpinner jSpinnerValueH2;
private javax.swing.JSpinner jSpinnerValueH3;
private javax.swing.JSpinner jSpinnerValueHA;
private javax.swing.JSpinner jSpinnerValueL1;
private javax.swing.JSpinner jSpinnerValueL2;
private javax.swing.JSpinner jSpinnerValueL3;
private javax.swing.JSpinner jSpinnerValueLA;
private javax.swing.JTabbedPane jTabbedPane1;
private javax.swing.JTable jTableAccepted;
private javax.swing.JTable jTableFlow;
private javax.swing.JTextField jTextField1;
// End of variables declaration//GEN-END:variables
}