LazyBinding.java
1.37 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
package dagger.internal;
import dagger.Lazy;
final class LazyBinding<T>
extends Binding<Lazy<T>>
{
private static final Object NOT_PRESENT = new Object();
private Binding<T> delegate;
private final String lazyKey;
private final ClassLoader loader;
public LazyBinding(String paramString1, Object paramObject, ClassLoader paramClassLoader, String paramString2)
{
super(paramString1, null, false, paramObject);
this.loader = paramClassLoader;
this.lazyKey = paramString2;
}
public final void attach(Linker paramLinker)
{
this.delegate = paramLinker.requestBinding(this.lazyKey, this.requiredBy, this.loader);
}
public final Lazy<T> get()
{
new Lazy()
{
private volatile Object cacheValue = LazyBinding.NOT_PRESENT;
public T get()
{
if (this.cacheValue == LazyBinding.NOT_PRESENT) {}
try
{
if (this.cacheValue == LazyBinding.NOT_PRESENT) {
this.cacheValue = LazyBinding.this.delegate.get();
}
return (T)this.cacheValue;
}
finally {}
}
};
}
public final void injectMembers(Lazy<T> paramLazy)
{
throw new UnsupportedOperationException();
}
}
/* Location: /home/merong/decompile/hackery-dex2jar.jar!/dagger/internal/LazyBinding.class
* Java compiler version: 6 (50.0)
* JD-Core Version: 0.7.1
*/