src/de/uhilger/calypso/MeldeThread.java | ●●●●● patch | view | raw | blame | history | |
src/de/uhilger/calypso/handler/BasePlayer.java | ●●●●● patch | view | raw | blame | history | |
src/de/uhilger/calypso/handler/OMXPlayer.java | ●●●●● patch | view | raw | blame | history | |
src/de/uhilger/calypso/handler/PlayHandler.java | ●●●●● patch | view | raw | blame | history | |
src/de/uhilger/calypso/handler/VLCPlayer.java | ●●●●● patch | view | raw | blame | history |
src/de/uhilger/calypso/MeldeThread.java
@@ -70,6 +70,8 @@ } private void prozessBeendetMelden() { logger.log(Level.FINER, "Alle Lauscher werden ueber beendeten Abspielprozess verstaendigt.."); Iterator<ProzessLauscher> i = lauscher.iterator(); while(i.hasNext()) { ProzessLauscher l = i.next(); src/de/uhilger/calypso/handler/BasePlayer.java
New file @@ -0,0 +1,66 @@ package de.uhilger.calypso.handler; import de.uhilger.calypso.App; import static de.uhilger.calypso.handler.OMXPlayer.CMD_STOP; import java.io.IOException; import java.net.HttpURLConnection; import java.net.URL; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author ulli */ public abstract class BasePlayer implements Player { private static final Logger logger = Logger.getLogger(BasePlayer.class.getName()); @Override public void prozessBeendet(String meldeUrlStr) { logger.log(Level.INFO, "Abspielen beendet, sende Meldung an {0}.", new Object[]{meldeUrlStr}); try { HttpURLConnection conn = (HttpURLConnection) new URL(meldeUrlStr).openConnection(); conn.setRequestMethod("GET"); conn.connect(); int status = conn.getResponseCode(); logger.log(Level.INFO, "Abspielen beendet, Meldung an {0} mit Statuscode {1} gesendet.", new Object[]{meldeUrlStr, status}); /* fuer den Fall, dass ein Stopp-Signal den Player nicht erreicht oder dort nicht funktioniert, gibt es keine Moeglichkeit festzustellen, dass der Player noch spielt. Damit in einem solchen Fall der Zeiger auf den Abspielprozess nicht verloren geht, wird der Zeiger nicht auf null gesetzt. */ //App.setPlayerProcess(null); } catch(IOException ex) { logger.log(Level.INFO, ex.getMessage(), ex); } } @Override public String tilgen() { logger.log(Level.INFO,"Player tilgen."); String antwort; // = null; try { Process o = App.getPlayerProcess(); if(o == null) { antwort = "Es ist kein Player zum Beenden vorhanden."; //App.setPlayerProcess(null); } else { kommando(CMD_STOP); // setzt den Prozess der App auf null antwort = "Player gestoppt."; } } catch(Exception ex) { antwort = "Fehler: " + ex.getMessage(); } return antwort; } } src/de/uhilger/calypso/handler/OMXPlayer.java
@@ -27,8 +27,6 @@ import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.Writer; import java.net.HttpURLConnection; import java.net.URL; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -45,7 +43,7 @@ * * @author ulrich */ public class OMXPlayer implements Player , ProzessLauscher { public class OMXPlayer extends BasePlayer implements Player , ProzessLauscher { private static final Logger logger = Logger.getLogger(OMXPlayer.class.getName()); @@ -131,6 +129,7 @@ * * @return die Antwort des Servers */ /* @Override public String tilgen() { String antwort; // = null; @@ -149,7 +148,7 @@ } return antwort; } */ /** * Dem laufenden Abspielprozess ein Kommando uebermitteln @@ -202,6 +201,7 @@ /* ------ Implementierung ProzessLauscher ----------------- */ /* @Override public void prozessBeendet(String meldeUrlStr) { try { @@ -220,9 +220,10 @@ auf null gesetzt. */ //App.setPlayerProcess(null); /* } catch(IOException ex) { logger.log(Level.INFO, ex.getMessage(), ex); } } */ } src/de/uhilger/calypso/handler/PlayHandler.java
@@ -77,7 +77,9 @@ //FileUtils.deleteDirectory(new File(System.getProperty("omx.wd"), "omx-logs")); FileSystem fs = FileSystems.getDefault(); Path path = fs.getPath(System.getProperty("omx.wd"), "omx-logs"); if(path.toFile().exists()) { deleteDirectory(path); } //Files.delete(path); } catch (IOException ex) { logger.log(Level.SEVERE, null, ex); src/de/uhilger/calypso/handler/VLCPlayer.java
@@ -7,7 +7,6 @@ import de.uhilger.calypso.App; import de.uhilger.calypso.MeldeThread; import static de.uhilger.calypso.handler.OMXPlayer.BLANK; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; @@ -16,7 +15,7 @@ * * @author ulrich */ public class VLCPlayer implements Player { public class VLCPlayer extends BasePlayer implements Player { private static final Logger logger = Logger.getLogger(VLCPlayer.class.getName()); @@ -58,6 +57,7 @@ kommando.append(urlStr); } kommando.append(" vlc://quit"); logger.log(Level.FINE, "kommando: {0}", kommando.toString()); Process player_process = Runtime.getRuntime().exec(kommando.toString()); if(meldeUrlStr != null) { @@ -90,14 +90,5 @@ return antwort; } @Override public void prozessBeendet(String meldeUrlStr) { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public String tilgen() { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } }