Rabbit-R1/android (non root)/java/sources/androidx/lifecycle/SavedStateViewModelFactory.java

137 lines
10 KiB
Java
Raw Normal View History

2024-05-21 16:08:36 -05:00
package androidx.lifecycle;
import android.app.Application;
import android.os.Bundle;
import androidx.exifinterface.media.ExifInterface;
import androidx.lifecycle.ViewModelProvider;
import androidx.lifecycle.viewmodel.CreationExtras;
import androidx.savedstate.SavedStateRegistry;
import androidx.savedstate.SavedStateRegistryOwner;
import java.lang.reflect.Constructor;
import kotlin.Metadata;
import kotlin.jvm.internal.Intrinsics;
/* compiled from: SavedStateViewModelFactory.kt */
@Metadata(d1 = {"\u0000Z\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u000e\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0002\b\u0002\u0018\u00002\u00020\u00012\u00020\u0002B\u0007\b\u0016¢\u0006\u0002\u0010\u0003B\u0019\b\u0016\u0012\b\u0010\u0004\u001a\u0004\u0018\u00010\u0005\u0012\u0006\u0010\u0006\u001a\u00020\u0007¢\u0006\u0002\u0010\bB#\b\u0017\u0012\b\u0010\u0004\u001a\u0004\u0018\u00010\u0005\u0012\u0006\u0010\u0006\u001a\u00020\u0007\u0012\b\u0010\t\u001a\u0004\u0018\u00010\\u0006\u0002\u0010\u000bJ%\u0010\u0011\u001a\u0002H\u0012\"\b\b\u0000\u0010\u0012*\u00020\u00132\f\u0010\u0014\u001a\b\u0012\u0004\u0012\u0002H\u00120\u0015H\u0016¢\u0006\u0002\u0010\u0016J-\u0010\u0011\u001a\u0002H\u0012\"\b\b\u0000\u0010\u0012*\u00020\u00132\f\u0010\u0014\u001a\b\u0012\u0004\u0012\u0002H\u00120\u00152\u0006\u0010\u0017\u001a\u00020\u0018H\u0016¢\u0006\u0002\u0010\u0019J+\u0010\u0011\u001a\u0002H\u0012\"\b\b\u0000\u0010\u0012*\u00020\u00132\u0006\u0010\u001a\u001a\u00020\u001b2\f\u0010\u0014\u001a\b\u0012\u0004\u0012\u0002H\u00120\u0015¢\u0006\u0002\u0010\u001cJ\u0010\u0010\u001d\u001a\u00020\u001e2\u0006\u0010\u001f\u001a\u00020\u0013H\u0017R\u0010\u0010\u0004\u001a\u0004\u0018\u00010\u0005X\u0082\u000e¢\u0006\u0002\n\u0000R\u0010\u0010\t\u001a\u0004\u0018\u00010\nX\u0082\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\f\u001a\u00020\u0002X\u0082\u0004¢\u0006\u0002\n\u0000R\u0010\u0010\r\u001a\u0004\u0018\u00010\u000eX\u0082\u000e¢\u0006\u0002\n\u0000R\u0010\u0010\u000f\u001a\u0004\u0018\u00010\u0010X\u0082\u000e¢\u0006\u0002\n\u0000¨\u0006 "}, d2 = {"Landroidx/lifecycle/SavedStateViewModelFactory;", "Landroidx/lifecycle/ViewModelProvider$OnRequeryFactory;", "Landroidx/lifecycle/ViewModelProvider$Factory;", "()V", "application", "Landroid/app/Application;", "owner", "Landroidx/savedstate/SavedStateRegistryOwner;", "(Landroid/app/Application;Landroidx/savedstate/SavedStateRegistryOwner;)V", "defaultArgs", "Landroid/os/Bundle;", "(Landroid/app/Application;Landroidx/savedstate/SavedStateRegistryOwner;Landroid/os/Bundle;)V", "factory", "lifecycle", "Landroidx/lifecycle/Lifecycle;", "savedStateRegistry", "Landroidx/savedstate/SavedStateRegistry;", "create", ExifInterface.GPS_DIRECTION_TRUE, "Landroidx/lifecycle/ViewModel;", "modelClass", "Ljava/lang/Class;", "(Ljava/lang/Class;)Landroidx/lifecycle/ViewModel;", "extras", "Landroidx/lifecycle/viewmodel/CreationExtras;", "(Ljava/lang/Class;Landroidx/lifecycle/viewmodel/CreationExtras;)Landroidx/lifecycle/ViewModel;", "key", "", "(Ljava/lang/String;Ljava/lang/Class;)Landroidx/lifecycle/ViewModel;", "onRequery", "", "viewModel", "lifecycle-viewmodel-savedstate_release"}, k = 1, mv = {1, 8, 0}, xi = 48)
/* loaded from: classes2.dex */
public final class SavedStateViewModelFactory extends ViewModelProvider.OnRequeryFactory implements ViewModelProvider.Factory {
private Application application;
private Bundle defaultArgs;
private final ViewModelProvider.Factory factory;
private Lifecycle lifecycle;
private SavedStateRegistry savedStateRegistry;
public SavedStateViewModelFactory() {
this.factory = new ViewModelProvider.AndroidViewModelFactory();
}
/* JADX WARN: 'this' call moved to the top of the method (can break code semantics) */
public SavedStateViewModelFactory(Application application, SavedStateRegistryOwner owner) {
this(application, owner, null);
Intrinsics.checkNotNullParameter(owner, "owner");
}
public SavedStateViewModelFactory(Application application, SavedStateRegistryOwner owner, Bundle bundle) {
ViewModelProvider.AndroidViewModelFactory androidViewModelFactory;
Intrinsics.checkNotNullParameter(owner, "owner");
this.savedStateRegistry = owner.getSavedStateRegistry();
this.lifecycle = owner.getLifecycle();
this.defaultArgs = bundle;
this.application = application;
if (application != null) {
androidViewModelFactory = ViewModelProvider.AndroidViewModelFactory.INSTANCE.getInstance(application);
} else {
androidViewModelFactory = new ViewModelProvider.AndroidViewModelFactory();
}
this.factory = androidViewModelFactory;
}
@Override // androidx.lifecycle.ViewModelProvider.Factory
public <T extends ViewModel> T create(Class<T> modelClass, CreationExtras extras) {
Constructor findMatchingConstructor;
Intrinsics.checkNotNullParameter(modelClass, "modelClass");
Intrinsics.checkNotNullParameter(extras, "extras");
String str = (String) extras.get(ViewModelProvider.NewInstanceFactory.VIEW_MODEL_KEY);
if (str == null) {
throw new IllegalStateException("VIEW_MODEL_KEY must always be provided by ViewModelProvider");
}
if (extras.get(SavedStateHandleSupport.SAVED_STATE_REGISTRY_OWNER_KEY) == null || extras.get(SavedStateHandleSupport.VIEW_MODEL_STORE_OWNER_KEY) == null) {
if (this.lifecycle != null) {
return (T) create(str, modelClass);
}
throw new IllegalStateException("SAVED_STATE_REGISTRY_OWNER_KEY andVIEW_MODEL_STORE_OWNER_KEY must be provided in the creation extras tosuccessfully create a ViewModel.");
}
Application application = (Application) extras.get(ViewModelProvider.AndroidViewModelFactory.APPLICATION_KEY);
boolean isAssignableFrom = AndroidViewModel.class.isAssignableFrom(modelClass);
if (isAssignableFrom && application != null) {
findMatchingConstructor = SavedStateViewModelFactoryKt.findMatchingConstructor(modelClass, SavedStateViewModelFactoryKt.access$getANDROID_VIEWMODEL_SIGNATURE$p());
} else {
findMatchingConstructor = SavedStateViewModelFactoryKt.findMatchingConstructor(modelClass, SavedStateViewModelFactoryKt.access$getVIEWMODEL_SIGNATURE$p());
}
if (findMatchingConstructor == null) {
return (T) this.factory.create(modelClass, extras);
}
if (isAssignableFrom && application != null) {
return (T) SavedStateViewModelFactoryKt.newInstance(modelClass, findMatchingConstructor, application, SavedStateHandleSupport.createSavedStateHandle(extras));
}
return (T) SavedStateViewModelFactoryKt.newInstance(modelClass, findMatchingConstructor, SavedStateHandleSupport.createSavedStateHandle(extras));
}
public final <T extends ViewModel> T create(String key, Class<T> modelClass) {
Constructor findMatchingConstructor;
T t;
Application application;
Intrinsics.checkNotNullParameter(key, "key");
Intrinsics.checkNotNullParameter(modelClass, "modelClass");
Lifecycle lifecycle = this.lifecycle;
if (lifecycle == null) {
throw new UnsupportedOperationException("SavedStateViewModelFactory constructed with empty constructor supports only calls to create(modelClass: Class<T>, extras: CreationExtras).");
}
boolean isAssignableFrom = AndroidViewModel.class.isAssignableFrom(modelClass);
if (isAssignableFrom && this.application != null) {
findMatchingConstructor = SavedStateViewModelFactoryKt.findMatchingConstructor(modelClass, SavedStateViewModelFactoryKt.access$getANDROID_VIEWMODEL_SIGNATURE$p());
} else {
findMatchingConstructor = SavedStateViewModelFactoryKt.findMatchingConstructor(modelClass, SavedStateViewModelFactoryKt.access$getVIEWMODEL_SIGNATURE$p());
}
if (findMatchingConstructor == null) {
if (this.application != null) {
return (T) this.factory.create(modelClass);
}
return (T) ViewModelProvider.NewInstanceFactory.INSTANCE.getInstance().create(modelClass);
}
SavedStateRegistry savedStateRegistry = this.savedStateRegistry;
Intrinsics.checkNotNull(savedStateRegistry);
SavedStateHandleController create = LegacySavedStateHandleController.create(savedStateRegistry, lifecycle, key, this.defaultArgs);
if (isAssignableFrom && (application = this.application) != null) {
Intrinsics.checkNotNull(application);
t = (T) SavedStateViewModelFactoryKt.newInstance(modelClass, findMatchingConstructor, application, create.getHandle());
} else {
t = (T) SavedStateViewModelFactoryKt.newInstance(modelClass, findMatchingConstructor, create.getHandle());
}
t.setTagIfAbsent("androidx.lifecycle.savedstate.vm.tag", create);
return t;
}
@Override // androidx.lifecycle.ViewModelProvider.Factory
public <T extends ViewModel> T create(Class<T> modelClass) {
Intrinsics.checkNotNullParameter(modelClass, "modelClass");
String canonicalName = modelClass.getCanonicalName();
if (canonicalName == null) {
throw new IllegalArgumentException("Local and anonymous classes can not be ViewModels");
}
return (T) create(canonicalName, modelClass);
}
@Override // androidx.lifecycle.ViewModelProvider.OnRequeryFactory
public void onRequery(ViewModel viewModel) {
Intrinsics.checkNotNullParameter(viewModel, "viewModel");
if (this.lifecycle != null) {
SavedStateRegistry savedStateRegistry = this.savedStateRegistry;
Intrinsics.checkNotNull(savedStateRegistry);
Lifecycle lifecycle = this.lifecycle;
Intrinsics.checkNotNull(lifecycle);
LegacySavedStateHandleController.attachHandleIfNeeded(viewModel, savedStateRegistry, lifecycle);
}
}
}