ImpreciseDateTimeField.java
3.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
package org.joda.time.field;
import org.joda.time.DateTimeFieldType;
import org.joda.time.DurationField;
import org.joda.time.DurationFieldType;
public abstract class ImpreciseDateTimeField
extends BaseDateTimeField
{
private final DurationField a;
final long b;
public ImpreciseDateTimeField(DateTimeFieldType paramDateTimeFieldType, long paramLong)
{
super(paramDateTimeFieldType);
this.b = paramLong;
this.a = new a(paramDateTimeFieldType.getDurationType());
}
public abstract long add(long paramLong, int paramInt);
public abstract long add(long paramLong1, long paramLong2);
public abstract int get(long paramLong);
public int getDifference(long paramLong1, long paramLong2)
{
return FieldUtils.safeToInt(getDifferenceAsLong(paramLong1, paramLong2));
}
public long getDifferenceAsLong(long paramLong1, long paramLong2)
{
long l2;
if (paramLong1 < paramLong2) {
l2 = -getDifferenceAsLong(paramLong2, paramLong1);
}
long l1;
do
{
return l2;
l1 = (paramLong1 - paramLong2) / this.b;
if (add(paramLong2, l1) < paramLong1)
{
do
{
l2 = l1 + 1L;
l1 = l2;
} while (add(paramLong2, l2) <= paramLong1);
return l2 - 1L;
}
l2 = l1;
} while (add(paramLong2, l1) <= paramLong1);
do
{
l2 = l1 - 1L;
l1 = l2;
} while (add(paramLong2, l2) > paramLong1);
return l2;
}
public final DurationField getDurationField()
{
return this.a;
}
protected final long getDurationUnitMillis()
{
return this.b;
}
public abstract DurationField getRangeDurationField();
public abstract long roundFloor(long paramLong);
public abstract long set(long paramLong, int paramInt);
final class a
extends BaseDurationField
{
private static final long serialVersionUID = -203813474600094134L;
a(DurationFieldType paramDurationFieldType)
{
super();
}
public final long add(long paramLong, int paramInt)
{
return ImpreciseDateTimeField.this.add(paramLong, paramInt);
}
public final long add(long paramLong1, long paramLong2)
{
return ImpreciseDateTimeField.this.add(paramLong1, paramLong2);
}
public final int getDifference(long paramLong1, long paramLong2)
{
return ImpreciseDateTimeField.this.getDifference(paramLong1, paramLong2);
}
public final long getDifferenceAsLong(long paramLong1, long paramLong2)
{
return ImpreciseDateTimeField.this.getDifferenceAsLong(paramLong1, paramLong2);
}
public final long getMillis(int paramInt, long paramLong)
{
return ImpreciseDateTimeField.this.add(paramLong, paramInt) - paramLong;
}
public final long getMillis(long paramLong1, long paramLong2)
{
return ImpreciseDateTimeField.this.add(paramLong2, paramLong1) - paramLong2;
}
public final long getUnitMillis()
{
return ImpreciseDateTimeField.this.b;
}
public final int getValue(long paramLong1, long paramLong2)
{
return ImpreciseDateTimeField.this.getDifference(paramLong2 + paramLong1, paramLong2);
}
public final long getValueAsLong(long paramLong1, long paramLong2)
{
return ImpreciseDateTimeField.this.getDifferenceAsLong(paramLong2 + paramLong1, paramLong2);
}
public final boolean isPrecise()
{
return false;
}
}
}
/* Location: /home/merong/decompile/hackery-dex2jar.jar!/org/joda/time/field/ImpreciseDateTimeField.class
* Java compiler version: 6 (50.0)
* JD-Core Version: 0.7.1
*/