Initial commit
This commit is contained in:
34
sources/androidx/lifecycle/ViewModelProvider.java
Normal file
34
sources/androidx/lifecycle/ViewModelProvider.java
Normal file
@@ -0,0 +1,34 @@
|
||||
package androidx.lifecycle;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class ViewModelProvider {
|
||||
private final Factory a;
|
||||
private final ViewModelStore b;
|
||||
|
||||
public interface Factory {
|
||||
<T extends ViewModel> T a(Class<T> cls);
|
||||
}
|
||||
|
||||
public ViewModelProvider(ViewModelStore viewModelStore, Factory factory) {
|
||||
this.a = factory;
|
||||
this.b = viewModelStore;
|
||||
}
|
||||
|
||||
public <T extends ViewModel> T a(Class<T> cls) {
|
||||
String canonicalName = cls.getCanonicalName();
|
||||
if (canonicalName == null) {
|
||||
throw new IllegalArgumentException("Local and anonymous classes can not be ViewModels");
|
||||
}
|
||||
return (T) a("androidx.lifecycle.ViewModelProvider.DefaultKey:" + canonicalName, cls);
|
||||
}
|
||||
|
||||
public <T extends ViewModel> T a(String str, Class<T> cls) {
|
||||
T t = (T) this.b.a(str);
|
||||
if (cls.isInstance(t)) {
|
||||
return t;
|
||||
}
|
||||
T t2 = (T) this.a.a(cls);
|
||||
this.b.a(str, t2);
|
||||
return t2;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user