Finished airline serialising

main
Sunguin Peng 9 years ago
parent ac7a4514d0
commit a4728ea35e

@ -155,6 +155,10 @@ public class AirlineFilter extends Filter{
return filteredList;
}
// public ArrayList getBaseList(){
// return baseArray;
// }
/**
* sets a new base list of the filter.
* @param arrayList

@ -12,7 +12,7 @@ import java.util.HashMap;
*/
public class Session implements Serializable {
private SceneCode sceneDisplayed;
private HashMap<String, Airline> filteredAirlines;
private HashMap<String, Integer> filteredAirlines;
/**
* Constructor for a new session
@ -50,7 +50,7 @@ public class Session implements Serializable {
this.filteredAirlines = airlines;
}
public HashMap<String, Airline> getFilteredAirlines() {
public HashMap<String, Integer> getFilteredAirlines() {
return filteredAirlines;
}
}

@ -81,16 +81,16 @@ public class AirlineFilterController extends Controller {
//currentSession.setFilteredAirlines(FXCollections.observableArrayList(filter.getFilteredData()));
HashMap<String, Airline> airlinesHM = new HashMap<String, Airline>();
HashMap<Integer, String> airlinesHM = new HashMap<Integer, String>();
ArrayList<Airline> airlines = filter.getFilteredData();
for (Airline airline: airlines) {
airlinesHM.put(airline.getName(), airline);
//for (Airline airline: airlines) {
for (int index = 0; index < airlines.size(); index++) {
airlinesHM.put(index, airlines.get(index).getName());
}
currentSession.setFilteredAirlines(airlinesHM);
Stage stage = (Stage) applyButton.getScene().getWindow();
stage.close();
}
public void load() {

@ -17,6 +17,7 @@ import seng202.group9.Core.Airline;
import javax.swing.*;
import java.io.IOException;
import java.util.ArrayList;
//make a class for the scenes to get the data I guess
/**
* The GUI controller class for airline_raw_data.fxml.
@ -84,7 +85,14 @@ public class AirlineRDController extends Controller {
*/
public void openFilter() {
createPopUpStage(SceneCode.AIRLINE_FILTER, 600, 370);
tableViewAirlineRD.setItems(FXCollections.observableArrayList(currentSession.getFilteredAirlines().values()));
ArrayList<Airline> d = new ArrayList();
for(int i = 0; i < theDataSet.getAirlines().size(); i++) {
if (currentSession.getFilteredAirlines().containsValue(theDataSet.getAirlines().get(i).getName())
&& currentSession.getFilteredAirlines().containsKey(i)) {
d.add(theDataSet.getAirlines().get(i));
}
}
tableViewAirlineRD.setItems(FXCollections.observableArrayList(d));
}

Loading…
Cancel
Save