commit
b4073723f5
@ -0,0 +1,131 @@
|
|||||||
|
package seng202.group9.Controller;
|
||||||
|
|
||||||
|
import seng202.group9.Core.Airline;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by fwy13 on 16/09/16.
|
||||||
|
*/
|
||||||
|
public class AirlineFilter extends Filter{
|
||||||
|
|
||||||
|
private ArrayList<Airline> baseArray;
|
||||||
|
private ArrayList<Airline> filteredList;
|
||||||
|
|
||||||
|
public AirlineFilter(ArrayList<Airline> baseList){
|
||||||
|
filteredList = new ArrayList<Airline>();
|
||||||
|
baseArray = new ArrayList<Airline>();
|
||||||
|
for (Airline airline: baseList){
|
||||||
|
baseArray.add(airline);
|
||||||
|
filteredList.add(airline);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterName(String name){
|
||||||
|
String regexCode = "(?i).*"+name+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getName().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterAlias(String alias){
|
||||||
|
String regexCode = "(?i).*"+alias+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getAlias().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterIATA(String IATA){
|
||||||
|
String regexCode = "(?i).*"+IATA+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getIATA().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterICAO(String ICAO){
|
||||||
|
String regexCode = "(?i).*"+ICAO+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getICAO().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterCallsign(String callsign){
|
||||||
|
String regexCode = "(?i).*"+callsign+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getCallSign().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterCountry(String country){
|
||||||
|
String regexCode = "(?i).*"+country+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getCountryName().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterActive(String active){
|
||||||
|
String regexCode = "(?i).*"+active+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getActive().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void reset() {
|
||||||
|
filteredList = new ArrayList<Airline>();
|
||||||
|
for (Airline airline: filteredList){
|
||||||
|
filteredList.add(airline);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArrayList getFilteredData() {
|
||||||
|
return filteredList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBaseList(ArrayList<Airline> arrayList) {
|
||||||
|
baseArray = new ArrayList<Airline>();
|
||||||
|
for (Airline airline: arrayList){
|
||||||
|
baseArray.add(airline);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void printFilter(){
|
||||||
|
for (Airline airline: filteredList){
|
||||||
|
System.out.println(airline);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,180 @@
|
|||||||
|
package seng202.group9.Controller;
|
||||||
|
|
||||||
|
import seng202.group9.Core.Airline;
|
||||||
|
import seng202.group9.Core.Airport;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by fwy13 on 16/09/16.
|
||||||
|
*/
|
||||||
|
public class AirportFilter extends Filter{
|
||||||
|
|
||||||
|
private ArrayList<Airport> baseArray;
|
||||||
|
private ArrayList<Airport> filteredList;
|
||||||
|
|
||||||
|
public AirportFilter(ArrayList<Airport> baseList){
|
||||||
|
filteredList = new ArrayList<Airport>();
|
||||||
|
baseArray = new ArrayList<Airport>();
|
||||||
|
for (Airport airport: baseList){
|
||||||
|
baseArray.add(airport);
|
||||||
|
filteredList.add(airport);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterName(String name){
|
||||||
|
String regexCode = "(?i).*"+name+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getName().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterCity(String city){
|
||||||
|
String regexCode = "(?i).*"+city+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getCityName().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterCountry(String country){
|
||||||
|
String regexCode = "(?i).*"+country+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getCountryName().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterIATA_FFA(String IATA_FFA){
|
||||||
|
String regexCode = "(?i).*"+IATA_FFA+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getIATA_FFA().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterICAO(String ICAO){
|
||||||
|
String regexCode = "(?i).*"+ICAO+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getICAO().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterLatitude(String latitude){
|
||||||
|
String regexCode = "(?i).*"+latitude+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!String.valueOf(filteredList.get(index).getLatitude()).matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterLongitude(String longitude){
|
||||||
|
String regexCode = "(?i).*"+longitude+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!String.valueOf(filteredList.get(index).getLongitude()).matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterAltitude(String altitude){
|
||||||
|
String regexCode = "(?i).*"+altitude+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!String.valueOf(filteredList.get(index).getAltitude()).matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterTimezone(String timezone){
|
||||||
|
String regexCode = "(?i).*"+timezone+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!String.valueOf(filteredList.get(index).getCity(). getTimezone()).matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterOlson(String olson){
|
||||||
|
String regexCode = "(?i).*"+olson+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getCity().getTimeOlson().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterDST(String DST){
|
||||||
|
String regexCode = "(?i).*"+DST+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getCountry().getDST().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void reset() {
|
||||||
|
filteredList = new ArrayList<Airport>();
|
||||||
|
for (Airport airport: filteredList){
|
||||||
|
filteredList.add(airport);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArrayList getFilteredData() {
|
||||||
|
return filteredList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBaseList(ArrayList<Airport> arrayList) {
|
||||||
|
baseArray = new ArrayList<Airport>();
|
||||||
|
for (Airport airport: arrayList){
|
||||||
|
baseArray.add(airport);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void printFilter(){
|
||||||
|
for (Airport airport: filteredList){
|
||||||
|
System.out.println(airport);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package seng202.group9.Controller;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by fwy13 on 16/09/16.
|
||||||
|
*/
|
||||||
|
public abstract class Filter {
|
||||||
|
abstract void reset();
|
||||||
|
abstract ArrayList getFilteredData();
|
||||||
|
}
|
||||||
@ -0,0 +1,119 @@
|
|||||||
|
package seng202.group9.Controller;
|
||||||
|
|
||||||
|
import seng202.group9.Core.Route;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by fwy13 on 16/09/16.
|
||||||
|
*/
|
||||||
|
public class RouteFilter extends Filter{
|
||||||
|
|
||||||
|
private ArrayList<Route> baseArray;
|
||||||
|
private ArrayList<Route> filteredList;
|
||||||
|
|
||||||
|
public RouteFilter(ArrayList<Route> baseList){
|
||||||
|
filteredList = new ArrayList<Route>();
|
||||||
|
baseArray = new ArrayList<Route>();
|
||||||
|
for (Route route: baseList){
|
||||||
|
baseArray.add(route);
|
||||||
|
filteredList.add(route);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterAirline(String airline){
|
||||||
|
String regexCode = "(?i).*"+airline+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getAirlineName().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterSourceAirport(String airport){
|
||||||
|
String regexCode = "(?i).*"+airport+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getDepartureAirport().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterDestinationAirport(String airport){
|
||||||
|
String regexCode = "(?i).*"+airport+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getArrivalAirport().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterCodeshare(String code){
|
||||||
|
String regexCode = "(?i).*"+code+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getCode().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterDestinationStops(String stops){
|
||||||
|
String regexCode = "(?i).*"+stops+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getArrivalAirport().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void filterEquipment(String equipment){
|
||||||
|
String regexCode = "(?i).*"+equipment+".*";
|
||||||
|
int index = 0;
|
||||||
|
while(index < filteredList.size()){
|
||||||
|
if (!filteredList.get(index).getEquipment().matches(regexCode)){
|
||||||
|
filteredList.remove(index);
|
||||||
|
}else{
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void reset() {
|
||||||
|
filteredList = new ArrayList<Route>();
|
||||||
|
for (Route airline: filteredList){
|
||||||
|
filteredList.add(airline);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArrayList getFilteredData() {
|
||||||
|
return filteredList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBaseList(ArrayList<Route> arrayList) {
|
||||||
|
baseArray = new ArrayList<Route>();
|
||||||
|
for (Route route: arrayList){
|
||||||
|
baseArray.add(route);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void printFilter(){
|
||||||
|
for (Route route: filteredList){
|
||||||
|
System.out.println(route);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in new issue