package de.uhilger.bildhelfer; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; public class Koordinator { private static final Logger logger = Logger.getLogger(Koordinator.class.getName()); public void verarbeiten(String[] args) { if(pruefen(args)) { if(args[0].equals("verkleinern")) { verkleinern(args); } else if(args[0].equals("liste")) { System.out.println("Bilder in einzelnem Ordner verarbeiten:"); System.out.println(" java -jar bildhelfer.jar verkleinern groesse qualitaet eingangsordner ausgabeordner"); System.out.println("Ganze Ordnerstruktur mit Bildern verarbeiten:"); System.out.println(" java -jar bildhelfer.jar stapel groesse qualitaet eingangsordner ausgabeordner"); System.out.println("groesse: Anzahl Bildpunkte entlang der laengsten Kante als Ganzzahl"); System.out.println("qualitaet: Prozentwert als Fliesskommazahl, z.B. 0.75 fuer 75%"); } else if(args[0].equals("stapel")) { stapelverarbeitung(args); } else { logger.info("Fehlendes oder ungueltiges Kommando. Gueltige Kommandos mit java -jar bildhelfer.jar liste"); } } } private void stapelverarbeitung(String[] args) { try { System.out.println(args[0] + " " + args[1] + " " + args[2] + " " + args[3] + " " + args[4]); OrdnerVerarbeiter ov = new OrdnerVerarbeiter(); Verkleinerer v = new Verkleinerer(); ov.verarbeiten(v, args[1], args[2], args[3], args[4]); } catch (IOException ex) { Logger.getLogger(Koordinator.class.getName()).log(Level.SEVERE, null, ex); } } private void verkleinern(String[] args) { if(args.length < 5) { logger.info("Es muessen 4 Parameter sein: groesse, qualitaet, eingangsordner, ausgabeordner"); } else { try { Verkleinerer v = new Verkleinerer(); v.verkleinern(args); } catch(Exception ex) { logger.log(Level.SEVERE, ex.getLocalizedMessage(), ex); } } } private boolean pruefen(String[] args) { if(args.length < 1) { logger.info("Kein Kommando angegeben, gueltige Kommandos mit java -jar bildhelfer.jar listcmds"); return false; } else return true; } }