Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package defaultpackage;
- import cashregister.CashRegisterFactory;
- import cashregister.ICashRegister;
- import cashregister.IObserver;
- import cashregister.ui.CashRegisterGUI;
- import cashregister.ui.ICashRegisterUI;
- import domain.product.ExtendedProduct;
- import domain.product.JointProduct;
- import domain.product.ProductCategory;
- import domain.product.SimpleProduct;
- import managementserver.IManagementServer;
- import managementserver.ManagementServer;
- import managementtools.ManagementServerViewer;
- import rbvs.product.IProduct;
- import warehouse.IWarehouse;
- import warehouse.IWarehouseListener;
- import warehouse.Warehouse;
- import warehouse.ui.WarehouseManager;
- public class RestaurantManagement {
- public static void main(String[] args) {
- SimpleProduct sprod1 = new SimpleProduct("Chicken wings", 12f);
- SimpleProduct sprod2 = new SimpleProduct("Spareribs", 20f);
- SimpleProduct sprod3 = new SimpleProduct("Burger", 15f);
- SimpleProduct sprod4 = new SimpleProduct("Potato", 6f);
- ExtendedProduct eprod1 = new ExtendedProduct("Beer", 4.0f);
- ExtendedProduct eprod2 = new ExtendedProduct("Cola", 2.0f);
- JointProduct jprod1 = new JointProduct("Menü1", 22f);
- JointProduct jprod2 = new JointProduct("Menü2", 37f);
- jprod1.addProduct(sprod1);
- jprod1.addProduct(sprod4);
- jprod1.addProduct(sprod3);
- jprod1.addProduct(sprod2);
- jprod2.addProduct(eprod2);
- jprod2.addProduct(eprod1);
- jprod1.setCategory(ProductCategory.FOOD);
- jprod2.setCategory(ProductCategory.BEVERAGE);
- // Create ManagementServer and Warehouse
- IManagementServer mngServer = ManagementServer.GET_INSTANCE();
- IWarehouse warehouse = Warehouse.GET_INSTANCE();
- // TODO: register mngServer as listener at the warehouse
- Warehouse ware = (Warehouse) warehouse;
- ware.registerListener((IWarehouseListener) mngServer);
- // TODO: add Products to warehouse
- ware.addProduct((IProduct) jprod1);
- ware.addProduct((IProduct) jprod2);
- // TODO: create CashRegister and register it as an observer at the mngServer
- ICashRegister cashRegister = CashRegisterFactory.createCashRegister();
- mngServer.addCashRegister(cashRegister);
- ((ManagementServer) mngServer).register((IObserver)cashRegister);
- // TODO: Create GUI for CashRegister
- ICashRegisterUI gui = new CashRegisterGUI(cashRegister);
- new WarehouseManager(warehouse);
- new ManagementServerViewer(ManagementServer.GET_INSTANCE());
- // TODO: register CashRegisterGUI as an UI at the previously created cashRegister
- cashRegister.registerCashRegisterUI(gui);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment