96 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package androidx.lifecycle;
 | |
| 
 | |
| import android.os.Bundle;
 | |
| import androidx.lifecycle.Lifecycle;
 | |
| import androidx.lifecycle.ViewModelProvider;
 | |
| import androidx.lifecycle.viewmodel.CreationExtras;
 | |
| import androidx.savedstate.SavedStateRegistry;
 | |
| import androidx.savedstate.SavedStateRegistryOwner;
 | |
| import kotlin.Metadata;
 | |
| import kotlin.jvm.internal.Intrinsics;
 | |
| 
 | |
| /* compiled from: SavedStateHandleSupport.kt */
 | |
| @Metadata(d1 = {"\u0000F\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0002\b\u0003\u001a*\u0010\u0012\u001a\u00020\u00132\u0006\u0010\u0014\u001a\u00020\u00062\u0006\u0010\u0015\u001a\u00020\t2\u0006\u0010\u0016\u001a\u00020\u00042\b\u0010\u0017\u001a\u0004\u0018\u00010\u0002H\u0002\u001a\f\u0010\u0012\u001a\u00020\u0013*\u00020\u0018H\u0007\u001a\u001f\u0010\u0019\u001a\u00020\u001a\"\f\b\u0000\u0010\u001b*\u00020\u0006*\u00020\t*\u0002H\u001bH\u0007¢\u0006\u0002\u0010\u001c\"\u0016\u0010\u0000\u001a\b\u0012\u0004\u0012\u00020\u00020\u00018\u0006X\u0087\u0004¢\u0006\u0002\n\u0000\"\u000e\u0010\u0003\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000\"\u0016\u0010\u0005\u001a\b\u0012\u0004\u0012\u00020\u00060\u00018\u0006X\u0087\u0004¢\u0006\u0002\n\u0000\"\u000e\u0010\u0007\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000\"\u0016\u0010\b\u001a\b\u0012\u0004\u0012\u00020\t0\u00018\u0006X\u0087\u0004¢\u0006\u0002\n\u0000\"\u0018\u0010\n\u001a\u00020\u000b*\u00020\u00068@X\u0080\u0004¢\u0006\u0006\u001a\u0004\b\f\u0010\r\"\u0018\u0010\u000e\u001a\u00020\u000f*\u00020\t8@X\u0080\u0004¢\u0006\u0006\u001a\u0004\b\u0010\u0010\u0011¨\u0006\u001d"}, d2 = {"DEFAULT_ARGS_KEY", "Landroidx/lifecycle/viewmodel/CreationExtras$Key;", "Landroid/os/Bundle;", "SAVED_STATE_KEY", "", "SAVED_STATE_REGISTRY_OWNER_KEY", "Landroidx/savedstate/SavedStateRegistryOwner;", "VIEWMODEL_KEY", "VIEW_MODEL_STORE_OWNER_KEY", "Landroidx/lifecycle/ViewModelStoreOwner;", "savedStateHandlesProvider", "Landroidx/lifecycle/SavedStateHandlesProvider;", "getSavedStateHandlesProvider", "(Landroidx/savedstate/SavedStateRegistryOwner;)Landroidx/lifecycle/SavedStateHandlesProvider;", "savedStateHandlesVM", "Landroidx/lifecycle/SavedStateHandlesVM;", "getSavedStateHandlesVM", "(Landroidx/lifecycle/ViewModelStoreOwner;)Landroidx/lifecycle/SavedStateHandlesVM;", "createSavedStateHandle", "Landroidx/lifecycle/SavedStateHandle;", "savedStateRegistryOwner", "viewModelStoreOwner", "key", "defaultArgs", "Landroidx/lifecycle/viewmodel/CreationExtras;", "enableSavedStateHandles", "", "T", "(Landroidx/savedstate/SavedStateRegistryOwner;)V", "lifecycle-viewmodel-savedstate_release"}, k = 2, mv = {1, 8, 0}, xi = 48)
 | |
| /* loaded from: classes.dex */
 | |
| public final class SavedStateHandleSupport {
 | |
|     private static final String SAVED_STATE_KEY = "androidx.lifecycle.internal.SavedStateHandlesProvider";
 | |
|     private static final String VIEWMODEL_KEY = "androidx.lifecycle.internal.SavedStateHandlesVM";
 | |
|     public static final CreationExtras.Key<SavedStateRegistryOwner> SAVED_STATE_REGISTRY_OWNER_KEY = new CreationExtras.Key<SavedStateRegistryOwner>() { // from class: androidx.lifecycle.SavedStateHandleSupport$SAVED_STATE_REGISTRY_OWNER_KEY$1
 | |
|     };
 | |
|     public static final CreationExtras.Key<ViewModelStoreOwner> VIEW_MODEL_STORE_OWNER_KEY = new CreationExtras.Key<ViewModelStoreOwner>() { // from class: androidx.lifecycle.SavedStateHandleSupport$VIEW_MODEL_STORE_OWNER_KEY$1
 | |
|     };
 | |
|     public static final CreationExtras.Key<Bundle> DEFAULT_ARGS_KEY = new CreationExtras.Key<Bundle>() { // from class: androidx.lifecycle.SavedStateHandleSupport$DEFAULT_ARGS_KEY$1
 | |
|     };
 | |
| 
 | |
|     /* JADX WARN: Multi-variable type inference failed */
 | |
|     public static final <T extends SavedStateRegistryOwner & ViewModelStoreOwner> void enableSavedStateHandles(T t) {
 | |
|         Intrinsics.checkNotNullParameter(t, "<this>");
 | |
|         Lifecycle.State state = t.getLifecycle().getState();
 | |
|         if (state != Lifecycle.State.INITIALIZED && state != Lifecycle.State.CREATED) {
 | |
|             throw new IllegalArgumentException("Failed requirement.".toString());
 | |
|         }
 | |
|         if (t.getSavedStateRegistry().getSavedStateProvider(SAVED_STATE_KEY) == null) {
 | |
|             SavedStateHandlesProvider savedStateHandlesProvider = new SavedStateHandlesProvider(t.getSavedStateRegistry(), t);
 | |
|             t.getSavedStateRegistry().registerSavedStateProvider(SAVED_STATE_KEY, savedStateHandlesProvider);
 | |
|             t.getLifecycle().addObserver(new SavedStateHandleAttacher(savedStateHandlesProvider));
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     private static final SavedStateHandle createSavedStateHandle(SavedStateRegistryOwner savedStateRegistryOwner, ViewModelStoreOwner viewModelStoreOwner, String str, Bundle bundle) {
 | |
|         SavedStateHandlesProvider savedStateHandlesProvider = getSavedStateHandlesProvider(savedStateRegistryOwner);
 | |
|         SavedStateHandlesVM savedStateHandlesVM = getSavedStateHandlesVM(viewModelStoreOwner);
 | |
|         SavedStateHandle savedStateHandle = savedStateHandlesVM.getHandles().get(str);
 | |
|         if (savedStateHandle != null) {
 | |
|             return savedStateHandle;
 | |
|         }
 | |
|         SavedStateHandle createHandle = SavedStateHandle.INSTANCE.createHandle(savedStateHandlesProvider.consumeRestoredStateForKey(str), bundle);
 | |
|         savedStateHandlesVM.getHandles().put(str, createHandle);
 | |
|         return createHandle;
 | |
|     }
 | |
| 
 | |
|     public static final SavedStateHandle createSavedStateHandle(CreationExtras creationExtras) {
 | |
|         Intrinsics.checkNotNullParameter(creationExtras, "<this>");
 | |
|         SavedStateRegistryOwner savedStateRegistryOwner = (SavedStateRegistryOwner) creationExtras.get(SAVED_STATE_REGISTRY_OWNER_KEY);
 | |
|         if (savedStateRegistryOwner == null) {
 | |
|             throw new IllegalArgumentException("CreationExtras must have a value by `SAVED_STATE_REGISTRY_OWNER_KEY`");
 | |
|         }
 | |
|         ViewModelStoreOwner viewModelStoreOwner = (ViewModelStoreOwner) creationExtras.get(VIEW_MODEL_STORE_OWNER_KEY);
 | |
|         if (viewModelStoreOwner == null) {
 | |
|             throw new IllegalArgumentException("CreationExtras must have a value by `VIEW_MODEL_STORE_OWNER_KEY`");
 | |
|         }
 | |
|         Bundle bundle = (Bundle) creationExtras.get(DEFAULT_ARGS_KEY);
 | |
|         String str = (String) creationExtras.get(ViewModelProvider.NewInstanceFactory.VIEW_MODEL_KEY);
 | |
|         if (str == null) {
 | |
|             throw new IllegalArgumentException("CreationExtras must have a value by `VIEW_MODEL_KEY`");
 | |
|         }
 | |
|         return createSavedStateHandle(savedStateRegistryOwner, viewModelStoreOwner, str, bundle);
 | |
|     }
 | |
| 
 | |
|     public static final SavedStateHandlesVM getSavedStateHandlesVM(ViewModelStoreOwner viewModelStoreOwner) {
 | |
|         Intrinsics.checkNotNullParameter(viewModelStoreOwner, "<this>");
 | |
|         return (SavedStateHandlesVM) new ViewModelProvider(viewModelStoreOwner, new ViewModelProvider.Factory() { // from class: androidx.lifecycle.SavedStateHandleSupport$savedStateHandlesVM$1
 | |
|             @Override // androidx.lifecycle.ViewModelProvider.Factory
 | |
|             public /* synthetic */ ViewModel create(Class cls) {
 | |
|                 return ViewModelProvider.Factory.CC.$default$create(this, cls);
 | |
|             }
 | |
| 
 | |
|             @Override // androidx.lifecycle.ViewModelProvider.Factory
 | |
|             public <T extends ViewModel> T create(Class<T> modelClass, CreationExtras extras) {
 | |
|                 Intrinsics.checkNotNullParameter(modelClass, "modelClass");
 | |
|                 Intrinsics.checkNotNullParameter(extras, "extras");
 | |
|                 return new SavedStateHandlesVM();
 | |
|             }
 | |
|         }).get(VIEWMODEL_KEY, SavedStateHandlesVM.class);
 | |
|     }
 | |
| 
 | |
|     public static final SavedStateHandlesProvider getSavedStateHandlesProvider(SavedStateRegistryOwner savedStateRegistryOwner) {
 | |
|         Intrinsics.checkNotNullParameter(savedStateRegistryOwner, "<this>");
 | |
|         SavedStateRegistry.SavedStateProvider savedStateProvider = savedStateRegistryOwner.getSavedStateRegistry().getSavedStateProvider(SAVED_STATE_KEY);
 | |
|         SavedStateHandlesProvider savedStateHandlesProvider = savedStateProvider instanceof SavedStateHandlesProvider ? (SavedStateHandlesProvider) savedStateProvider : null;
 | |
|         if (savedStateHandlesProvider != null) {
 | |
|             return savedStateHandlesProvider;
 | |
|         }
 | |
|         throw new IllegalStateException("enableSavedStateHandles() wasn't called prior to createSavedStateHandle() call");
 | |
|     }
 | |
| }
 |