package com.github.xsavikx.androidscreencast.api.injector;
import javax.inject.Inject;
import javax.inject.Singleton;
import java.io.File;
@Singleton
public class Injector {
private final ScreenCaptureRunnable screenCaptureRunnable;
private final Thread screenCaptureThread;
@Inject
public Injector(final ScreenCaptureRunnable screenCaptureRunnable) {
this.screenCaptureRunnable = screenCaptureRunnable;
this.screenCaptureThread = new Thread(screenCaptureRunnable, "Screen Capturer");
this.screenCaptureThread.setDaemon(true);
}
public void stop() {
screenCaptureRunnable.stop();
}
public void start() {
screenCaptureThread.start();
}
public void setScreenCaptureListener(final ScreenCaptureRunnable.ScreenCaptureListener listener) {
this.screenCaptureRunnable.setListener(listener);
}
public void startRecording(final File file) {
screenCaptureRunnable.startRecording(file);
}
public void stopRecording() {
screenCaptureRunnable.stopRecording();
}
public void toggleOrientation() {
screenCaptureRunnable.toggleOrientation();
}
}