DateTimeZone.smali
.class public abstract Lorg/joda/time/DateTimeZone;
.super Ljava/lang/Object;
.source "DateTimeZone.java"
# interfaces
.implements Ljava/io/Serializable;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lorg/joda/time/DateTimeZone$LazyInit;,
Lorg/joda/time/DateTimeZone$Stub;
}
.end annotation
# static fields
.field private static final MAX_MILLIS:I = 0x5265bff
.field public static final UTC:Lorg/joda/time/DateTimeZone;
.field private static final cDefault:Ljava/util/concurrent/atomic/AtomicReference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReference<",
"Lorg/joda/time/DateTimeZone;",
">;"
}
.end annotation
.end field
.field private static final cNameProvider:Ljava/util/concurrent/atomic/AtomicReference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReference<",
"Lorg/joda/time/tz/NameProvider;",
">;"
}
.end annotation
.end field
.field private static final cProvider:Ljava/util/concurrent/atomic/AtomicReference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReference<",
"Lorg/joda/time/tz/Provider;",
">;"
}
.end annotation
.end field
.field private static final serialVersionUID:J = 0x4cf893d49479892aL
# instance fields
.field private final iID:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 108
sget-object v0, Lorg/joda/time/UTCDateTimeZone;->INSTANCE:Lorg/joda/time/DateTimeZone;
sput-object v0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
.line 116
new-instance v0, Ljava/util/concurrent/atomic/AtomicReference;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicReference;-><init>()V
sput-object v0, Lorg/joda/time/DateTimeZone;->cProvider:Ljava/util/concurrent/atomic/AtomicReference;
.line 122
new-instance v0, Ljava/util/concurrent/atomic/AtomicReference;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicReference;-><init>()V
sput-object v0, Lorg/joda/time/DateTimeZone;->cNameProvider:Ljava/util/concurrent/atomic/AtomicReference;
.line 128
new-instance v0, Ljava/util/concurrent/atomic/AtomicReference;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicReference;-><init>()V
sput-object v0, Lorg/joda/time/DateTimeZone;->cDefault:Ljava/util/concurrent/atomic/AtomicReference;
return-void
.end method
.method protected constructor <init>(Ljava/lang/String;)V
.registers 3
.line 687
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_8
.line 691
iput-object p1, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
return-void
.line 689
:cond_8
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Id must not be null"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method private static convertToAsciiNumber(Ljava/lang/String;)Ljava/lang/String;
.registers 4
.line 384
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0, p0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
const/4 p0, 0x0
.line 385
:goto_6
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v1
if-ge p0, v1, :cond_21
.line 386
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->charAt(I)C
move-result v1
const/16 v2, 0xa
.line 387
invoke-static {v1, v2}, Ljava/lang/Character;->digit(CI)I
move-result v1
if-ltz v1, :cond_1e
add-int/lit8 v1, v1, 0x30
int-to-char v1, v1
.line 389
invoke-virtual {v0, p0, v1}, Ljava/lang/StringBuilder;->setCharAt(IC)V
:cond_1e
add-int/lit8 p0, p0, 0x1
goto :goto_6
.line 392
:cond_21
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method private static fixedOffsetZone(Ljava/lang/String;I)Lorg/joda/time/DateTimeZone;
.registers 4
if-nez p1, :cond_5
.line 405
sget-object p0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
return-object p0
.line 407
:cond_5
new-instance v0, Lorg/joda/time/tz/FixedDateTimeZone;
const/4 v1, 0x0
invoke-direct {v0, p0, v1, p1, p1}, Lorg/joda/time/tz/FixedDateTimeZone;-><init>(Ljava/lang/String;Ljava/lang/String;II)V
return-object v0
.end method
.method public static forID(Ljava/lang/String;)Lorg/joda/time/DateTimeZone;
.registers 6
.annotation runtime Lorg/joda/convert/FromString;
.end annotation
if-nez p0, :cond_7
.line 211
invoke-static {}, Lorg/joda/time/DateTimeZone;->getDefault()Lorg/joda/time/DateTimeZone;
move-result-object p0
return-object p0
:cond_7
const-string v0, "UTC"
.line 213
invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_12
.line 214
sget-object p0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
return-object p0
.line 216
:cond_12
invoke-static {}, Lorg/joda/time/DateTimeZone;->getProvider()Lorg/joda/time/tz/Provider;
move-result-object v0
invoke-interface {v0, p0}, Lorg/joda/time/tz/Provider;->getZone(Ljava/lang/String;)Lorg/joda/time/DateTimeZone;
move-result-object v0
if-eqz v0, :cond_1d
return-object v0
:cond_1d
const-string v0, "+"
.line 220
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_4a
const-string v0, "-"
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_2e
goto :goto_4a
.line 229
:cond_2e
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "The datetime zone id \'"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, "\' is not recognised"
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.line 221
:cond_4a
:goto_4a
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->parseOffset(Ljava/lang/String;)I
move-result p0
int-to-long v0, p0
const-wide/16 v2, 0x0
cmp-long v4, v0, v2
if-nez v4, :cond_58
.line 223
sget-object p0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
return-object p0
.line 225
:cond_58
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->printOffset(I)Ljava/lang/String;
move-result-object v0
.line 226
invoke-static {v0, p0}, Lorg/joda/time/DateTimeZone;->fixedOffsetZone(Ljava/lang/String;I)Lorg/joda/time/DateTimeZone;
move-result-object p0
return-object p0
.end method
.method public static forOffsetHours(I)Lorg/joda/time/DateTimeZone;
.registers 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;
}
.end annotation
const/4 v0, 0x0
.line 243
invoke-static {p0, v0}, Lorg/joda/time/DateTimeZone;->forOffsetHoursMinutes(II)Lorg/joda/time/DateTimeZone;
move-result-object p0
return-object p0
.end method
.method public static forOffsetHoursMinutes(II)Lorg/joda/time/DateTimeZone;
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;
}
.end annotation
if-nez p0, :cond_7
if-nez p1, :cond_7
.line 279
sget-object p0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
return-object p0
:cond_7
const/16 v0, -0x17
if-lt p0, v0, :cond_69
const/16 v0, 0x17
if-gt p0, v0, :cond_69
const/16 v0, -0x3b
if-lt p1, v0, :cond_52
const/16 v0, 0x3b
if-gt p1, v0, :cond_52
if-lez p0, :cond_33
if-ltz p1, :cond_1c
goto :goto_33
.line 288
:cond_1c
new-instance p0, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Positive hours must not have negative minutes: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
:cond_33
:goto_33
mul-int/lit8 p0, p0, 0x3c
if-gez p0, :cond_3d
.line 294
:try_start_37
invoke-static {p1}, Ljava/lang/Math;->abs(I)I
move-result p1
sub-int/2addr p0, p1
goto :goto_3e
:cond_3d
add-int/2addr p0, p1
:goto_3e
const p1, 0xea60
.line 298
invoke-static {p0, p1}, Lorg/joda/time/field/FieldUtils;->safeMultiply(II)I
move-result p0
:try_end_45
.catch Ljava/lang/ArithmeticException; {:try_start_37 .. :try_end_45} :catch_4a
.line 302
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->forOffsetMillis(I)Lorg/joda/time/DateTimeZone;
move-result-object p0
return-object p0
.line 300
:catch_4a
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string p1, "Offset is too large"
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.line 285
:cond_52
new-instance p0, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Minutes out of range: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.line 282
:cond_69
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Hours out of range: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public static forOffsetMillis(I)Lorg/joda/time/DateTimeZone;
.registers 4
const v0, -0x5265bff
if-lt p0, v0, :cond_13
const v0, 0x5265bff
if-gt p0, v0, :cond_13
.line 315
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->printOffset(I)Ljava/lang/String;
move-result-object v0
.line 316
invoke-static {v0, p0}, Lorg/joda/time/DateTimeZone;->fixedOffsetZone(Ljava/lang/String;I)Lorg/joda/time/DateTimeZone;
move-result-object p0
return-object p0
.line 313
:cond_13
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Millis out of range: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public static forTimeZone(Ljava/util/TimeZone;)Lorg/joda/time/DateTimeZone;
.registers 6
if-nez p0, :cond_7
.line 336
invoke-static {}, Lorg/joda/time/DateTimeZone;->getDefault()Lorg/joda/time/DateTimeZone;
move-result-object p0
return-object p0
.line 338
:cond_7
invoke-virtual {p0}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
move-result-object p0
if-eqz p0, :cond_94
const-string v0, "UTC"
.line 342
invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_18
.line 343
sget-object p0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
return-object p0
:cond_18
const/4 v0, 0x0
.line 348
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->getConvertedId(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 349
invoke-static {}, Lorg/joda/time/DateTimeZone;->getProvider()Lorg/joda/time/tz/Provider;
move-result-object v2
if-eqz v1, :cond_27
.line 351
invoke-interface {v2, v1}, Lorg/joda/time/tz/Provider;->getZone(Ljava/lang/String;)Lorg/joda/time/DateTimeZone;
move-result-object v0
:cond_27
if-nez v0, :cond_2d
.line 354
invoke-interface {v2, p0}, Lorg/joda/time/tz/Provider;->getZone(Ljava/lang/String;)Lorg/joda/time/DateTimeZone;
move-result-object v0
:cond_2d
if-eqz v0, :cond_30
return-object v0
:cond_30
if-nez v1, :cond_78
const-string v0, "GMT+"
.line 363
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_42
const-string v0, "GMT-"
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_78
:cond_42
const/4 v0, 0x3
.line 364
invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object p0
.line 365
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v0
const/4 v1, 0x2
if-le v0, v1, :cond_61
const/4 v0, 0x1
.line 366
invoke-virtual {p0, v0}, Ljava/lang/String;->charAt(I)C
move-result v0
const/16 v1, 0x39
if-le v0, v1, :cond_61
.line 367
invoke-static {v0}, Ljava/lang/Character;->isDigit(C)Z
move-result v0
if-eqz v0, :cond_61
.line 368
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->convertToAsciiNumber(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
.line 371
:cond_61
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->parseOffset(Ljava/lang/String;)I
move-result p0
int-to-long v0, p0
const-wide/16 v2, 0x0
cmp-long v4, v0, v2
if-nez v4, :cond_6f
.line 373
sget-object p0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
return-object p0
.line 375
:cond_6f
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->printOffset(I)Ljava/lang/String;
move-result-object v0
.line 376
invoke-static {v0, p0}, Lorg/joda/time/DateTimeZone;->fixedOffsetZone(Ljava/lang/String;I)Lorg/joda/time/DateTimeZone;
move-result-object p0
return-object p0
.line 380
:cond_78
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "The datetime zone id \'"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, "\' is not recognised"
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.line 340
:cond_94
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string v0, "The TimeZone id must not be null"
invoke-direct {p0, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public static getAvailableIDs()Ljava/util/Set;
.registers 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 416
invoke-static {}, Lorg/joda/time/DateTimeZone;->getProvider()Lorg/joda/time/tz/Provider;
move-result-object v0
invoke-interface {v0}, Lorg/joda/time/tz/Provider;->getAvailableIDs()Ljava/util/Set;
move-result-object v0
return-object v0
.end method
.method private static getConvertedId(Ljava/lang/String;)Ljava/lang/String;
.registers 2
.line 620
sget-object v0, Lorg/joda/time/DateTimeZone$LazyInit;->CONVERSION_MAP:Ljava/util/Map;
invoke-interface {v0, p0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/String;
return-object p0
.end method
.method public static getDefault()Lorg/joda/time/DateTimeZone;
.registers 3
.line 145
sget-object v0, Lorg/joda/time/DateTimeZone;->cDefault:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/joda/time/DateTimeZone;
if-nez v0, :cond_39
:try_start_a
const-string v1, "user.timezone"
.line 149
invoke-static {v1}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_1a
.line 151
invoke-static {v1}, Lorg/joda/time/DateTimeZone;->forID(Ljava/lang/String;)Lorg/joda/time/DateTimeZone;
move-result-object v0
:try_end_16
.catch Ljava/lang/RuntimeException; {:try_start_a .. :try_end_16} :catch_19
.catch Ljava/lang/IllegalArgumentException; {:try_start_a .. :try_end_16} :catch_17
goto :goto_1a
:catch_17
nop
goto :goto_24
:catch_19
nop
:cond_1a
:goto_1a
if-nez v0, :cond_24
.line 157
:try_start_1c
invoke-static {}, Ljava/util/TimeZone;->getDefault()Ljava/util/TimeZone;
move-result-object v1
invoke-static {v1}, Lorg/joda/time/DateTimeZone;->forTimeZone(Ljava/util/TimeZone;)Lorg/joda/time/DateTimeZone;
move-result-object v0
:try_end_24
.catch Ljava/lang/IllegalArgumentException; {:try_start_1c .. :try_end_24} :catch_17
:cond_24
:goto_24
if-nez v0, :cond_28
.line 163
sget-object v0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
.line 165
:cond_28
sget-object v1, Lorg/joda/time/DateTimeZone;->cDefault:Ljava/util/concurrent/atomic/AtomicReference;
const/4 v2, 0x0
invoke-virtual {v1, v2, v0}, Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_39
.line 166
sget-object v0, Lorg/joda/time/DateTimeZone;->cDefault:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/joda/time/DateTimeZone;
:cond_39
return-object v0
.end method
.method private static getDefaultNameProvider()Lorg/joda/time/tz/NameProvider;
.registers 3
const/4 v0, 0x0
:try_start_1
const-string v1, "org.joda.time.DateTimeZone.NameProvider"
.line 593
invoke-static {v1}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
:try_end_7
.catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_7} :catch_1c
if-eqz v1, :cond_1d
.line 596
:try_start_9
invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lorg/joda/time/tz/NameProvider;
:try_end_13
.catch Ljava/lang/Exception; {:try_start_9 .. :try_end_13} :catch_15
.catch Ljava/lang/SecurityException; {:try_start_9 .. :try_end_13} :catch_1c
move-object v0, v1
goto :goto_1d
:catch_15
move-exception v1
.line 598
:try_start_16
new-instance v2, Ljava/lang/RuntimeException;
invoke-direct {v2, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v2
:try_end_1c
.catch Ljava/lang/SecurityException; {:try_start_16 .. :try_end_1c} :catch_1c
:catch_1c
nop
:cond_1d
:goto_1d
if-nez v0, :cond_24
.line 606
new-instance v0, Lorg/joda/time/tz/DefaultNameProvider;
invoke-direct {v0}, Lorg/joda/time/tz/DefaultNameProvider;-><init>()V
:cond_24
return-object v0
.end method
.method private static getDefaultProvider()Lorg/joda/time/tz/Provider;
.registers 3
:try_start_0
const-string v0, "org.joda.time.DateTimeZone.Provider"
.line 504
invoke-static {v0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
:try_end_6
.catch Ljava/lang/SecurityException; {:try_start_0 .. :try_end_6} :catch_1e
if-eqz v0, :cond_1e
.line 507
:try_start_8
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/joda/time/tz/Provider;
.line 508
invoke-static {v0}, Lorg/joda/time/DateTimeZone;->validateProvider(Lorg/joda/time/tz/Provider;)Lorg/joda/time/tz/Provider;
move-result-object v0
:try_end_16
.catch Ljava/lang/Exception; {:try_start_8 .. :try_end_16} :catch_17
.catch Ljava/lang/SecurityException; {:try_start_8 .. :try_end_16} :catch_1e
return-object v0
:catch_17
move-exception v0
.line 510
:try_start_18
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:try_end_1e
.catch Ljava/lang/SecurityException; {:try_start_18 .. :try_end_1e} :catch_1e
:catch_1e
:cond_1e
:try_start_1e
const-string v0, "org.joda.time.DateTimeZone.Folder"
.line 518
invoke-static {v0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
:try_end_24
.catch Ljava/lang/SecurityException; {:try_start_1e .. :try_end_24} :catch_3c
if-eqz v0, :cond_3c
.line 521
:try_start_26
new-instance v1, Lorg/joda/time/tz/ZoneInfoProvider;
new-instance v2, Ljava/io/File;
invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-direct {v1, v2}, Lorg/joda/time/tz/ZoneInfoProvider;-><init>(Ljava/io/File;)V
.line 522
invoke-static {v1}, Lorg/joda/time/DateTimeZone;->validateProvider(Lorg/joda/time/tz/Provider;)Lorg/joda/time/tz/Provider;
move-result-object v0
:try_end_34
.catch Ljava/lang/Exception; {:try_start_26 .. :try_end_34} :catch_35
.catch Ljava/lang/SecurityException; {:try_start_26 .. :try_end_34} :catch_3c
return-object v0
:catch_35
move-exception v0
.line 524
:try_start_36
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:try_end_3c
.catch Ljava/lang/SecurityException; {:try_start_36 .. :try_end_3c} :catch_3c
.line 532
:catch_3c
:cond_3c
:try_start_3c
new-instance v0, Lorg/joda/time/tz/ZoneInfoProvider;
const-string v1, "org/joda/time/tz/data"
invoke-direct {v0, v1}, Lorg/joda/time/tz/ZoneInfoProvider;-><init>(Ljava/lang/String;)V
.line 533
invoke-static {v0}, Lorg/joda/time/DateTimeZone;->validateProvider(Lorg/joda/time/tz/Provider;)Lorg/joda/time/tz/Provider;
move-result-object v0
:try_end_47
.catch Ljava/lang/Exception; {:try_start_3c .. :try_end_47} :catch_48
return-object v0
:catch_48
move-exception v0
.line 535
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
.line 538
new-instance v0, Lorg/joda/time/tz/UTCProvider;
invoke-direct {v0}, Lorg/joda/time/tz/UTCProvider;-><init>()V
return-object v0
.end method
.method public static getNameProvider()Lorg/joda/time/tz/NameProvider;
.registers 3
.line 551
sget-object v0, Lorg/joda/time/DateTimeZone;->cNameProvider:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/joda/time/tz/NameProvider;
if-nez v0, :cond_1f
.line 553
invoke-static {}, Lorg/joda/time/DateTimeZone;->getDefaultNameProvider()Lorg/joda/time/tz/NameProvider;
move-result-object v0
.line 554
sget-object v1, Lorg/joda/time/DateTimeZone;->cNameProvider:Ljava/util/concurrent/atomic/AtomicReference;
const/4 v2, 0x0
invoke-virtual {v1, v2, v0}, Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_1f
.line 555
sget-object v0, Lorg/joda/time/DateTimeZone;->cNameProvider:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/joda/time/tz/NameProvider;
:cond_1f
return-object v0
.end method
.method public static getProvider()Lorg/joda/time/tz/Provider;
.registers 3
.line 429
sget-object v0, Lorg/joda/time/DateTimeZone;->cProvider:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/joda/time/tz/Provider;
if-nez v0, :cond_1f
.line 431
invoke-static {}, Lorg/joda/time/DateTimeZone;->getDefaultProvider()Lorg/joda/time/tz/Provider;
move-result-object v0
.line 432
sget-object v1, Lorg/joda/time/DateTimeZone;->cProvider:Ljava/util/concurrent/atomic/AtomicReference;
const/4 v2, 0x0
invoke-virtual {v1, v2, v0}, Ljava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_1f
.line 433
sget-object v0, Lorg/joda/time/DateTimeZone;->cProvider:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/joda/time/tz/Provider;
:cond_1f
return-object v0
.end method
.method private static parseOffset(Ljava/lang/String;)I
.registers 3
.line 630
sget-object v0, Lorg/joda/time/DateTimeZone$LazyInit;->OFFSET_FORMATTER:Lorg/joda/time/format/DateTimeFormatter;
invoke-virtual {v0, p0}, Lorg/joda/time/format/DateTimeFormatter;->parseMillis(Ljava/lang/String;)J
move-result-wide v0
long-to-int p0, v0
neg-int p0, p0
return p0
.end method
.method private static printOffset(I)Ljava/lang/String;
.registers 6
.line 643
new-instance v0, Ljava/lang/StringBuffer;
invoke-direct {v0}, Ljava/lang/StringBuffer;-><init>()V
if-ltz p0, :cond_d
const/16 v1, 0x2b
.line 645
invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
goto :goto_13
:cond_d
const/16 v1, 0x2d
.line 647
invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
neg-int p0, p0
:goto_13
const v1, 0x36ee80
.line 651
div-int v2, p0, v1
const/4 v3, 0x2
.line 652
invoke-static {v0, v2, v3}, Lorg/joda/time/format/FormatUtils;->appendPaddedInteger(Ljava/lang/StringBuffer;II)V
mul-int v2, v2, v1
sub-int/2addr p0, v2
const v1, 0xea60
.line 655
div-int v2, p0, v1
const/16 v4, 0x3a
.line 656
invoke-virtual {v0, v4}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
.line 657
invoke-static {v0, v2, v3}, Lorg/joda/time/format/FormatUtils;->appendPaddedInteger(Ljava/lang/StringBuffer;II)V
mul-int v2, v2, v1
sub-int/2addr p0, v2
if-nez p0, :cond_36
.line 660
invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.line 663
:cond_36
div-int/lit16 v1, p0, 0x3e8
.line 664
invoke-virtual {v0, v4}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
.line 665
invoke-static {v0, v1, v3}, Lorg/joda/time/format/FormatUtils;->appendPaddedInteger(Ljava/lang/StringBuffer;II)V
mul-int/lit16 v1, v1, 0x3e8
sub-int/2addr p0, v1
if-nez p0, :cond_48
.line 668
invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
:cond_48
const/16 v1, 0x2e
.line 671
invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
const/4 v1, 0x3
.line 672
invoke-static {v0, p0, v1}, Lorg/joda/time/format/FormatUtils;->appendPaddedInteger(Ljava/lang/StringBuffer;II)V
.line 673
invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static setDefault(Lorg/joda/time/DateTimeZone;)V
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/SecurityException;
}
.end annotation
.line 182
invoke-static {}, Ljava/lang/System;->getSecurityManager()Ljava/lang/SecurityManager;
move-result-object v0
if-eqz v0, :cond_10
.line 184
new-instance v1, Lorg/joda/time/JodaTimePermission;
const-string v2, "DateTimeZone.setDefault"
invoke-direct {v1, v2}, Lorg/joda/time/JodaTimePermission;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/lang/SecurityManager;->checkPermission(Ljava/security/Permission;)V
:cond_10
if-eqz p0, :cond_18
.line 189
sget-object v0, Lorg/joda/time/DateTimeZone;->cDefault:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0, p0}, Ljava/util/concurrent/atomic/AtomicReference;->set(Ljava/lang/Object;)V
return-void
.line 187
:cond_18
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string v0, "The datetime zone must not be null"
invoke-direct {p0, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public static setNameProvider(Lorg/joda/time/tz/NameProvider;)V
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/SecurityException;
}
.end annotation
.line 572
invoke-static {}, Ljava/lang/System;->getSecurityManager()Ljava/lang/SecurityManager;
move-result-object v0
if-eqz v0, :cond_10
.line 574
new-instance v1, Lorg/joda/time/JodaTimePermission;
const-string v2, "DateTimeZone.setNameProvider"
invoke-direct {v1, v2}, Lorg/joda/time/JodaTimePermission;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/lang/SecurityManager;->checkPermission(Ljava/security/Permission;)V
:cond_10
if-nez p0, :cond_16
.line 577
invoke-static {}, Lorg/joda/time/DateTimeZone;->getDefaultNameProvider()Lorg/joda/time/tz/NameProvider;
move-result-object p0
.line 579
:cond_16
sget-object v0, Lorg/joda/time/DateTimeZone;->cNameProvider:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0, p0}, Ljava/util/concurrent/atomic/AtomicReference;->set(Ljava/lang/Object;)V
return-void
.end method
.method public static setProvider(Lorg/joda/time/tz/Provider;)V
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/SecurityException;
}
.end annotation
.line 450
invoke-static {}, Ljava/lang/System;->getSecurityManager()Ljava/lang/SecurityManager;
move-result-object v0
if-eqz v0, :cond_10
.line 452
new-instance v1, Lorg/joda/time/JodaTimePermission;
const-string v2, "DateTimeZone.setProvider"
invoke-direct {v1, v2}, Lorg/joda/time/JodaTimePermission;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/lang/SecurityManager;->checkPermission(Ljava/security/Permission;)V
:cond_10
if-nez p0, :cond_17
.line 455
invoke-static {}, Lorg/joda/time/DateTimeZone;->getDefaultProvider()Lorg/joda/time/tz/Provider;
move-result-object p0
goto :goto_1a
.line 457
:cond_17
invoke-static {p0}, Lorg/joda/time/DateTimeZone;->validateProvider(Lorg/joda/time/tz/Provider;)Lorg/joda/time/tz/Provider;
.line 459
:goto_1a
sget-object v0, Lorg/joda/time/DateTimeZone;->cProvider:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {v0, p0}, Ljava/util/concurrent/atomic/AtomicReference;->set(Ljava/lang/Object;)V
return-void
.end method
.method private static validateProvider(Lorg/joda/time/tz/Provider;)Lorg/joda/time/tz/Provider;
.registers 3
.line 470
invoke-interface {p0}, Lorg/joda/time/tz/Provider;->getAvailableIDs()Ljava/util/Set;
move-result-object v0
if-eqz v0, :cond_31
.line 471
invoke-interface {v0}, Ljava/util/Set;->size()I
move-result v1
if-eqz v1, :cond_31
const-string v1, "UTC"
.line 474
invoke-interface {v0, v1}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_29
.line 477
sget-object v0, Lorg/joda/time/DateTimeZone;->UTC:Lorg/joda/time/DateTimeZone;
invoke-interface {p0, v1}, Lorg/joda/time/tz/Provider;->getZone(Ljava/lang/String;)Lorg/joda/time/DateTimeZone;
move-result-object v1
invoke-virtual {v0, v1}, Lorg/joda/time/DateTimeZone;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_21
return-object p0
.line 478
:cond_21
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string v0, "Invalid UTC zone provided"
invoke-direct {p0, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.line 475
:cond_29
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string v0, "The provider doesn\'t support UTC"
invoke-direct {p0, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.line 472
:cond_31
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string v0, "The provider doesn\'t have any available ids"
invoke-direct {p0, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
# virtual methods
.method public adjustOffset(JZ)J
.registers 11
const-wide/32 v0, 0xa4cb80
sub-long v2, p1, v0
add-long/2addr v0, p1
.line 1186
invoke-virtual {p0, v2, v3}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v4
int-to-long v4, v4
.line 1187
invoke-virtual {p0, v0, v1}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v0
int-to-long v0, v0
cmp-long v6, v4, v0
if-gtz v6, :cond_15
return-wide p1
:cond_15
sub-long/2addr v4, v0
.line 1194
invoke-virtual {p0, v2, v3}, Lorg/joda/time/DateTimeZone;->nextTransition(J)J
move-result-wide v0
sub-long v2, v0, v4
add-long/2addr v0, v4
cmp-long v6, p1, v2
if-ltz v6, :cond_34
cmp-long v6, p1, v0
if-ltz v6, :cond_26
goto :goto_34
:cond_26
sub-long v0, p1, v2
cmp-long v2, v0, v4
if-ltz v2, :cond_31
if-eqz p3, :cond_2f
goto :goto_30
:cond_2f
sub-long/2addr p1, v4
:goto_30
return-wide p1
:cond_31
if-eqz p3, :cond_34
add-long/2addr p1, v4
:cond_34
:goto_34
return-wide p1
.end method
.method public convertLocalToUTC(JZ)J
.registers 15
.line 993
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v0
int-to-long v1, v0
sub-long v1, p1, v1
.line 995
invoke-virtual {p0, v1, v2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v3
if-eq v0, v3, :cond_3d
if-nez p3, :cond_11
if-gez v0, :cond_3d
.line 1003
:cond_11
invoke-virtual {p0, v1, v2}, Lorg/joda/time/DateTimeZone;->nextTransition(J)J
move-result-wide v4
const-wide v6, 0x7fffffffffffffffL
cmp-long v8, v4, v1
if-nez v8, :cond_1f
move-wide v4, v6
:cond_1f
int-to-long v1, v3
sub-long v1, p1, v1
.line 1007
invoke-virtual {p0, v1, v2}, Lorg/joda/time/DateTimeZone;->nextTransition(J)J
move-result-wide v8
cmp-long v10, v8, v1
if-nez v10, :cond_2b
goto :goto_2c
:cond_2b
move-wide v6, v8
:goto_2c
cmp-long v1, v4, v6
if-eqz v1, :cond_3d
if-nez p3, :cond_33
goto :goto_3e
.line 1015
:cond_33
new-instance p3, Lorg/joda/time/IllegalInstantException;
invoke-virtual {p0}, Lorg/joda/time/DateTimeZone;->getID()Ljava/lang/String;
move-result-object v0
invoke-direct {p3, p1, p2, v0}, Lorg/joda/time/IllegalInstantException;-><init>(JLjava/lang/String;)V
throw p3
:cond_3d
move v0, v3
:goto_3e
int-to-long v0, v0
sub-long v2, p1, v0
xor-long v4, p1, v2
const-wide/16 v6, 0x0
cmp-long p3, v4, v6
if-gez p3, :cond_57
xor-long/2addr p1, v0
cmp-long p3, p1, v6
if-ltz p3, :cond_4f
goto :goto_57
.line 1029
:cond_4f
new-instance p1, Ljava/lang/ArithmeticException;
const-string p2, "Subtracting time zone offset caused overflow"
invoke-direct {p1, p2}, Ljava/lang/ArithmeticException;-><init>(Ljava/lang/String;)V
throw p1
:cond_57
:goto_57
return-wide v2
.end method
.method public convertLocalToUTC(JZJ)J
.registers 8
.line 970
invoke-virtual {p0, p4, p5}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result p4
int-to-long v0, p4
sub-long v0, p1, v0
.line 972
invoke-virtual {p0, v0, v1}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result p5
if-ne p5, p4, :cond_e
return-wide v0
.line 976
:cond_e
invoke-virtual {p0, p1, p2, p3}, Lorg/joda/time/DateTimeZone;->convertLocalToUTC(JZ)J
move-result-wide p1
return-wide p1
.end method
.method public convertUTCToLocal(J)J
.registers 12
.line 943
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v0
int-to-long v0, v0
add-long v2, p1, v0
xor-long v4, p1, v2
const-wide/16 v6, 0x0
cmp-long v8, v4, v6
if-gez v8, :cond_1d
xor-long/2addr p1, v0
cmp-long v0, p1, v6
if-gez v0, :cond_15
goto :goto_1d
.line 947
:cond_15
new-instance p1, Ljava/lang/ArithmeticException;
const-string p2, "Adding time zone offset caused overflow"
invoke-direct {p1, p2}, Ljava/lang/ArithmeticException;-><init>(Ljava/lang/String;)V
throw p1
:cond_1d
:goto_1d
return-wide v2
.end method
.method public abstract equals(Ljava/lang/Object;)Z
.end method
.method public final getID()Ljava/lang/String;
.registers 2
.annotation runtime Lorg/joda/convert/ToString;
.end annotation
.line 704
iget-object v0, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
return-object v0
.end method
.method public getMillisKeepLocal(Lorg/joda/time/DateTimeZone;J)J
.registers 10
if-nez p1, :cond_6
.line 1046
invoke-static {}, Lorg/joda/time/DateTimeZone;->getDefault()Lorg/joda/time/DateTimeZone;
move-result-object p1
:cond_6
move-object v0, p1
if-ne v0, p0, :cond_a
return-wide p2
.line 1051
:cond_a
invoke-virtual {p0, p2, p3}, Lorg/joda/time/DateTimeZone;->convertUTCToLocal(J)J
move-result-wide v1
const/4 v3, 0x0
move-wide v4, p2
.line 1052
invoke-virtual/range {v0 .. v5}, Lorg/joda/time/DateTimeZone;->convertLocalToUTC(JZJ)J
move-result-wide p1
return-wide p1
.end method
.method public final getName(J)Ljava/lang/String;
.registers 4
const/4 v0, 0x0
.line 773
invoke-virtual {p0, p1, p2, v0}, Lorg/joda/time/DateTimeZone;->getName(JLjava/util/Locale;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public getName(JLjava/util/Locale;)Ljava/lang/String;
.registers 8
if-nez p3, :cond_6
.line 789
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object p3
.line 791
:cond_6
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getNameKey(J)Ljava/lang/String;
move-result-object v0
if-nez v0, :cond_f
.line 793
iget-object p1, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
return-object p1
.line 796
:cond_f
invoke-static {}, Lorg/joda/time/DateTimeZone;->getNameProvider()Lorg/joda/time/tz/NameProvider;
move-result-object v1
.line 797
instance-of v2, v1, Lorg/joda/time/tz/DefaultNameProvider;
if-eqz v2, :cond_24
.line 798
check-cast v1, Lorg/joda/time/tz/DefaultNameProvider;
iget-object v2, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->isStandardOffset(J)Z
move-result v3
invoke-virtual {v1, p3, v2, v0, v3}, Lorg/joda/time/tz/DefaultNameProvider;->getName(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
move-result-object p3
goto :goto_2a
.line 800
:cond_24
iget-object v2, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
invoke-interface {v1, p3, v2, v0}, Lorg/joda/time/tz/NameProvider;->getName(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p3
:goto_2a
if-eqz p3, :cond_2d
return-object p3
.line 805
:cond_2d
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result p1
invoke-static {p1}, Lorg/joda/time/DateTimeZone;->printOffset(I)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public abstract getNameKey(J)Ljava/lang/String;
.end method
.method public abstract getOffset(J)I
.end method
.method public final getOffset(Lorg/joda/time/ReadableInstant;)I
.registers 4
if-nez p1, :cond_b
.line 824
invoke-static {}, Lorg/joda/time/DateTimeUtils;->currentTimeMillis()J
move-result-wide v0
invoke-virtual {p0, v0, v1}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result p1
return p1
.line 826
:cond_b
invoke-interface {p1}, Lorg/joda/time/ReadableInstant;->getMillis()J
move-result-wide v0
invoke-virtual {p0, v0, v1}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result p1
return p1
.end method
.method public getOffsetFromLocal(J)I
.registers 12
.line 895
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v0
int-to-long v1, v0
sub-long v1, p1, v1
.line 898
invoke-virtual {p0, v1, v2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v3
if-eq v0, v3, :cond_30
sub-int v4, v0, v3
if-gez v4, :cond_47
.line 907
invoke-virtual {p0, v1, v2}, Lorg/joda/time/DateTimeZone;->nextTransition(J)J
move-result-wide v4
const-wide v6, 0x7fffffffffffffffL
cmp-long v8, v4, v1
if-nez v8, :cond_1f
move-wide v4, v6
:cond_1f
int-to-long v1, v3
sub-long/2addr p1, v1
.line 911
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->nextTransition(J)J
move-result-wide v1
cmp-long v8, v1, p1
if-nez v8, :cond_2a
goto :goto_2b
:cond_2a
move-wide v6, v1
:goto_2b
cmp-long p1, v4, v6
if-eqz p1, :cond_47
return v0
:cond_30
if-ltz v0, :cond_47
.line 920
invoke-virtual {p0, v1, v2}, Lorg/joda/time/DateTimeZone;->previousTransition(J)J
move-result-wide p1
cmp-long v4, p1, v1
if-gez v4, :cond_47
.line 922
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v4
sub-int v0, v4, v0
sub-long/2addr v1, p1
int-to-long p1, v0
cmp-long v0, v1, p1
if-gtz v0, :cond_47
return v4
:cond_47
return v3
.end method
.method public final getShortName(J)Ljava/lang/String;
.registers 4
const/4 v0, 0x0
.line 727
invoke-virtual {p0, p1, p2, v0}, Lorg/joda/time/DateTimeZone;->getShortName(JLjava/util/Locale;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public getShortName(JLjava/util/Locale;)Ljava/lang/String;
.registers 8
if-nez p3, :cond_6
.line 743
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object p3
.line 745
:cond_6
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getNameKey(J)Ljava/lang/String;
move-result-object v0
if-nez v0, :cond_f
.line 747
iget-object p1, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
return-object p1
.line 750
:cond_f
invoke-static {}, Lorg/joda/time/DateTimeZone;->getNameProvider()Lorg/joda/time/tz/NameProvider;
move-result-object v1
.line 751
instance-of v2, v1, Lorg/joda/time/tz/DefaultNameProvider;
if-eqz v2, :cond_24
.line 752
check-cast v1, Lorg/joda/time/tz/DefaultNameProvider;
iget-object v2, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->isStandardOffset(J)Z
move-result v3
invoke-virtual {v1, p3, v2, v0, v3}, Lorg/joda/time/tz/DefaultNameProvider;->getShortName(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
move-result-object p3
goto :goto_2a
.line 754
:cond_24
iget-object v2, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
invoke-interface {v1, p3, v2, v0}, Lorg/joda/time/tz/NameProvider;->getShortName(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p3
:goto_2a
if-eqz p3, :cond_2d
return-object p3
.line 759
:cond_2d
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result p1
invoke-static {p1}, Lorg/joda/time/DateTimeZone;->printOffset(I)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public abstract getStandardOffset(J)I
.end method
.method public hashCode()I
.registers 2
.line 1267
invoke-virtual {p0}, Lorg/joda/time/DateTimeZone;->getID()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
move-result v0
add-int/lit8 v0, v0, 0x39
return v0
.end method
.method public abstract isFixed()Z
.end method
.method public isLocalDateTimeGap(Lorg/joda/time/LocalDateTime;)Z
.registers 4
.line 1162
invoke-virtual {p0}, Lorg/joda/time/DateTimeZone;->isFixed()Z
move-result v0
const/4 v1, 0x0
if-eqz v0, :cond_8
return v1
.line 1166
:cond_8
:try_start_8
invoke-virtual {p1, p0}, Lorg/joda/time/LocalDateTime;->toDateTime(Lorg/joda/time/DateTimeZone;)Lorg/joda/time/DateTime;
:try_end_b
.catch Lorg/joda/time/IllegalInstantException; {:try_start_8 .. :try_end_b} :catch_c
return v1
:catch_c
const/4 p1, 0x1
return p1
.end method
.method public isStandardOffset(J)Z
.registers 4
.line 854
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getOffset(J)I
move-result v0
invoke-virtual {p0, p1, p2}, Lorg/joda/time/DateTimeZone;->getStandardOffset(J)I
move-result p1
if-ne v0, p1, :cond_c
const/4 p1, 0x1
goto :goto_d
:cond_c
const/4 p1, 0x0
:goto_d
return p1
.end method
.method public abstract nextTransition(J)J
.end method
.method public abstract previousTransition(J)J
.end method
.method public toString()Ljava/lang/String;
.registers 2
.line 1275
invoke-virtual {p0}, Lorg/joda/time/DateTimeZone;->getID()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public toTimeZone()Ljava/util/TimeZone;
.registers 2
.line 1250
iget-object v0, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
invoke-static {v0}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
move-result-object v0
return-object v0
.end method
.method protected writeReplace()Ljava/lang/Object;
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/ObjectStreamException;
}
.end annotation
.line 1285
new-instance v0, Lorg/joda/time/DateTimeZone$Stub;
iget-object v1, p0, Lorg/joda/time/DateTimeZone;->iID:Ljava/lang/String;
invoke-direct {v0, v1}, Lorg/joda/time/DateTimeZone$Stub;-><init>(Ljava/lang/String;)V
return-object v0
.end method