GrpcUtil$2.smali
.class final Lio/grpc/internal/GrpcUtil$2;
.super Ljava/lang/Object;
.source "GrpcUtil.java"
# interfaces
.implements Lio/grpc/internal/SharedResourceHolder$Resource;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lio/grpc/internal/GrpcUtil;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lio/grpc/internal/SharedResourceHolder$Resource<",
"Ljava/util/concurrent/ScheduledExecutorService;",
">;"
}
.end annotation
# direct methods
.method constructor <init>()V
.registers 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public bridge synthetic close(Ljava/lang/Object;)V
.registers 2
.line 1
check-cast p1, Ljava/util/concurrent/ScheduledExecutorService;
invoke-virtual {p0, p1}, Lio/grpc/internal/GrpcUtil$2;->close(Ljava/util/concurrent/ScheduledExecutorService;)V
return-void
.end method
.method public close(Ljava/util/concurrent/ScheduledExecutorService;)V
.registers 2
.line 2
invoke-interface {p1}, Ljava/util/concurrent/ScheduledExecutorService;->shutdown()V
return-void
.end method
.method public bridge synthetic create()Ljava/lang/Object;
.registers 2
.line 1
invoke-virtual {p0}, Lio/grpc/internal/GrpcUtil$2;->create()Ljava/util/concurrent/ScheduledExecutorService;
move-result-object v0
return-object v0
.end method
.method public create()Ljava/util/concurrent/ScheduledExecutorService;
.registers 8
.line 2
new-instance v0, Lcom/google/common/util/concurrent/l;
invoke-direct {v0}, Lcom/google/common/util/concurrent/l;-><init>()V
const/4 v1, 0x1
.line 3
invoke-virtual {v0, v1}, Lcom/google/common/util/concurrent/l;->a(Z)Lcom/google/common/util/concurrent/l;
const-string v2, "grpc-timer-%d"
.line 4
invoke-virtual {v0, v2}, Lcom/google/common/util/concurrent/l;->a(Ljava/lang/String;)Lcom/google/common/util/concurrent/l;
.line 5
invoke-virtual {v0}, Lcom/google/common/util/concurrent/l;->a()Ljava/util/concurrent/ThreadFactory;
move-result-object v0
.line 6
invoke-static {v1, v0}, Ljava/util/concurrent/Executors;->newScheduledThreadPool(ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ScheduledExecutorService;
move-result-object v0
.line 7
:try_start_16
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
const-string v3, "setRemoveOnCancelPolicy"
new-array v4, v1, [Ljava/lang/Class;
sget-object v5, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
const/4 v6, 0x0
aput-object v5, v4, v6
invoke-virtual {v2, v3, v4}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v2
.line 8
new-array v3, v1, [Ljava/lang/Object;
invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v1
aput-object v1, v3, v6
invoke-virtual {v2, v0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
:try_end_32
.catch Ljava/lang/NoSuchMethodException; {:try_start_16 .. :try_end_32} :catch_3c
.catch Ljava/lang/RuntimeException; {:try_start_16 .. :try_end_32} :catch_3a
.catch Ljava/lang/Exception; {:try_start_16 .. :try_end_32} :catch_33
goto :goto_3c
:catch_33
move-exception v0
.line 9
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:catch_3a
move-exception v0
.line 10
throw v0
:catch_3c
:goto_3c
return-object v0
.end method