- 28,932 files - Full Java source code - Smali files - Resources Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
105 lines
3.4 KiB
Java
105 lines
3.4 KiB
Java
package androidx.biometric;
|
|
|
|
import android.os.CancellationSignal;
|
|
import android.util.Log;
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.Nullable;
|
|
import androidx.annotation.RequiresApi;
|
|
import androidx.annotation.VisibleForTesting;
|
|
|
|
/* loaded from: classes.dex */
|
|
class CancellationSignalProvider {
|
|
private static final String TAG = "CancelSignalProvider";
|
|
|
|
@Nullable
|
|
private CancellationSignal mBiometricCancellationSignal;
|
|
|
|
@Nullable
|
|
private androidx.core.os.CancellationSignal mFingerprintCancellationSignal;
|
|
private final Injector mInjector;
|
|
|
|
@VisibleForTesting
|
|
public interface Injector {
|
|
@NonNull
|
|
@RequiresApi(16)
|
|
CancellationSignal getBiometricCancellationSignal();
|
|
|
|
@NonNull
|
|
androidx.core.os.CancellationSignal getFingerprintCancellationSignal();
|
|
}
|
|
|
|
public CancellationSignalProvider() {
|
|
this.mInjector = new Injector() { // from class: androidx.biometric.CancellationSignalProvider.1
|
|
@Override // androidx.biometric.CancellationSignalProvider.Injector
|
|
@NonNull
|
|
@RequiresApi(16)
|
|
public CancellationSignal getBiometricCancellationSignal() {
|
|
return Api16Impl.create();
|
|
}
|
|
|
|
@Override // androidx.biometric.CancellationSignalProvider.Injector
|
|
@NonNull
|
|
public androidx.core.os.CancellationSignal getFingerprintCancellationSignal() {
|
|
return new androidx.core.os.CancellationSignal();
|
|
}
|
|
};
|
|
}
|
|
|
|
@VisibleForTesting
|
|
public CancellationSignalProvider(Injector injector) {
|
|
this.mInjector = injector;
|
|
}
|
|
|
|
@NonNull
|
|
@RequiresApi(16)
|
|
public CancellationSignal getBiometricCancellationSignal() {
|
|
if (this.mBiometricCancellationSignal == null) {
|
|
this.mBiometricCancellationSignal = this.mInjector.getBiometricCancellationSignal();
|
|
}
|
|
return this.mBiometricCancellationSignal;
|
|
}
|
|
|
|
@NonNull
|
|
public androidx.core.os.CancellationSignal getFingerprintCancellationSignal() {
|
|
if (this.mFingerprintCancellationSignal == null) {
|
|
this.mFingerprintCancellationSignal = this.mInjector.getFingerprintCancellationSignal();
|
|
}
|
|
return this.mFingerprintCancellationSignal;
|
|
}
|
|
|
|
public void cancel() {
|
|
CancellationSignal cancellationSignal = this.mBiometricCancellationSignal;
|
|
if (cancellationSignal != null) {
|
|
try {
|
|
Api16Impl.cancel(cancellationSignal);
|
|
} catch (NullPointerException e) {
|
|
Log.e(TAG, "Got NPE while canceling biometric authentication.", e);
|
|
}
|
|
this.mBiometricCancellationSignal = null;
|
|
}
|
|
androidx.core.os.CancellationSignal cancellationSignal2 = this.mFingerprintCancellationSignal;
|
|
if (cancellationSignal2 != null) {
|
|
try {
|
|
cancellationSignal2.cancel();
|
|
} catch (NullPointerException e2) {
|
|
Log.e(TAG, "Got NPE while canceling fingerprint authentication.", e2);
|
|
}
|
|
this.mFingerprintCancellationSignal = null;
|
|
}
|
|
}
|
|
|
|
@RequiresApi(16)
|
|
public static class Api16Impl {
|
|
private Api16Impl() {
|
|
}
|
|
|
|
public static CancellationSignal create() {
|
|
return new CancellationSignal();
|
|
}
|
|
|
|
public static void cancel(CancellationSignal cancellationSignal) {
|
|
cancellationSignal.cancel();
|
|
}
|
|
}
|
|
}
|