/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package io.neocdtv.simpleplayer.worker; import io.neocdtv.simpleplayer.player.Player; import io.neocdtv.simpleplayer.player.PlayerFactory; import io.neocdtv.simpleplayer.ui.ButtonsFactory; import io.neocdtv.simpleplayer.player.PlayerState; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author xix */ public class PauseWorker extends AbstractWorker { @Override protected Void doInBackground() throws Exception { ButtonsFactory.enableButtons(false); final PlayerState playerState = PlayerState.getInstance(); final Player currentPlayer = PlayerFactory.getCurrentPlayer(); if (playerState.isInStatePlaying()) { playerState.setToStatePausing(); getLogger().log(Level.INFO, "pausing..."); currentPlayer.pause(); } else { if (playerState.isInStagePausing()) { playerState.setToStatePlaying(); getLogger().log(Level.INFO, "playing..."); currentPlayer.play(); } } return null; } @Override protected void additionalAction() { ButtonsFactory.enableButtons(true); } @Override protected Logger getLogger() { return Logger.getLogger(PauseWorker.class.getName()); } }