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()));
|
//airport.getCountry().setPosition(new Position(airport.getLatitude(), airport.getLongitude()));
|
||||||
//TODO Add City in country (This is extra work).
|
//TODO Add City in country (This is extra work).
|
||||||
airport.setCity(cityDictionary.get(airport.getCityName()));
|
airport.setCity(cityDictionary.get(airport.getCityName()));
|
||||||
airport.getCity().addAirport(airport);
|
if (airport.getCity() != null) {
|
||||||
|
airport.getCity().addAirport(airport);
|
||||||
|
}
|
||||||
airport.setDepartureRoutes(new ArrayList<Route>());
|
airport.setDepartureRoutes(new ArrayList<Route>());
|
||||||
airport.setArrivalRoutes(new ArrayList<Route>());
|
airport.setArrivalRoutes(new ArrayList<Route>());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,57 +17,19 @@ public class Session implements Serializable {
|
|||||||
|
|
||||||
private SceneCode sceneDisplayed;
|
private SceneCode sceneDisplayed;
|
||||||
|
|
||||||
private int currentFlightPointID;
|
private int currentFlightPointID;//current selected flight point
|
||||||
private int currentFlightPathID;
|
private int currentFlightPathID;//cureselected flight path
|
||||||
private HashMap<Integer, String> filteredAirlines;
|
private HashMap<Integer, String> filteredAirlines;//current filtered airlines
|
||||||
private HashMap<Integer, String> filteredAirports;
|
private HashMap<Integer, String> filteredAirports;//current filtered airports
|
||||||
private HashMap<Integer, String> filteredRoutes;
|
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 selectedgraphagainst;
|
||||||
private String selectedgraphoptions;
|
private String selectedgraphoptions;
|
||||||
private Boolean usefilter;
|
private Boolean usefilter;
|
||||||
private Boolean forceGraph;
|
private Boolean forceGraph;
|
||||||
private String selectedDataToGraph;
|
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 airlineToEdit;
|
||||||
private String airportToEdit;
|
private String airportToEdit;
|
||||||
private String routeToEdit;
|
private String routeToEdit;
|
||||||
@@ -84,6 +46,10 @@ public class Session implements Serializable {
|
|||||||
this.filteredAirlines = new HashMap<>();
|
this.filteredAirlines = new HashMap<>();
|
||||||
this.filteredAirports = new HashMap<>();
|
this.filteredAirports = new HashMap<>();
|
||||||
this.filteredRoutes = 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;
|
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 Dataset theDataSet = null;
|
||||||
private Session currentSession = null;
|
private Session currentSession = null;
|
||||||
|
private HashMap<String,String> sesFilter;//session filter dictionary
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loads up the current dataset and current session.
|
* Loads up the current dataset and current session.
|
||||||
*/
|
*/
|
||||||
public void load() {
|
public void load() {
|
||||||
|
if (!checkDataset()){
|
||||||
|
return;
|
||||||
|
}
|
||||||
theDataSet = getParent().getCurrentDataset();
|
theDataSet = getParent().getCurrentDataset();
|
||||||
currentSession = getParent().getSession();
|
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() {
|
public void filterAirlines() {
|
||||||
//The filter function also operates like a search function
|
//The filter function also operates like a search function
|
||||||
AirlineFilter filter = new AirlineFilter(theDataSet.getAirlines());
|
AirlineFilter filter = new AirlineFilter(theDataSet.getAirlines());
|
||||||
|
currentSession.setAirlineFilter(new HashMap<String, String>());
|
||||||
|
sesFilter = currentSession.getAirlineFilter();
|
||||||
if (airlNameFilter.getText() != null) {
|
if (airlNameFilter.getText() != null) {
|
||||||
filter.filterName(airlNameFilter.getText());
|
filter.filterName(airlNameFilter.getText());
|
||||||
|
sesFilter.put("Name", airlNameFilter.getText());
|
||||||
}
|
}
|
||||||
if (airlAliasFilter.getText() != null) {
|
if (airlAliasFilter.getText() != null) {
|
||||||
filter.filterAlias(airlAliasFilter.getText());
|
filter.filterAlias(airlAliasFilter.getText());
|
||||||
|
sesFilter.put("Alias", airlAliasFilter.getText());
|
||||||
}
|
}
|
||||||
if (airlIATAFilter.getText() != null) {
|
if (airlIATAFilter.getText() != null) {
|
||||||
filter.filterIATA(airlIATAFilter.getText());
|
filter.filterIATA(airlIATAFilter.getText());
|
||||||
|
sesFilter.put("IATA", airlIATAFilter.getText());
|
||||||
}
|
}
|
||||||
if (airlICAOFilter.getText() != null) {
|
if (airlICAOFilter.getText() != null) {
|
||||||
filter.filterICAO(airlICAOFilter.getText());
|
filter.filterICAO(airlICAOFilter.getText());
|
||||||
|
sesFilter.put("ICAO", airlICAOFilter.getText());
|
||||||
}
|
}
|
||||||
if (airlCallsignFilter.getText() != null) {
|
if (airlCallsignFilter.getText() != null) {
|
||||||
filter.filterCallsign(airlCallsignFilter.getText());
|
filter.filterCallsign(airlCallsignFilter.getText());
|
||||||
|
sesFilter.put("Callsign", airlCallsignFilter.getText());
|
||||||
}
|
}
|
||||||
if (airlCountryFilter.getText() != null) {
|
if (airlCountryFilter.getText() != null) {
|
||||||
filter.filterCountry(airlCountryFilter.getText());
|
filter.filterCountry(airlCountryFilter.getText());
|
||||||
|
sesFilter.put("Country", airlCountryFilter.getText());
|
||||||
}
|
}
|
||||||
if (airlActiveFilter.getText() != null) {
|
if (airlActiveFilter.getText() != null) {
|
||||||
filter.filterActive(airlActiveFilter.getText());
|
filter.filterActive(airlActiveFilter.getText());
|
||||||
|
sesFilter.put("Active", airlActiveFilter.getText());
|
||||||
}
|
}
|
||||||
|
|
||||||
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ public class AirportFilterController extends Controller {
|
|||||||
private Dataset theDataSet = null;
|
private Dataset theDataSet = null;
|
||||||
//Set an empty session to be assigned to the current session.
|
//Set an empty session to be assigned to the current session.
|
||||||
private Session currentSession = null;
|
private Session currentSession = null;
|
||||||
|
private HashMap<String, String> sesFilter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Filters the airports table by any field.
|
* Filters the airports table by any field.
|
||||||
@@ -58,38 +59,51 @@ public class AirportFilterController extends Controller {
|
|||||||
public void filterAirports() {
|
public void filterAirports() {
|
||||||
//The filter function also operates like a search function
|
//The filter function also operates like a search function
|
||||||
AirportFilter filter = new AirportFilter(theDataSet.getAirports());
|
AirportFilter filter = new AirportFilter(theDataSet.getAirports());
|
||||||
|
currentSession.setAirportFilter(new HashMap<String, String>());
|
||||||
|
sesFilter = currentSession.getAirportFilter();
|
||||||
if (airpNameFilter.getText() != null) {
|
if (airpNameFilter.getText() != null) {
|
||||||
filter.filterName(airpNameFilter.getText());
|
filter.filterName(airpNameFilter.getText());
|
||||||
|
sesFilter.put("Name", airpNameFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpCityFilter.getText() != null) {
|
if (airpCityFilter.getText() != null) {
|
||||||
filter.filterCity(airpCityFilter.getText());
|
filter.filterCity(airpCityFilter.getText());
|
||||||
|
sesFilter.put("City", airpCityFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpCountryFilter.getText() != null) {
|
if (airpCountryFilter.getText() != null) {
|
||||||
filter.filterCountry(airpCountryFilter.getText());
|
filter.filterCountry(airpCountryFilter.getText());
|
||||||
|
sesFilter.put("Country", airpCountryFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpIATAFAAFilter.getText() != null) {
|
if (airpIATAFAAFilter.getText() != null) {
|
||||||
filter.filterIATA_FFA(airpIATAFAAFilter.getText());
|
filter.filterIATA_FFA(airpIATAFAAFilter.getText());
|
||||||
|
sesFilter.put("IATA/FFA", airpIATAFAAFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpICAOFilter.getText() != null) {
|
if (airpICAOFilter.getText() != null) {
|
||||||
filter.filterICAO(airpICAOFilter.getText());
|
filter.filterICAO(airpICAOFilter.getText());
|
||||||
|
sesFilter.put("ICAO", airpICAOFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpLatitudeFilter.getText() != null) {
|
if (airpLatitudeFilter.getText() != null) {
|
||||||
filter.filterLatitude(airpLatitudeFilter.getText());
|
filter.filterLatitude(airpLatitudeFilter.getText());
|
||||||
|
sesFilter.put("Latitude", airpLatitudeFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpLongitudeFilter.getText() != null) {
|
if (airpLongitudeFilter.getText() != null) {
|
||||||
filter.filterLongitude(airpLongitudeFilter.getText());
|
filter.filterLongitude(airpLongitudeFilter.getText());
|
||||||
|
sesFilter.put("Longitude", airpLongitudeFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpAltitudeFilter.getText() != null) {
|
if (airpAltitudeFilter.getText() != null) {
|
||||||
filter.filterAltitude(airpAltitudeFilter.getText());
|
filter.filterAltitude(airpAltitudeFilter.getText());
|
||||||
|
sesFilter.put("Altitude", airpAltitudeFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpTimezoneFilter.getText() != null) {
|
if (airpTimezoneFilter.getText() != null) {
|
||||||
filter.filterTimezone(airpTimezoneFilter.getText());
|
filter.filterTimezone(airpTimezoneFilter.getText());
|
||||||
|
sesFilter.put("Tz", airpTimezoneFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpDSTFilter.getText() != null) {
|
if (airpDSTFilter.getText() != null) {
|
||||||
filter.filterDST(airpDSTFilter.getText());
|
filter.filterDST(airpDSTFilter.getText());
|
||||||
|
sesFilter.put("DST", airpDSTFilter.getText());
|
||||||
}
|
}
|
||||||
if (airpTzFilter.getText() != null) {
|
if (airpTzFilter.getText() != null) {
|
||||||
filter.filterOlson(airpTzFilter.getText());
|
filter.filterOlson(airpTzFilter.getText());
|
||||||
|
sesFilter.put("Olson", airpTzFilter.getText());
|
||||||
}
|
}
|
||||||
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
||||||
alert.setTitle("Airport Filter Successful");
|
alert.setTitle("Airport Filter Successful");
|
||||||
@@ -109,7 +123,24 @@ public class AirportFilterController extends Controller {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void load() {
|
public void load() {
|
||||||
|
if (!checkDataset()){
|
||||||
|
return;
|
||||||
|
}
|
||||||
theDataSet = getParent().getCurrentDataset();
|
theDataSet = getParent().getCurrentDataset();
|
||||||
currentSession = getParent().getSession();
|
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;
|
private Dataset theDataSet = null;
|
||||||
//Set an empty session to be assigned to the current session.
|
//Set an empty session to be assigned to the current session.
|
||||||
private Session currentSession = null;
|
private Session currentSession = null;
|
||||||
|
private HashMap<String, String> sesFilter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Filters the routes table by any field.
|
* Filters the routes table by any field.
|
||||||
@@ -47,23 +48,30 @@ public class RouteFilterController extends Controller {
|
|||||||
public void filterRoutes(){
|
public void filterRoutes(){
|
||||||
//The filter function also operates like a search function
|
//The filter function also operates like a search function
|
||||||
RouteFilter filter = new RouteFilter(theDataSet.getRoutes());
|
RouteFilter filter = new RouteFilter(theDataSet.getRoutes());
|
||||||
|
currentSession.setRouteFilter(new HashMap<String, String>());
|
||||||
if (rAirlineFilter.getText() != null) {
|
if (rAirlineFilter.getText() != null) {
|
||||||
filter.filterAirline(rAirlineFilter.getText());
|
filter.filterAirline(rAirlineFilter.getText());
|
||||||
|
sesFilter.put("Airline", rAirlineFilter.getText());
|
||||||
}
|
}
|
||||||
if (rSourceFilter.getText() != null) {
|
if (rSourceFilter.getText() != null) {
|
||||||
filter.filterSourceAirport(rSourceFilter.getText());
|
filter.filterSourceAirport(rSourceFilter.getText());
|
||||||
|
sesFilter.put("Airline", rSourceFilter.getText());
|
||||||
}
|
}
|
||||||
if (rDestFilter.getText() != null) {
|
if (rDestFilter.getText() != null) {
|
||||||
filter.filterDestinationAirport(rDestFilter.getText());
|
filter.filterDestinationAirport(rDestFilter.getText());
|
||||||
|
sesFilter.put("Airline", rDestFilter.getText());
|
||||||
}
|
}
|
||||||
if (rCodeshareFilter.getText() != null) {
|
if (rCodeshareFilter.getText() != null) {
|
||||||
filter.filterCodeshare(rCodeshareFilter.getText());
|
filter.filterCodeshare(rCodeshareFilter.getText());
|
||||||
|
sesFilter.put("Airline", rCodeshareFilter.getText());
|
||||||
}
|
}
|
||||||
if (rStopsFilter.getText() != null) {
|
if (rStopsFilter.getText() != null) {
|
||||||
filter.filterDestinationStops(rStopsFilter.getText());
|
filter.filterDestinationStops(rStopsFilter.getText());
|
||||||
|
sesFilter.put("Airline", rStopsFilter.getText());
|
||||||
}
|
}
|
||||||
if (rEquipmentFilter.getText() != null) {
|
if (rEquipmentFilter.getText() != null) {
|
||||||
filter.filterEquipment(rEquipmentFilter.getText());
|
filter.filterEquipment(rEquipmentFilter.getText());
|
||||||
|
sesFilter.put("Airline", rEquipmentFilter.getText());
|
||||||
}
|
}
|
||||||
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
Alert alert = new Alert(Alert.AlertType.INFORMATION);
|
||||||
alert.setTitle("Route Filter Successful");
|
alert.setTitle("Route Filter Successful");
|
||||||
@@ -91,5 +99,12 @@ public class RouteFilterController extends Controller {
|
|||||||
}
|
}
|
||||||
theDataSet = getParent().getCurrentDataset();
|
theDataSet = getParent().getCurrentDataset();
|
||||||
currentSession = getParent().getSession();
|
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