.class Lretrofit2/Platform; .super Ljava/lang/Object; .source "Platform.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lretrofit2/Platform$Android; } .end annotation # static fields .field private static final PLATFORM:Lretrofit2/Platform; # instance fields .field private final hasJava8Types:Z # direct methods .method public static constructor ()V .locals 1 .line 1 invoke-static {}, Lretrofit2/Platform;->findPlatform()Lretrofit2/Platform; move-result-object v0 sput-object v0, Lretrofit2/Platform;->PLATFORM:Lretrofit2/Platform; return-void .end method .method public constructor (Z)V .locals 0 .line 1 invoke-direct {p0}, Ljava/lang/Object;->()V .line 2 iput-boolean p1, p0, Lretrofit2/Platform;->hasJava8Types:Z return-void .end method .method private static findPlatform()Lretrofit2/Platform; .locals 2 :try_start_0 const-string v0, "android.os.Build" .line 1 invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class; .line 2 new-instance v0, Lretrofit2/Platform$Android; invoke-direct {v0}, Lretrofit2/Platform$Android;->()V :try_end_0 .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_0 return-object v0 .line 3 :catch_0 new-instance v0, Lretrofit2/Platform; const/4 v1, 0x1 invoke-direct {v0, v1}, Lretrofit2/Platform;->(Z)V return-object v0 .end method .method public static get()Lretrofit2/Platform; .locals 1 .line 1 sget-object v0, Lretrofit2/Platform;->PLATFORM:Lretrofit2/Platform; return-object v0 .end method # virtual methods .method public defaultCallAdapterFactories(Ljava/util/concurrent/Executor;)Ljava/util/List; .locals 3 .param p1 # Ljava/util/concurrent/Executor; .annotation runtime Ljavax/annotation/Nullable; .end annotation .end param .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/concurrent/Executor;", ")", "Ljava/util/List<", "+", "Lretrofit2/CallAdapter$Factory;", ">;" } .end annotation .line 1 new-instance v0, Lretrofit2/DefaultCallAdapterFactory; invoke-direct {v0, p1}, Lretrofit2/DefaultCallAdapterFactory;->(Ljava/util/concurrent/Executor;)V .line 2 iget-boolean p1, p0, Lretrofit2/Platform;->hasJava8Types:Z if-eqz p1, :cond_0 const/4 p1, 0x2 new-array p1, p1, [Lretrofit2/CallAdapter$Factory; const/4 v1, 0x0 .line 3 sget-object v2, Lretrofit2/CompletableFutureCallAdapterFactory;->INSTANCE:Lretrofit2/CallAdapter$Factory; aput-object v2, p1, v1 const/4 v1, 0x1 aput-object v0, p1, v1 invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List; move-result-object p1 goto :goto_0 .line 4 :cond_0 invoke-static {v0}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List; move-result-object p1 :goto_0 return-object p1 .end method .method public defaultCallAdapterFactoriesSize()I .locals 1 .line 1 iget-boolean v0, p0, Lretrofit2/Platform;->hasJava8Types:Z if-eqz v0, :cond_0 const/4 v0, 0x2 goto :goto_0 :cond_0 const/4 v0, 0x1 :goto_0 return v0 .end method .method public defaultCallbackExecutor()Ljava/util/concurrent/Executor; .locals 1 .annotation runtime Ljavax/annotation/Nullable; .end annotation const/4 v0, 0x0 return-object v0 .end method .method public defaultConverterFactories()Ljava/util/List; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/List<", "+", "Lretrofit2/Converter$Factory;", ">;" } .end annotation .line 1 iget-boolean v0, p0, Lretrofit2/Platform;->hasJava8Types:Z if-eqz v0, :cond_0 .line 2 sget-object v0, Lretrofit2/OptionalConverterFactory;->INSTANCE:Lretrofit2/Converter$Factory; invoke-static {v0}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List; move-result-object v0 goto :goto_0 .line 3 :cond_0 invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List; move-result-object v0 :goto_0 return-object v0 .end method .method public defaultConverterFactoriesSize()I .locals 1 .line 1 iget-boolean v0, p0, Lretrofit2/Platform;->hasJava8Types:Z return v0 .end method .method public varargs invokeDefaultMethod(Ljava/lang/reflect/Method;Ljava/lang/Class;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; .locals 6 .param p4 # [Ljava/lang/Object; .annotation runtime Ljavax/annotation/Nullable; .end annotation .end param .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/reflect/Method;", "Ljava/lang/Class<", "*>;", "Ljava/lang/Object;", "[", "Ljava/lang/Object;", ")", "Ljava/lang/Object;" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/lang/Throwable; } .end annotation .annotation runtime Ljavax/annotation/Nullable; .end annotation .line 1 const-class v0, Ljava/lang/invoke/MethodHandles$Lookup; const/4 v1, 0x2 new-array v2, v1, [Ljava/lang/Class; const-class v3, Ljava/lang/Class; const/4 v4, 0x0 aput-object v3, v2, v4 sget-object v3, Ljava/lang/Integer;->TYPE:Ljava/lang/Class; const/4 v5, 0x1 aput-object v3, v2, v5 invoke-virtual {v0, v2}, Ljava/lang/Class;->getDeclaredConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; move-result-object v0 .line 2 invoke-virtual {v0, v5}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V new-array v1, v1, [Ljava/lang/Object; aput-object p2, v1, v4 const/4 v2, -0x1 .line 3 invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v2 aput-object v2, v1, v5 invoke-virtual {v0, v1}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/invoke/MethodHandles$Lookup; .line 4 invoke-virtual {v0, p1, p2}, Ljava/lang/invoke/MethodHandles$Lookup;->unreflectSpecial(Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; move-result-object p1 .line 5 invoke-virtual {p1, p3}, Ljava/lang/invoke/MethodHandle;->bindTo(Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; move-result-object p1 .line 6 invoke-virtual {p1, p4}, Ljava/lang/invoke/MethodHandle;->invokeWithArguments([Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 return-object p1 .end method .method public isDefaultMethod(Ljava/lang/reflect/Method;)Z .locals 1 .line 1 iget-boolean v0, p0, Lretrofit2/Platform;->hasJava8Types:Z if-eqz v0, :cond_0 invoke-virtual {p1}, Ljava/lang/reflect/Method;->isDefault()Z move-result p1 if-eqz p1, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method