57
Data String yang diterima diubah menjadi bentuk data tabel dan ditampung dalam variabel tempTabel. Dilakukan proses
perulangan sebanyak jumlah row dalam tabel setting untuk mencocokkan ip pada tabel setting dengan ip pengirim. Jika memenuhi
syarat ip sama dengan ip pada tabel setting maka diambil nilai hopnya dan di masukkan dalam variabel hopsnya. Setelah mendapat nilai hop
maka dilakukan perulangan sebanyak panjang tempTabel dengan variabel x dan perulangan kedua sebanyak jumlah kolom yaitu 3
dengan variabel j. Jika memenuhi syarat j sama dengan 0 maka nilai arraySum ke [x][0] diisi dengan nilai tempTabel ke [x][0]. Jika
memenuhi syarat j sama dengan 1 maka selanjutnya jika memenuhi syarat nilai temp tabel ke [x][1] tidak sama dengan “-“ maka nilai
[x][1] ditampung dalam variabel jarak untuk selanjutnya nilai jarak ditambahkan dengan nilai hoopsnya disimpan dalam variabel jarak2
untuk selanjutnya nilai jarak2 disimpan dalam array sum ke [x][1]. Jika memenuhi syarat j sama dengan 2 maka nilai array sum ke [x][2]
di beri nilai ip pengirim. Keluar dari proses perulangan masih dalam method tipe5 dikerjakan method compareData yang selanjutnya hasil
dari proses membandingkan tersebut menggantikan nilai keseluruhan pada tabel utama. Selanjutnya proses pengambilan arah dikerjakan
oleh method ambilArah.
4.3.3 cekStatus
Untuk menyaring data agar lebih valid, sehingga data yang sama tidak akan dimasukan pada tabel utama, maka diperlukan method
cekStatus yang bertipe boolean. Data sebagai penyaringnya adalah data ip yang merupakan data unik. Data ip pada data tabel utama akan
dibaca, ketika menemukan ip yang sama maka akan mengembalikan
58
nilai true, jika data ip tidak sama maka akan mengembalikan nilai false.
public boolean cekStatusString ipDest { boolean status = false;
for int
i =
0; i
tabel_utama.model.getRowCount status == false; i++ {
if tabel_utama.model.getValueAti, 0.equalsipDest {
status = true; }
} return status;
}
4.3.4 cekStatusComp
Dengan fungsi sama seperti method cekStatus, method cekStatusComp digunakan untuk menyaring data dari tabel Compare
untuk mendapatkan nilai data yang valid. Data sebagai penyaringnya adalah data ip yang merupakan data unik. Data ip pada data tabel
compare akan dibaca, ketika menemukan ip yang sama maka akan mengembalikan nilai true, jika data ip tidak sama maka akan
mengembalikan nilai false.
public boolean cekStatusCompString ipDest { boolean statuscomp = false;
for int
i =
0; i
tabel_compare.model.getRowCount statuscomp == false; i++ {
if tabel_compare.model.getValueAti, 0.equalsipDest {
59
statuscomp = true; }
} return statuscomp;
}
4.3.5 compareData
Proses akhir dari pengolahan tabel dimana data dari array sum dibandingkan dengan data dari tabel utama sebagai tabel pembentuk
awal sehingga mendaptakan nilai hoop terkecil dari data tersebut. Data dibaca tiap baris kemudian jika menemukan ip yang sama , maka akan
dilakukan proses pembadingan untuk mencari nilai hoop terkecil dari kedua data tersebut. Kemudian hasil akan disimpan dalam tabel
Compare yang selanjutnya data pada tabel compare merupakan data pada tabel utama yang baru.
tabel_compare.model = DefaultTableModel tabel_compare.jTable1.getModel;
String to = null; String next = null;
String hop1 = null; for int i = 0; i arraySum.length; i++ {
String data1[] = new String[3]; if arraySum[i][0] = null {
if cekIpTabelarraySum[i][0] == true {
for int j = 0; j tabel_utama.model.getRowCount; j++ {
if arraySum[i][0].equalstabel_utama.model.getValueAtj
, 0 { if
60
arraySum[i][2].equalstabel_utama.model.getValueAtj , 2 {
if cekStatusComparraySum[i][0] == false {