PredefinedRetryPolicies$SDKDefaultBackoffStrategy.smali
.class final Lcom/amazonaws/retry/PredefinedRetryPolicies$SDKDefaultBackoffStrategy;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/amazonaws/retry/RetryPolicy$BackoffStrategy;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/retry/PredefinedRetryPolicies;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "SDKDefaultBackoffStrategy"
.end annotation
# instance fields
.field public final b:Ljava/util/Random;
.field public final c:I
.field public final d:I
# direct methods
.method public constructor <init>()V
.registers 2
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
new-instance v0, Ljava/util/Random;
invoke-direct {v0}, Ljava/util/Random;-><init>()V
iput-object v0, p0, Lcom/amazonaws/retry/PredefinedRetryPolicies$SDKDefaultBackoffStrategy;->b:Ljava/util/Random;
const/16 v0, 0x64
.line 3
iput v0, p0, Lcom/amazonaws/retry/PredefinedRetryPolicies$SDKDefaultBackoffStrategy;->c:I
const/16 v0, 0x4e20
.line 4
iput v0, p0, Lcom/amazonaws/retry/PredefinedRetryPolicies$SDKDefaultBackoffStrategy;->d:I
return-void
.end method
# virtual methods
.method public final a(I)J
.registers 5
if-gtz p1, :cond_5
const-wide/16 v0, 0x0
return-wide v0
:cond_5
iget-object v0, p0, Lcom/amazonaws/retry/PredefinedRetryPolicies$SDKDefaultBackoffStrategy;->b:Ljava/util/Random;
iget v1, p0, Lcom/amazonaws/retry/PredefinedRetryPolicies$SDKDefaultBackoffStrategy;->d:I
const/4 v2, 0x1
shl-int p1, v2, p1
iget v2, p0, Lcom/amazonaws/retry/PredefinedRetryPolicies$SDKDefaultBackoffStrategy;->c:I
mul-int p1, p1, v2
invoke-static {v1, p1}, Ljava/lang/Math;->min(II)I
move-result p1
invoke-virtual {v0, p1}, Ljava/util/Random;->nextInt(I)I
move-result p1
int-to-long v0, p1
return-wide v0
.end method