42 lines
1.1 KiB
Java
42 lines
1.1 KiB
Java
package Controller;
|
|
|
|
import Model.IVehicle;
|
|
import Repository.IRepository;
|
|
|
|
public class Controller {
|
|
private IRepository _repository;
|
|
|
|
public Controller(IRepository repository) {
|
|
this._repository = repository;
|
|
}
|
|
|
|
public void addVehicle(IVehicle vehicle) throws IllegalArgumentException {
|
|
_repository.add(vehicle);
|
|
}
|
|
|
|
public void removeVehicle(int index) throws IllegalArgumentException {
|
|
_repository.remove(index);
|
|
}
|
|
|
|
public IVehicle[] getAllVehicles() {
|
|
return _repository.getAll();
|
|
}
|
|
|
|
public IVehicle[] filterVehicles(String color){
|
|
IVehicle[] vehicles = _repository.getAll();
|
|
IVehicle[] filteredVehicles = new IVehicle[_repository.getSize()];
|
|
int index = 0;
|
|
for(IVehicle vehicle : vehicles) {
|
|
if(vehicle.getColor().equals(color)) {
|
|
filteredVehicles[index++] = vehicle;
|
|
}
|
|
}
|
|
IVehicle[] copy = new IVehicle[index];
|
|
for(int i = 0; i < index; i++) {
|
|
copy[i] = filteredVehicles[i];
|
|
}
|
|
return copy;
|
|
}
|
|
|
|
}
|