/*This code was generated using the UMPLE modeling language!*/ package Elevator; import java.sql.Time; import java.sql.Date; import java.util.ArrayList; import java.util.Iterator; import Elevator.json.*; import Elevator.core.*; public class ElevatorFacade { // Singleton instance. private static ElevatorFacade theInstance; //System registry. ElevatorRegistry registry = ElevatorRegistry.getInstance(); /** * Dummy constructor */ private ElevatorFacade() { } /** * Returns the only instance of the Facade. * * @return */ public static ElevatorFacade getInstance() { if (theInstance == null) theInstance = new ElevatorFacade(); return theInstance; } public int constructBank(String aId, int aBuilding, ArrayList elevators) { return registry.add(new Bank(aId, (Building) registry.getValue(aBuilding), elevators)); } public JSONObject constructBankJSON(String aId, int aBuilding, ArrayList elevators) throws JSONException { Bank contextObj = new Bank(aId, (Building) registry.getValue(aBuilding), elevators); registry.add(contextObj); return contextObj.getAttributes(); } public boolean setIdInBank(int context, String aId) { return ((Bank) registry.getValue(context)).setId(aId); } public String getIdFromBank(int context) { return ((Bank) registry.getValue(context)).getId(); } public int getBuildingFromBank(int context) { return registry.getKey(((Bank) registry.getValue(context)).getBuilding()); } public JSONObject getBuildingFromBankJSON(int context) throws JSONException { return ((Bank) registry.getValue(context)).getBuilding().getAttributes(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getElevatorsFromBank(int context) { ArrayList listOfIDs = new ArrayList(); for (Elevator obj : ((Bank) registry.getValue(context)).getElevators()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getBankOnFloorsFromBank(int context) { ArrayList listOfIDs = new ArrayList(); for (BankOnFloor obj : ((Bank) registry.getValue(context)) .getBankOnFloors()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } public int addElevatorToBank(int context, String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) throws Exception { return registry.getKey(((Bank) registry.getValue(context)).addElevator(aId, aDirection, aMovingOrStopped, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor))); } public JSONObject addElevatorToBankJSON(int context, String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) throws JSONException, Exception { return ((Bank) registry.getValue(context)).addElevator(aId, aDirection, aMovingOrStopped, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor)).getAttributes(); } public int addElevatorToBankOnly(int context, int aElevator) throws Exception { return registry.getKey(((Bank) registry.getValue(context)) .addElevator((Elevator) registry.getValue(aElevator))); } public JSONObject addElevatorToBankOnlyJSON(int context, int aElevator) throws JSONException, Exception { return ((Bank) registry.getValue(context)).addElevator( (Elevator) registry.getValue(aElevator)).getAttributes(); } public int addBankOnFloorToBank(int context, Boolean aUpCall, Boolean aDownCall, int aBank, int aFloor) throws Exception { return registry.getKey(((Bank) registry.getValue(context)).addBankOnFloor( aUpCall, aDownCall, (Bank) registry.getValue(aBank), (Floor) registry .getValue(aFloor))); } public JSONObject addBankOnFloorToBankJSON(int context, Boolean aUpCall, Boolean aDownCall, int aBank, int aFloor) throws JSONException, Exception { return ((Bank) registry.getValue(context)).addBankOnFloor(aUpCall, aDownCall, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor)).getAttributes(); } public int addBankOnFloorToBankOnly(int context, int aBankOnFloor) throws Exception { return registry.getKey(((Bank) registry.getValue(context)) .addBankOnFloor((BankOnFloor) registry.getValue(aBankOnFloor))); } public JSONObject addBankOnFloorToBankOnlyJSON(int context, int aBankOnFloor) throws JSONException, Exception { return ((Bank) registry.getValue(context)).addBankOnFloor( (BankOnFloor) registry.getValue(aBankOnFloor)).getAttributes(); } public void setBuildingInBank(int context, int aBuilding) throws Exception { ((Bank) registry.getValue(context)).setBuilding((Building) registry .getValue(aBuilding)); } public void deleteBank(int context) { ((Bank) registry.getValue(context)).delete(); registry.removeObj(context); } public void deleteElevatorFromBank(int context, int aElevator) { ((Bank) registry.getValue(context)).deleteElevator((Elevator) registry .getValue(aElevator)); } public void deleteBankOnFloorFromBank(int context, int aBankOnFloor) { ((Bank) registry.getValue(context)) .deleteBankOnFloor((BankOnFloor) registry.getValue(aBankOnFloor)); } public JSONObject getAttributesOfBank(int context) throws JSONException { return ((Bank) registry.getValue(context)).getAttributes(); } public int constructBuilding(String aName, ArrayList floors, ArrayList banks) { return registry.add(new Building(aName, floors, banks)); } public JSONObject constructBuildingJSON(String aName, ArrayList floors, ArrayList banks) throws JSONException { Building contextObj = new Building(aName, floors, banks); registry.add(contextObj); return contextObj.getAttributes(); } public boolean setNameInBuilding(int context, String aName) { return ((Building) registry.getValue(context)).setName(aName); } public String getNameFromBuilding(int context) { return ((Building) registry.getValue(context)).getName(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getFloorsFromBuilding(int context) { ArrayList listOfIDs = new ArrayList(); for (Floor obj : ((Building) registry.getValue(context)).getFloors()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getBanksFromBuilding(int context) { ArrayList listOfIDs = new ArrayList(); for (Bank obj : ((Building) registry.getValue(context)).getBanks()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } public int addFloorToBuilding(int context, String aId, String aDoorToOpen, int aBuilding, ArrayList bankOnFloors) throws Exception { return registry.getKey(((Building) registry.getValue(context)).addFloor( aId, aDoorToOpen, (Building) registry.getValue(aBuilding), bankOnFloors)); } public JSONObject addFloorToBuildingJSON(int context, String aId, String aDoorToOpen, int aBuilding, ArrayList bankOnFloors) throws JSONException, Exception { return ((Building) registry.getValue(context)).addFloor(aId, aDoorToOpen, (Building) registry.getValue(aBuilding), bankOnFloors).getAttributes(); } public int addFloorToBuildingOnly(int context, int aFloor) throws Exception { return registry.getKey(((Building) registry.getValue(context)) .addFloor((Floor) registry.getValue(aFloor))); } public JSONObject addFloorToBuildingOnlyJSON(int context, int aFloor) throws JSONException, Exception { return ((Building) registry.getValue(context)).addFloor( (Floor) registry.getValue(aFloor)).getAttributes(); } public int addBankToBuilding(int context, String aId, int aBuilding, ArrayList elevators) throws Exception { return registry.getKey(((Building) registry.getValue(context)).addBank(aId, (Building) registry.getValue(aBuilding), elevators)); } public JSONObject addBankToBuildingJSON(int context, String aId, int aBuilding, ArrayList elevators) throws JSONException, Exception { return ((Building) registry.getValue(context)).addBank(aId, (Building) registry.getValue(aBuilding), elevators).getAttributes(); } public int addBankToBuildingOnly(int context, int aBank) throws Exception { return registry.getKey(((Building) registry.getValue(context)) .addBank((Bank) registry.getValue(aBank))); } public JSONObject addBankToBuildingOnlyJSON(int context, int aBank) throws JSONException, Exception { return ((Building) registry.getValue(context)).addBank( (Bank) registry.getValue(aBank)).getAttributes(); } public void deleteBuilding(int context) { ((Building) registry.getValue(context)).delete(); registry.removeObj(context); } public void deleteFloorFromBuilding(int context, int aFloor) { ((Building) registry.getValue(context)).deleteFloor((Floor) registry .getValue(aFloor)); } public void deleteBankFromBuilding(int context, int aBank) { ((Building) registry.getValue(context)).deleteBank((Bank) registry .getValue(aBank)); } public JSONObject getAttributesOfBuilding(int context) throws JSONException { return ((Building) registry.getValue(context)).getAttributes(); } public int constructBankOnFloor(Boolean aUpCall, Boolean aDownCall, int aBank, int aFloor) { return registry.add(new BankOnFloor(aUpCall, aDownCall, (Bank) registry .getValue(aBank), (Floor) registry.getValue(aFloor))); } public JSONObject constructBankOnFloorJSON(Boolean aUpCall, Boolean aDownCall, int aBank, int aFloor) throws JSONException { BankOnFloor contextObj = new BankOnFloor(aUpCall, aDownCall, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor)); registry.add(contextObj); return contextObj.getAttributes(); } public boolean setUpCallInBankOnFloor(int context, Boolean aUpCall) { return ((BankOnFloor) registry.getValue(context)).setUpCall(aUpCall); } public boolean setDownCallInBankOnFloor(int context, Boolean aDownCall) { return ((BankOnFloor) registry.getValue(context)).setDownCall(aDownCall); } public Boolean getUpCallFromBankOnFloor(int context) { return ((BankOnFloor) registry.getValue(context)).getUpCall(); } public Boolean getDownCallFromBankOnFloor(int context) { return ((BankOnFloor) registry.getValue(context)).getDownCall(); } public int getBankFromBankOnFloor(int context) { return registry .getKey(((BankOnFloor) registry.getValue(context)).getBank()); } public JSONObject getBankFromBankOnFloorJSON(int context) throws JSONException { return ((BankOnFloor) registry.getValue(context)).getBank().getAttributes(); } public int getFloorFromBankOnFloor(int context) { return registry.getKey(((BankOnFloor) registry.getValue(context)) .getFloor()); } public JSONObject getFloorFromBankOnFloorJSON(int context) throws JSONException { return ((BankOnFloor) registry.getValue(context)).getFloor() .getAttributes(); } public void setBankInBankOnFloor(int context, int aBank) throws Exception { ((BankOnFloor) registry.getValue(context)).setBank((Bank) registry .getValue(aBank)); } public void setFloorInBankOnFloor(int context, int aFloor) throws Exception { ((BankOnFloor) registry.getValue(context)).setFloor((Floor) registry .getValue(aFloor)); } public void deleteBankOnFloor(int context) { ((BankOnFloor) registry.getValue(context)).delete(); registry.removeObj(context); } public JSONObject getAttributesOfBankOnFloor(int context) throws JSONException { return ((BankOnFloor) registry.getValue(context)).getAttributes(); } public int constructElevator(String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) { return registry.add(new Elevator(aId, aDirection, aMovingOrStopped, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor))); } public JSONObject constructElevatorJSON(String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) throws JSONException { Elevator contextObj = new Elevator(aId, aDirection, aMovingOrStopped, (Bank) registry .getValue(aBank), (Floor) registry.getValue(aFloor)); registry.add(contextObj); return contextObj.getAttributes(); } public boolean setIdInElevator(int context, String aId) { return ((Elevator) registry.getValue(context)).setId(aId); } public boolean setDirectionInElevator(int context, String aDirection) { return ((Elevator) registry.getValue(context)).setDirection(aDirection); } public boolean setMovingOrStoppedInElevator(int context, String aMovingOrStopped) { return ((Elevator) registry.getValue(context)) .setMovingOrStopped(aMovingOrStopped); } public String getIdFromElevator(int context) { return ((Elevator) registry.getValue(context)).getId(); } public String getDirectionFromElevator(int context) { return ((Elevator) registry.getValue(context)).getDirection(); } public String getMovingOrStoppedFromElevator(int context) { return ((Elevator) registry.getValue(context)).getMovingOrStopped(); } public int getBankFromElevator(int context) { return registry.getKey(((Elevator) registry.getValue(context)).getBank()); } public JSONObject getBankFromElevatorJSON(int context) throws JSONException { return ((Elevator) registry.getValue(context)).getBank().getAttributes(); } public int getFloorFromElevator(int context) { return registry.getKey(((Elevator) registry.getValue(context)).getFloor()); } public JSONObject getFloorFromElevatorJSON(int context) throws JSONException { return ((Elevator) registry.getValue(context)).getFloor().getAttributes(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getFloorsFromElevator(int context) { ArrayList listOfIDs = new ArrayList(); for (Floor obj : ((Elevator) registry.getValue(context)).getFloors()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } public int addFloorToElevator(int context, String aId, String aDoorToOpen, int aBuilding, ArrayList bankOnFloors) throws Exception { return registry.getKey(((Elevator) registry.getValue(context)).addFloor( aId, aDoorToOpen, (Building) registry.getValue(aBuilding), bankOnFloors)); } public JSONObject addFloorToElevatorJSON(int context, String aId, String aDoorToOpen, int aBuilding, ArrayList bankOnFloors) throws JSONException, Exception { return ((Elevator) registry.getValue(context)).addFloor(aId, aDoorToOpen, (Building) registry.getValue(aBuilding), bankOnFloors).getAttributes(); } public int addFloorToElevatorOnly(int context, int aFloor) throws Exception { return registry.getKey(((Elevator) registry.getValue(context)) .addFloor((Floor) registry.getValue(aFloor))); } public JSONObject addFloorToElevatorOnlyJSON(int context, int aFloor) throws JSONException, Exception { return ((Elevator) registry.getValue(context)).addFloor( (Floor) registry.getValue(aFloor)).getAttributes(); } public void setBankInElevator(int context, int aBank) throws Exception { ((Elevator) registry.getValue(context)).setBank((Bank) registry .getValue(aBank)); } public void setFloorInElevator(int context, int aFloor) throws Exception { ((Elevator) registry.getValue(context)).setFloor((Floor) registry .getValue(aFloor)); } public void deleteElevator(int context) { ((Elevator) registry.getValue(context)).delete(); registry.removeObj(context); } public void deleteFloorFromElevator(int context, int aFloor) { ((Elevator) registry.getValue(context)).deleteFloor((Floor) registry .getValue(aFloor)); } public JSONObject getAttributesOfElevator(int context) throws JSONException { return ((Elevator) registry.getValue(context)).getAttributes(); } public int constructFloor(String aId, String aDoorToOpen, int aBuilding, ArrayList bankOnFloors) { return registry.add(new Floor(aId, aDoorToOpen, (Building) registry .getValue(aBuilding), bankOnFloors)); } public JSONObject constructFloorJSON(String aId, String aDoorToOpen, int aBuilding, ArrayList bankOnFloors) throws JSONException { Floor contextObj = new Floor(aId, aDoorToOpen, (Building) registry.getValue(aBuilding), bankOnFloors); registry.add(contextObj); return contextObj.getAttributes(); } public boolean setIdInFloor(int context, String aId) { return ((Floor) registry.getValue(context)).setId(aId); } public boolean setDoorToOpenInFloor(int context, String aDoorToOpen) { return ((Floor) registry.getValue(context)).setDoorToOpen(aDoorToOpen); } public String getIdFromFloor(int context) { return ((Floor) registry.getValue(context)).getId(); } public String getDoorToOpenFromFloor(int context) { return ((Floor) registry.getValue(context)).getDoorToOpen(); } public int getBuildingFromFloor(int context) { return registry.getKey(((Floor) registry.getValue(context)).getBuilding()); } public JSONObject getBuildingFromFloorJSON(int context) throws JSONException { return ((Floor) registry.getValue(context)).getBuilding().getAttributes(); } public int getOnSamelevelAsFromFloor(int context) { return registry.getKey(((Floor) registry.getValue(context)) .getOnSamelevelAs()); } public JSONObject getOnSamelevelAsFromFloorJSON(int context) throws JSONException { return ((Floor) registry.getValue(context)).getOnSamelevelAs() .getAttributes(); } public int getFloorFromFloor(int context) { return registry.getKey(((Floor) registry.getValue(context)).getFloor()); } public JSONObject getFloorFromFloorJSON(int context) throws JSONException { return ((Floor) registry.getValue(context)).getFloor().getAttributes(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getElevatorsOnThisFloorsFromFloor(int context) { ArrayList listOfIDs = new ArrayList(); for (Elevator obj : ((Floor) registry.getValue(context)) .getElevatorsOnThisFloors()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getBankOnFloorsFromFloor(int context) { ArrayList listOfIDs = new ArrayList(); for (BankOnFloor obj : ((Floor) registry.getValue(context)) .getBankOnFloors()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } /************ * Method returns an iterator to the list of id's of the elements involved in this list. ***************/ public Iterator getElevatorsFromFloor(int context) { ArrayList listOfIDs = new ArrayList(); for (Elevator obj : ((Floor) registry.getValue(context)).getElevators()) { listOfIDs.add(registry.getKey(obj)); } return listOfIDs.iterator(); } public int addElevatorsOnThisFloorToFloor(int context, String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) throws Exception { return registry.getKey(((Floor) registry.getValue(context)) .addElevatorsOnThisFloor(aId, aDirection, aMovingOrStopped, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor))); } public JSONObject addElevatorsOnThisFloorToFloorJSON(int context, String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) throws JSONException, Exception { return ((Floor) registry.getValue(context)).addElevatorsOnThisFloor(aId, aDirection, aMovingOrStopped, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor)).getAttributes(); } public int addElevatorsOnThisFloorToFloorOnly(int context, int aElevatorsOnThisFloor) throws Exception { return registry.getKey(((Floor) registry.getValue(context)) .addElevatorsOnThisFloor((Elevator) registry .getValue(aElevatorsOnThisFloor))); } public JSONObject addElevatorsOnThisFloorToFloorOnlyJSON(int context, int aElevatorsOnThisFloor) throws JSONException, Exception { return ((Floor) registry.getValue(context)).addElevatorsOnThisFloor( (Elevator) registry.getValue(aElevatorsOnThisFloor)).getAttributes(); } public int addBankOnFloorToFloor(int context, Boolean aUpCall, Boolean aDownCall, int aBank, int aFloor) throws Exception { return registry.getKey(((Floor) registry.getValue(context)).addBankOnFloor( aUpCall, aDownCall, (Bank) registry.getValue(aBank), (Floor) registry .getValue(aFloor))); } public JSONObject addBankOnFloorToFloorJSON(int context, Boolean aUpCall, Boolean aDownCall, int aBank, int aFloor) throws JSONException, Exception { return ((Floor) registry.getValue(context)).addBankOnFloor(aUpCall, aDownCall, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor)).getAttributes(); } public int addBankOnFloorToFloorOnly(int context, int aBankOnFloor) throws Exception { return registry.getKey(((Floor) registry.getValue(context)) .addBankOnFloor((BankOnFloor) registry.getValue(aBankOnFloor))); } public JSONObject addBankOnFloorToFloorOnlyJSON(int context, int aBankOnFloor) throws JSONException, Exception { return ((Floor) registry.getValue(context)).addBankOnFloor( (BankOnFloor) registry.getValue(aBankOnFloor)).getAttributes(); } public int addElevatorToFloor(int context, String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) throws Exception { return registry.getKey(((Floor) registry.getValue(context)).addElevator( aId, aDirection, aMovingOrStopped, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor))); } public JSONObject addElevatorToFloorJSON(int context, String aId, String aDirection, String aMovingOrStopped, int aBank, int aFloor) throws JSONException, Exception { return ((Floor) registry.getValue(context)).addElevator(aId, aDirection, aMovingOrStopped, (Bank) registry.getValue(aBank), (Floor) registry.getValue(aFloor)).getAttributes(); } public int addElevatorToFloorOnly(int context, int aElevator) throws Exception { return registry.getKey(((Floor) registry.getValue(context)) .addElevator((Elevator) registry.getValue(aElevator))); } public JSONObject addElevatorToFloorOnlyJSON(int context, int aElevator) throws JSONException, Exception { return ((Floor) registry.getValue(context)).addElevator( (Elevator) registry.getValue(aElevator)).getAttributes(); } public void setBuildingInFloor(int context, int aBuilding) throws Exception { ((Floor) registry.getValue(context)).setBuilding((Building) registry .getValue(aBuilding)); } public void setOnSamelevelAsInFloor(int context, int aOnSamelevelAs) throws Exception { ((Floor) registry.getValue(context)).setOnSamelevelAs((Floor) registry .getValue(aOnSamelevelAs)); } public void setFloorInFloor(int context, int aFloor) throws Exception { ((Floor) registry.getValue(context)).setFloor((Floor) registry .getValue(aFloor)); } public void deleteFloor(int context) { ((Floor) registry.getValue(context)).delete(); registry.removeObj(context); } public void deleteOnSamelevelAsFromFloor(int context, int aFloor) { ((Floor) registry.getValue(context)).deleteOnSamelevelAs((Floor) registry .getValue(aFloor)); } public void deleteFloorFromFloor(int context, int aFloor) { ((Floor) registry.getValue(context)).deleteFloor((Floor) registry .getValue(aFloor)); } public void deleteElevatorsOnThisFloorFromFloor(int context, int aElevator) { ((Floor) registry.getValue(context)) .deleteElevatorsOnThisFloor((Elevator) registry.getValue(aElevator)); } public void deleteBankOnFloorFromFloor(int context, int aBankOnFloor) { ((Floor) registry.getValue(context)) .deleteBankOnFloor((BankOnFloor) registry.getValue(aBankOnFloor)); } public void deleteElevatorFromFloor(int context, int aElevator) { ((Floor) registry.getValue(context)).deleteElevator((Elevator) registry .getValue(aElevator)); } public JSONObject getAttributesOfFloor(int context) throws JSONException { return ((Floor) registry.getValue(context)).getAttributes(); } }