001 package com.github.sarxos.webcam.ds.cgt;
002
003 import org.slf4j.Logger;
004 import org.slf4j.LoggerFactory;
005
006 import com.github.sarxos.webcam.WebcamDevice;
007 import com.github.sarxos.webcam.WebcamDriver;
008 import com.github.sarxos.webcam.WebcamTask;
009
010
011 public class WebcamCloseTask extends WebcamTask {
012
013 private static final Logger LOG = LoggerFactory.getLogger(WebcamCloseTask.class);
014
015 public WebcamCloseTask(WebcamDriver driver, WebcamDevice device) {
016 super(driver, device);
017 }
018
019 public void close() throws InterruptedException {
020 process();
021 }
022
023 @Override
024 protected void handle() {
025
026 WebcamDevice device = getDevice();
027 if (!device.isOpen()) {
028 return;
029 }
030
031 LOG.info("Closing {}", device.getName());
032
033 device.close();
034 }
035 }