diff --git a/src/de/itstall/Lager.java b/src/de/itstall/Lager.java index 7115f9d05fc77e43155810bb676814bf74895515..3382b2777cfa302885178b52928eab756864ad8d 100644 --- a/src/de/itstall/Lager.java +++ b/src/de/itstall/Lager.java @@ -22,9 +22,9 @@ public class Lager { * * @param lagerplaetze : int : Anzahl der Etagen pro Regal */ - void Lager(int lagerplaetze) { + public Lager(int lagerplaetze) { this.regalLagerplaetze = lagerplaetze; - this.addRegal(this.regalLagerplaetze); + this.addRegal(); } /** @@ -38,30 +38,37 @@ public class Lager { /** * Fuegt dem Lager ein Regal hinzu - * - * @param lagerplaetze : int : Anzahl der Etagen */ - public void addRegal(int lagerplaetze) { - this.lagerListe.add(new Regal(lagerplaetze)); + public void addRegal() { + this.lagerListe.add(new Regal()); } /** * Sucht auf den Lagerplaetzen nach einem Objekt und gibt den Lagerplatz zurueck * - * @param o : Object : Das zu suchende Object + * //@param o : Object : Das zu suchende Object * @return Object : Lagerplatz */ - public Karton<?> finden(Karton<?> o) { + public Object finden(String bezeichnung) { for(Regal regal : lagerListe) { - for(Lager.Regal.Lagerplatz lagerplatz : regal.lagerplaetzListe) { - for(Object o1 : lagerplatz.lagerWarenListe) { - System.out.println(o1.toString()); + for(Karton<?> lagerPlatz : regal.lagerplaetzListe) { + if (lagerPlatz.getBezeichnung().equals(bezeichnung)) { + return lagerPlatz.getObjekt(); } + System.out.println(lagerPlatz.toString()); } } return null; } + public void einlagern(Karton<?> karton) { + for(Regal regal : lagerListe) { + if(regal.lagerplaetzListe.size() < this.regalLagerplaetze) { + regal.lagerplaetzListe.add(karton); + } + } + } + /** * Klasse zur Verwaltung der Regale * Ein Regal kan max. fünf Lagerplaetze besitzen @@ -71,54 +78,17 @@ public class Lager { /** * Liste der Lagerplaetze in dem aktuellen Regal */ - ArrayList<Lagerplatz> lagerplaetzListe = new ArrayList<>(); - - /** - * Anzahl der freien Lagerplaetze in diesem Regal - */ - private int lagerplaetze; - - /** - * Konstruktor - * - * @param lagerplaetze : int : Anzahl der Lagerplaetze - * @return boolean : Erfolgreich? - */ - public Regal(int lagerplaetze) { - if (lagerplaetze > 0 && lagerplaetze <= 5) { - this.setLagerplaetze(lagerplaetze); - } - } - - /** - * Gibt die Anzahl der Lagerplaetze zurueck - * - * @return int : Anzahl der Lagerplaetze - */ - public int getLagerplaetze() { - return this.lagerplaetze; - } - - /** - * Setzt die Lagerplaetze auf die uebergebene int Zahl und prueft ob die Zahl gueltig ist - * <p> - * Gueltigkeitsbereich 1-5 - * - * @param lagerplaetze : int : Anzahl der Lagerplaetze - */ - private void setLagerplaetze(int lagerplaetze) { - this.lagerplaetze = lagerplaetze; - } + ArrayList<Karton> lagerplaetzListe = new ArrayList<>(); /** * Wenn im aktuellen Regal noch ein Lagerplatz frei ist, wird ein Platz abgezogen. * Ansonten wird ein neues Regal angebaut. */ - public void einlagern() { - if (this.lagerplaetze > 0) { - this.lagerplaetze--; + public void einlagern(Karton<?> karton) { + if(lagerplaetzListe.size() < Lager.this.regalLagerplaetze) { + lagerplaetzListe.add(karton); } else { - Lager.this.addRegal(Lager.this.getRegalLagerplaetze()); + Lager.this.addRegal(); } } @@ -126,45 +96,11 @@ public class Lager { * Gibt einen Lagerplatz wieder frei */ public void entnehmen() { - this.lagerplaetze++; + // TODO: Muss noch erstellt werden } - /** - * Klasse zur Verwaltung der Lagerplaetze - * Ein Regal kann max. fuenf Lagerplaetze haben. - */ - public class Lagerplatz { - - /** - * Liste der Waren im aktuellen lagerplatz - */ - ArrayList<Object> lagerWarenListe = new ArrayList<>(); - - /** - * Objekt auf einem Lagerplatz einlagern - * - * @param o : Object : Das einzulagernde Object - */ - public void einlagern(Karton<?> o) { - if (Lager.this.getRegalLagerplaetze() > Lager.Regal.this.getLagerplaetze()) { - this.lagerWarenListe.add(o); - Regal.this.einlagern(); - } - } - - /** - * Objekt einem Lagerplatz entnehmen und den Platz wieder freigeben - * <p> - * -> Kontrollieren auf welchem Lagerplatz sich das Objekt befindet - * - * @param o : Object : Das zu entnehmende Object - * @return boolean : Erfolgreich entnommen? - */ - public boolean entnehmen(Karton<?> o) { - - return false; - } - + public void suchen(String strSuche) { + // TODO: Muss noch erstellt werden } } diff --git a/src/de/itstall/Main.java b/src/de/itstall/Main.java index dccfc5921083010ab66e4144e51568f3e07564fc..6bbaa759985174b2bb8190b018ad560aa1ba4cb0 100644 --- a/src/de/itstall/Main.java +++ b/src/de/itstall/Main.java @@ -2,6 +2,8 @@ package de.itstall; import de.itstall.Lager.Regal; +import java.util.ArrayList; + public class Main { /** @@ -18,15 +20,23 @@ public class Main { Karton<?> karton = new Karton<>(); karton.setBezeichnung("Test"); - Lager lager = new Lager(); + Lager lager = new Lager(5); + + lager.einlagern(karton); + + System.out.println("Gibt's schon was?"); + lager.finden("Test"); + + /*for(Regal regal : lager.lagerListe) {*/ +/**/ + /*}*/ - for(Regal regal : lager.lagerListe) { + //Lager.Regal lagerListe = lager.lagerListe; - } + //ArrayList<Regal> lagerPlaetze = lager.lagerListe; - Regal lagerListe = lager.lagerListe; - Lager.Regal.Lagerplatz lagerplatz = lagerListe.new Lagerplatz(); + //Lager.Regal.Lagerplatz lagerplatz = lagerListe.new Lagerplatz(); - lagerplatz.einlagern(karton); + //lagerplatz.einlagern(karton); } }