Finished airline serialising

This commit is contained in:
Sunguin Peng
2016-09-23 11:01:19 +12:00
parent ac7a4514d0
commit a4728ea35e
4 changed files with 19 additions and 7 deletions
@@ -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));
}