001package com.github.sarxos.webcam.ds.cgt; 002 003import org.slf4j.Logger; 004import org.slf4j.LoggerFactory; 005 006import com.github.sarxos.webcam.WebcamDevice; 007import com.github.sarxos.webcam.WebcamDriver; 008import com.github.sarxos.webcam.WebcamTask; 009 010 011public 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}