Added Session remembering last filtered information
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -782,7 +782,9 @@ public class Dataset {
|
||||
//airport.getCountry().setPosition(new Position(airport.getLatitude(), airport.getLongitude()));
|
||||
//TODO Add City in country (This is extra work).
|
||||
airport.setCity(cityDictionary.get(airport.getCityName()));
|
||||
airport.getCity().addAirport(airport);
|
||||
if (airport.getCity() != null) {
|
||||
airport.getCity().addAirport(airport);
|
||||
}
|
||||
airport.setDepartureRoutes(new ArrayList<Route>());
|
||||
airport.setArrivalRoutes(new ArrayList<Route>());
|
||||
}
|
||||
|
||||
@@ -17,57 +17,19 @@ public class Session implements Serializable {
|
||||
|
||||
private SceneCode sceneDisplayed;
|
||||
|
||||
private int currentFlightPointID;
|
||||
private int currentFlightPathID;
|
||||
private HashMap<Integer, String> filteredAirlines;
|
||||
private HashMap<Integer, String> filteredAirports;
|
||||
private HashMap<Integer, String> filteredRoutes;
|
||||
private int currentFlightPointID;//current selected flight point
|
||||
private int currentFlightPathID;//cureselected flight path
|
||||
private HashMap<Integer, String> filteredAirlines;//current filtered airlines
|
||||
private HashMap<Integer, String> filteredAirports;//current filtered airports
|
||||
private HashMap<Integer, String> filteredRoutes;//current filtered routes
|
||||
private HashMap<String, String> airportFilter;//storage for filter values for airports
|
||||
private HashMap<String, String> airlineFilter;//storage for filter values for airports
|
||||
private HashMap<String, String> routeFilter;//storage for filter values for airports
|
||||
private String selectedgraphagainst;
|
||||
private String selectedgraphoptions;
|
||||
private Boolean usefilter;
|
||||
private Boolean forceGraph;
|
||||
private String selectedDataToGraph;
|
||||
|
||||
public Boolean getForceGraph() {
|
||||
return forceGraph;
|
||||
}
|
||||
|
||||
public void setForceGraph(Boolean forceGraph) {
|
||||
this.forceGraph = forceGraph;
|
||||
}
|
||||
|
||||
public String getSelectedDataToGraph() {
|
||||
return selectedDataToGraph;
|
||||
}
|
||||
|
||||
public void setSelectedDataToGraph(String selectedDataToGraph) {
|
||||
this.selectedDataToGraph = selectedDataToGraph;
|
||||
}
|
||||
|
||||
public String getSelectedgraphagainst() {
|
||||
return selectedgraphagainst;
|
||||
}
|
||||
|
||||
public void setSelectedgraphagainst(String selectedgraphagainst) {
|
||||
this.selectedgraphagainst = selectedgraphagainst;
|
||||
}
|
||||
|
||||
public String getSelectedgraphoptions() {
|
||||
return selectedgraphoptions;
|
||||
}
|
||||
|
||||
public void setSelectedgraphoptions(String selectedgraphoptions) {
|
||||
this.selectedgraphoptions = selectedgraphoptions;
|
||||
}
|
||||
|
||||
public Boolean getUsefilter() {
|
||||
return usefilter;
|
||||
}
|
||||
|
||||
public void setUsefilter(Boolean usefilter) {
|
||||
this.usefilter = usefilter;
|
||||
}
|
||||
|
||||
private String airlineToEdit;
|
||||
private String airportToEdit;
|
||||
private String routeToEdit;
|
||||
@@ -84,6 +46,10 @@ public class Session implements Serializable {
|
||||
this.filteredAirlines = new HashMap<>();
|
||||
this.filteredAirports = new HashMap<>();
|
||||
this.filteredRoutes = new HashMap<>();
|
||||
//set the filters to nothing
|
||||
airportFilter = new HashMap<>();
|
||||
airlineFilter = new HashMap<>();
|
||||
routeFilter = new HashMap<>();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -198,4 +164,68 @@ public class Session implements Serializable {
|
||||
return currentFlightPathID;
|
||||
}
|
||||
|
||||
|
||||
public Boolean getForceGraph() {
|
||||
return forceGraph;
|
||||
}
|
||||
|
||||
public void setForceGraph(Boolean forceGraph) {
|
||||
this.forceGraph = forceGraph;
|
||||
}
|
||||
|
||||
public String getSelectedDataToGraph() {
|
||||
return selectedDataToGraph;
|
||||
}
|
||||
|
||||
public void setSelectedDataToGraph(String selectedDataToGraph) {
|
||||
this.selectedDataToGraph = selectedDataToGraph;
|
||||
}
|
||||
|
||||
public String getSelectedgraphagainst() {
|
||||
return selectedgraphagainst;
|
||||
}
|
||||
|
||||
public void setSelectedgraphagainst(String selectedgraphagainst) {
|
||||
this.selectedgraphagainst = selectedgraphagainst;
|
||||
}
|
||||
|
||||
public String getSelectedgraphoptions() {
|
||||
return selectedgraphoptions;
|
||||
}
|
||||
|
||||
public void setSelectedgraphoptions(String selectedgraphoptions) {
|
||||
this.selectedgraphoptions = selectedgraphoptions;
|
||||
}
|
||||
|
||||
public Boolean getUsefilter() {
|
||||
return usefilter;
|
||||
}
|
||||
|
||||
public void setUsefilter(Boolean usefilter) {
|
||||
this.usefilter = usefilter;
|
||||
}
|
||||
|
||||
public HashMap<String, String> getAirportFilter() {
|
||||
return airportFilter;
|
||||
}
|
||||
|
||||
public void setAirportFilter(HashMap<String, String> airportFilter) {
|
||||
this.airportFilter = airportFilter;
|
||||
}
|
||||
|
||||
public HashMap<String, String> getAirlineFilter() {
|
||||
return airlineFilter;
|
||||
}
|
||||
|
||||
public void setAirlineFilter(HashMap<String, String> airlineFilter) {
|
||||
this.airlineFilter = airlineFilter;
|
||||
}
|
||||
|
||||
public HashMap<String, String> getRouteFilter() {
|
||||
return routeFilter;
|
||||
}
|
||||
|
||||
public void setRouteFilter(HashMap<String, String> routeFilter) {
|
||||
this.routeFilter = routeFilter;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,13 +43,27 @@ public class AirlineFilterController extends Controller {
|
||||
|
||||
private Dataset theDataSet = null;
|
||||
private Session currentSession = null;
|
||||
private HashMap<String,String> sesFilter;//session filter dictionary
|
||||
|
||||
/**
|
||||
* Loads up the current dataset and current session.
|
||||
*/
|
||||
public void load() {
|
||||
if (!checkDataset()){
|
||||
return;
|
||||
}
|
||||
theDataSet = getParent().getCurrentDataset();
|
||||
currentSession = getParent().getSession();
|
||||
|
||||
sesFilter = currentSession.getAirlineFilter();
|
||||
|
||||
airlNameFilter.setText(sesFilter.get("Name"));
|
||||
airlAliasFilter.setText(sesFilter.get("Alias"));
|
||||
airlIATAFilter.setText(sesFilter.get("IATA"));
|
||||
airlICAOFilter.setText(sesFilter.get("ICAO"));
|
||||
airlCallsignFilter.setText(sesFilter.get("Callsign"));
|
||||
airlCountryFilter.setText(sesFilter.get("Country"));
|
||||
airlActiveFilter.setText(sesFilter.get("Active"));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -61,26 +75,35 @@ public class AirlineFilterController extends Controller {
|
||||
public void filterAirlines() {
|
||||
//The filter function also operates like a search function
|
||||
AirlineFilter filter = new AirlineFilter(theDataSet.getAirlines());
|
||||
currentSession.setAirlineFilter(new HashMap<String, String>());
|
||||
sesFilter = currentSession.getAirlineFilter();
|
||||
if (airlNameFilter.getText() != null) {
|
||||
filter.filterName(airlNameFilter.getText());
|
||||
sesFilter.put("Name", airlNameFilter.getText());
|
||||
}
|
||||
if (airlAliasFilter.getText() != null) {
|
||||
filter.filterAlias(airlAliasFilter.getText());
|
||||
sesFilter.put("Alias", airlAliasFilter.getText());
|
||||
}
|
||||
if (airlIATAFilter.getText() != null) {
|
||||
filter.filterIATA(airlIATAFilter.getText());
|
||||
sesFilter.put("IATA", airlIATAFilter.getText());
|
||||
}
|
||||
if (airlICAOFilter.getText() != null) {
|
||||
filter.filterICAO(airlICAOFilter.getText());
|
||||
sesFilter.put("ICAO", airlICAOFilter.getText());
|
||||
}
|
||||
if (airlCallsignFilter.getText() != null) {
|
||||
filter.filterCallsign(airlCallsignFilter.getText());
|
||||
sesFilter.put("Callsign", airlCallsignFilter.getText());
|
||||
}
|
||||
if (airlCountryFilter.getText() != null) {
|
||||
filter.filterCountry(airlCountryFilter.getText());
|
||||
sesFilter.put("Country", airlCountryFilter.getText());
|
||||
}
|
||||
if (airlActiveFilter.getText() != null) {
|
||||
filter.filterActive(airlActiveFilter.getText());
|
||||
sesFilter.put("Active", airlActiveFilter.getText());
|
||||
}
|
||||
|
||||
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
||||
|
||||
@@ -48,6 +48,7 @@ public class AirportFilterController extends Controller {
|
||||
private Dataset theDataSet = null;
|
||||
//Set an empty session to be assigned to the current session.
|
||||
private Session currentSession = null;
|
||||
private HashMap<String, String> sesFilter;
|
||||
|
||||
/**
|
||||
* Filters the airports table by any field.
|
||||
@@ -58,38 +59,51 @@ public class AirportFilterController extends Controller {
|
||||
public void filterAirports() {
|
||||
//The filter function also operates like a search function
|
||||
AirportFilter filter = new AirportFilter(theDataSet.getAirports());
|
||||
currentSession.setAirportFilter(new HashMap<String, String>());
|
||||
sesFilter = currentSession.getAirportFilter();
|
||||
if (airpNameFilter.getText() != null) {
|
||||
filter.filterName(airpNameFilter.getText());
|
||||
sesFilter.put("Name", airpNameFilter.getText());
|
||||
}
|
||||
if (airpCityFilter.getText() != null) {
|
||||
filter.filterCity(airpCityFilter.getText());
|
||||
sesFilter.put("City", airpCityFilter.getText());
|
||||
}
|
||||
if (airpCountryFilter.getText() != null) {
|
||||
filter.filterCountry(airpCountryFilter.getText());
|
||||
sesFilter.put("Country", airpCountryFilter.getText());
|
||||
}
|
||||
if (airpIATAFAAFilter.getText() != null) {
|
||||
filter.filterIATA_FFA(airpIATAFAAFilter.getText());
|
||||
sesFilter.put("IATA/FFA", airpIATAFAAFilter.getText());
|
||||
}
|
||||
if (airpICAOFilter.getText() != null) {
|
||||
filter.filterICAO(airpICAOFilter.getText());
|
||||
sesFilter.put("ICAO", airpICAOFilter.getText());
|
||||
}
|
||||
if (airpLatitudeFilter.getText() != null) {
|
||||
filter.filterLatitude(airpLatitudeFilter.getText());
|
||||
sesFilter.put("Latitude", airpLatitudeFilter.getText());
|
||||
}
|
||||
if (airpLongitudeFilter.getText() != null) {
|
||||
filter.filterLongitude(airpLongitudeFilter.getText());
|
||||
sesFilter.put("Longitude", airpLongitudeFilter.getText());
|
||||
}
|
||||
if (airpAltitudeFilter.getText() != null) {
|
||||
filter.filterAltitude(airpAltitudeFilter.getText());
|
||||
sesFilter.put("Altitude", airpAltitudeFilter.getText());
|
||||
}
|
||||
if (airpTimezoneFilter.getText() != null) {
|
||||
filter.filterTimezone(airpTimezoneFilter.getText());
|
||||
sesFilter.put("Tz", airpTimezoneFilter.getText());
|
||||
}
|
||||
if (airpDSTFilter.getText() != null) {
|
||||
filter.filterDST(airpDSTFilter.getText());
|
||||
sesFilter.put("DST", airpDSTFilter.getText());
|
||||
}
|
||||
if (airpTzFilter.getText() != null) {
|
||||
filter.filterOlson(airpTzFilter.getText());
|
||||
sesFilter.put("Olson", airpTzFilter.getText());
|
||||
}
|
||||
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
||||
alert.setTitle("Airport Filter Successful");
|
||||
@@ -109,7 +123,24 @@ public class AirportFilterController extends Controller {
|
||||
}
|
||||
|
||||
public void load() {
|
||||
if (!checkDataset()){
|
||||
return;
|
||||
}
|
||||
theDataSet = getParent().getCurrentDataset();
|
||||
currentSession = getParent().getSession();
|
||||
sesFilter = currentSession.getAirportFilter();
|
||||
|
||||
airpNameFilter.setText(sesFilter.get("Name"));
|
||||
airpCityFilter.setText(sesFilter.get("City"));
|
||||
airpCountryFilter.setText(sesFilter.get("Country"));
|
||||
airpIATAFAAFilter.setText(sesFilter.get("IATA/FFA"));
|
||||
airpICAOFilter.setText(sesFilter.get("ICAO"));
|
||||
airpLatitudeFilter.setText(sesFilter.get("Latitude"));
|
||||
airpLongitudeFilter.setText(sesFilter.get("Longitude"));
|
||||
airpAltitudeFilter.setText(sesFilter.get("Altitude"));
|
||||
airpTimezoneFilter.setText(sesFilter.get("Tz"));
|
||||
airpDSTFilter.setText(sesFilter.get("DST"));
|
||||
airpTzFilter.setText(sesFilter.get("Olson"));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,6 +37,7 @@ public class RouteFilterController extends Controller {
|
||||
private Dataset theDataSet = null;
|
||||
//Set an empty session to be assigned to the current session.
|
||||
private Session currentSession = null;
|
||||
private HashMap<String, String> sesFilter;
|
||||
|
||||
/**
|
||||
* Filters the routes table by any field.
|
||||
@@ -47,23 +48,30 @@ public class RouteFilterController extends Controller {
|
||||
public void filterRoutes(){
|
||||
//The filter function also operates like a search function
|
||||
RouteFilter filter = new RouteFilter(theDataSet.getRoutes());
|
||||
currentSession.setRouteFilter(new HashMap<String, String>());
|
||||
if (rAirlineFilter.getText() != null) {
|
||||
filter.filterAirline(rAirlineFilter.getText());
|
||||
sesFilter.put("Airline", rAirlineFilter.getText());
|
||||
}
|
||||
if (rSourceFilter.getText() != null) {
|
||||
filter.filterSourceAirport(rSourceFilter.getText());
|
||||
sesFilter.put("Airline", rSourceFilter.getText());
|
||||
}
|
||||
if (rDestFilter.getText() != null) {
|
||||
filter.filterDestinationAirport(rDestFilter.getText());
|
||||
sesFilter.put("Airline", rDestFilter.getText());
|
||||
}
|
||||
if (rCodeshareFilter.getText() != null) {
|
||||
filter.filterCodeshare(rCodeshareFilter.getText());
|
||||
sesFilter.put("Airline", rCodeshareFilter.getText());
|
||||
}
|
||||
if (rStopsFilter.getText() != null) {
|
||||
filter.filterDestinationStops(rStopsFilter.getText());
|
||||
sesFilter.put("Airline", rStopsFilter.getText());
|
||||
}
|
||||
if (rEquipmentFilter.getText() != null) {
|
||||
filter.filterEquipment(rEquipmentFilter.getText());
|
||||
sesFilter.put("Airline", rEquipmentFilter.getText());
|
||||
}
|
||||
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
||||
alert.setTitle("Route Filter Successful");
|
||||
@@ -91,5 +99,12 @@ public class RouteFilterController extends Controller {
|
||||
}
|
||||
theDataSet = getParent().getCurrentDataset();
|
||||
currentSession = getParent().getSession();
|
||||
sesFilter = currentSession.getRouteFilter();
|
||||
rAirlineFilter.setText(sesFilter.get("Airline"));
|
||||
rSourceFilter.setText(sesFilter.get("Source"));
|
||||
rDestFilter.setText(sesFilter.get("Destination"));
|
||||
rCodeshareFilter.setText(sesFilter.get("Codeshare"));
|
||||
rStopsFilter.setText(sesFilter.get("Stops"));
|
||||
rEquipmentFilter.setText(sesFilter.get("Equipment"));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user